日期:2014-05-18  浏览次数:20438 次

求助-有关触发器的问题
本人有两张表分别为t1,t2   ,这两张表结构一样。t1表中有个字段field1为bool量,
初始化时field1都为0,所要创建的触发器所要满足的是当t1表中某个记录中的
field1字段为1时就复制这条记录到t2表,另外要删除t1表的该条记录。
望大哥,大姐帮帮忙,小弟在此先谢过。

------解决方案--------------------
--创建测试表
create table t1(id int, c1 bit)
create table t2(id int, c1 bit)
go

--往t1插入一些数据
insert t1 select 1,0
insert t1 select 2,0
go

select * from t1
/*
id c1
1 0
2 0
*/
go

--在t1创建触发器
create trigger tr_test
on t1
for update
as
set nocount on
if update(c1)
begin
insert t2 select * from inserted where c1 = 1
delete a from t1 a, inserted b where a.id = b.id and b.c1 = 1
end
set nocount off
go

--更新t1表id=1的c1=1
update t1 set c1 = 1 where id = 1

select * from t1
/*
id c1
2 0
*/

select * from t2
/*
id c1
1 1
*/

--删除测试
drop table t1,t2