日期:2014-05-17 浏览次数:20581 次
use CSDN
go
create table table_A(id int primary key, name nchar(10))
create table table_B(id int constraint FK_test foreign key(id) references table_A(id), wage int)
create table table_C(id int, name char(10), wage int)
insert into table_A
select 1, N'牛'
insert into table_B
select 1, 300
--=====================
create trigger trig_delete
on table_A
instead of delete
as
begin
    insert into table_c
    select
        c.id,
        a.name,
        b.wage
    from table_A a
        inner join deleted c
            on a.id = c.id
        inner join table_B b
            on a.id = b.id
    delete B
    from table_B B
        inner join deleted A
            on B.id = A.id
            
    delete A
    from table_A A
        inner join deleted C
            on A.id = C.id
end  
go
--test
delete table_a