触发器我不太熟,麻烦哪位大哥帮帮忙。。小弟在此谢过了。sql srv20001、两个结构一模一样的表:tbky_Alm,tbky_hisalm,当记录插入到tbky_alm表的时候,就自动被复制到tbky_hisalm中。(这个好象好写点哦,别急,再看看下面)2、两个结构一模一样的表:tbky_Alm,tbky_hisalm,还有一个tbky_syscfg表,表结构不同,但它们都有一个相同的字段JZNUM,当记录插入到tbky_alm表的时候,先读取该记录中字段JZNUM中的值,然后再看看tbky_syscfg表JZNUM字段所有记录中有没有这个值,如果有就将该记录复制到tbky_hisalm中,如果没有就删除它。(不知道我说得清楚不?)
就自动被复制到tbky_hisalm中。(这个好象好写点哦,别急,再看看下面) create trigger my_trig on tbky_alm for insert
as
begin
insert into tbky_hisalm select * from inserted
end
还有一个tbky_syscfg表,表结构不同,
但它们都有一个相同的字段JZNUM,当记录插入到tbky_alm表的时候,
先读取该记录中字段JZNUM中的值,然后再看看tbky_syscfg表JZNUM字段所有记录中有没有这个值,
如果有就将该记录复制到tbky_hisalm中,如果没有就删除它。(不知道我说得清楚不?) create trigger my_trig on tbky_alm for insert
as
begin
if exists (select 1 from tbky_syscfg m, inserted n where m.JZNUM = n.JZNUM)
insert into tbky_hisalm select * from inserted
else
delete tbky_hisalm from tbky_hisalm m , inserted n where m.JZNUM = n.JZNUM
end
当记录插入到tbky_alm表的时候,就自动被复制到tbky_hisalm中。
(这个好象好写点哦,别急,再看看下面) create trigger udt_tbky_Alm_i
for insert
on tbky_Alm
as
begin
insert into tbky_hisalm
select * from inserted if @@error <> 0
rollback
end2、两个结构一模一样的表:tbky_Alm,tbky_hisalm,
还有一个tbky_syscfg表,表结构不同,但它们都有一个相同的字段JZNUM,
当记录插入到tbky_alm表的时候,
先读取该记录中字段JZNUM中的值,
然后再看看tbky_syscfg表JZNUM字段所有记录中有没有这个值,
如果有就将该记录复制到tbky_hisalm中,如果没有就删除它。(不知道我说得清楚不?) create trigger udt_tbky_alm_i
for insert
on tbky_hisalm
as
begin
declare @JZNUM varchar(20)
select @JZNUM = JZNUM from inserted if exists ( select 1 from tbky_syscfg where JZNUM = @JZNUM )
begin
insert into tbky_hisalm
select * from inserted
end
else
begin
rollback
end
end