注册 登录
编程论坛 SQL Server论坛

急求确发器写法,我觉得有一点难度或复杂!

ahhfyf 发布于 2007-09-07 20:53, 1043 次点击
本人是菜鸟…………别见笑!求一确发器的写法
假如有表a(id,f1,f2,f3,f4,f5),其中f5为BIT类型,a表中有若干条记录,暂且f5全为1。
另外有一张与a表一样结构的b表(为空表),现在问题如下:
1、如果我更新a表的f1,f3,f4字段(任意一个),此时检索b表是否具有相同的记录(即a.id=b.id),若有,则更新b表的数据为a表更新前的数据(注意一定是更新前的);若没有,则什么都不做
2、 如果更新a表中的f5,假设由1改为0,不管是否更改了f1,f3,f4等其它字段,此时检索b表中是否具有相同的记录(即a.id=b.id),若有, 则更新b表中的数据为a表更新前的数据(注意一定是更新前的);若没有,则将a表中更新前的记录(注意一定是更新前的)插入到b表中
3、如果更新a表中的f5,假设由0改为1,则删除b表中相对应的记录(即b.id=a.id)
4、如果删除a表中的记录,应同时删除b表中相同的记录
请高手解答!
6 回复
#2
purana2007-09-07 20:58
没什么的.都是触发器的简单应用..
#3
ahhfyf2007-09-12 14:22
怎么没人回呢??
#4
purana2007-09-12 14:24
先找个教程学学先.不难.
#5
purana2007-09-12 14:37

叫西风独自凉写.
#6
西风独自凉2007-09-12 15:12
回复:(purana)[em02]叫西风独自凉写.
汗。。。﹝
#7
西风独自凉2007-09-12 15:30
if object_id('tri_add') is not null
drop trigger tri_add
go
create trigger tri_add on t_test for insert as
insert into t_test1 select * from t_test where t_test.id=(select id from inserted)

這是一個新增的。你去試下,不知道可以不。其它的自己動手。。。

[此贴子已经被作者于2007-9-12 15:48:34编辑过]

1