
触发器方式: create trigger trg_A on A for update,delete as begin if exists(select 1 from inserted) update B set Name=(select Name from inserted) where Name=(select Name from deleted) else delete B where Name=(select Name from deleted) end go 要使用级联性更新和删除,用户可以在Alter TABLE 语句的CONSTRAINT子句中使用ON Update CASCADE 和/或 ON Delete CASCADE 关键字。注意他们都必须是应用于外键的。 级联更新和级联删除方式: Alter TABLE [dbo][T_USERGROUP] ADD CONSTRAINT [FK_T_USERGROUP_T_ACCTTEMPLATE] FOREIGN KEY ( [ATNAME] ) REFERENCES [dbo][T_ACCTTEMPLATE] ( [ATNAME] ) ON Update CASCADE ON Delete CASCADE
你员工表和关系表重名了,而且数据冗余了,不需要客户编号。
客户表client_Table
客户编号 clientId int 4
客户姓名 clientName nvarchar 20
客户公司 clientCompany nvarchar 50
员工表user_Table
用户编号 userId int 4
用户姓名 userName nvarchar 50
用户密码 userPwd varchar 20
关系表userclient_Table
关系编号 userclientId Int 4
用户编号 userId Int 4
客户编号 clientId Int 4
根据员工查询客户:
select client_TableclientId ,client_TableclientName ,client_TableclientCompany
from client_Table
left join userclient_Table on client_TableclientId =userclient_TableclientId
left join user_Table on userclient_TableuserId=user_TableuserId
where user_TableuserId =员工ID
根据员工删除客户:
根据前面查询出来的客户ID逐条删除,这个看你是纯SQL *** 作还是在编程工具里 *** 作。
以上就是关于对Sql Server中的表添加级联更新和级联删除的几种方法全部的内容,包括:对Sql Server中的表添加级联更新和级联删除的几种方法、sqlserver2000的级联删除和级联查询、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)