当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 对Sql Server中的表添加级联更新和级联删除

MSSQL
SQL Server数据库技术(82)
SQL Server数据库技术(83)
SQL Server数据库技术(84)
SQL Server数据库技术(85)
SQL Server数据库技术(86)
SQL Server数据库技术(87)
SQL Server数据库技术(88)
SQL Server数据库技术(89)
SQL Server数据库技术(90)
SQL Server数据库技术(91)
SQL Server数据库技术(92)
SQL Server数据库技术(93)
SQL Server数据库技术(94)
SQL Server数据库技术(95)
SQL Server数据库技术(96)
SQL Server数据库技术(97)
SQL Server数据库技术(98)
SQL Server数据库技术(99)
SQL Server数据库技术(100)
SQL Server数据库技术(101)

MSSQL 中的 对Sql Server中的表添加级联更新和级联删除


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 672 ::
收藏到网摘: n/a

以前用Sql Server只会对图形界面进行操作,现在发现自己的Sql语言功底是越来越差了,例如如何为两个表添加关联,让他们级联更新和级联删除。
到晚上查了一下,发现可以用两种办法

触发器方式:
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 [dbo].[T_USERGROUP] ADD
        CONSTRAINT [FK_T_USERGROUP_T_ACCTTEMPLATE] FOREIGN KEY
        (
                [ATNAME]
        ) REFERENCES [dbo].[T_ACCTTEMPLATE] (
                [ATNAME]
        ) ON UPDATE CASCADE ON DELETE CASCADE