更新ParentId时,自动更新子级的ParentIds
2018-06-22 06:10:33来源:未知 阅读 ()
1 --==================================== 2 -- 更新ParentId时,自动更新子级的ParentIds 3 --==================================== 4 5 ALTER TRIGGER UpdateParentIds ON S_User 6 FOR update 7 AS 8 9 DECLARE @id int --当前用户的ID 10 DECLARE @parentId int --当前用户的ParentId 11 DECLARE @parentIds varchar(500) --更新后的ParentIds 12 DECLARE @count int --当前用户的子级数量 13 SELECT @parentId =i.ParentId,@id=i.ID FROM inserted i --记录下当前用户的ID及ParentId 14 PRINT '@parentId:'+convert(varchar,@parentId) 15 PRINT '@id:'+convert(varchar,@id) 16 SELECT @parentIds =convert(varchar,u.ID)+','+ u.ParentIds FROM S_User u where u.ID=@parentId --根据ParentId 拼接最新的ParentIds 17 PRINT '@parentIds:'+convert(varchar,@parentIds) 18 SET XACT_ABORT ON 19 IF UPDATE(ParentId) 20 BEGIN 21 PRINT '更新beigin' 22 UPDATE S_User SET ParentIds = @parentIds WHERE ID=@id 23 SELECT @count=COUNT(*) FROM S_User WHERE ParentId = @id 24 IF(@count>0) 25 BEGIN 26 UPDATE S_User SET ParentId = @id WHERE id in (SELECT id FROM S_User WHERE ParentId = @id) 27 END 28 PRINT '更新end' 29 END 30 GO
自己写自己用,顺便记录下来备忘,涉及到触发器递归触发。
注:数据库-》属性-》选项-》递归触发器已启用 设为True(默认False),不然无法递归触发
不晓得有没有更好的办法。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Asp.Net MVC4通过id更新表单内容的思路详解 2020-03-19
- ASP.NET让FileUpload控件支持浏览自动上传功能的解决方法 2020-03-03
- GridView自动增加序号的实现方式 2019-09-08
- DataGridView自动调整行高和行宽 2019-01-08
- telerik:RadGrid 分组自动展开 2018-12-17
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
