首页新闻找找看学习计划

SQL-server 中如何创建触发器?

0
悬赏园豆:40 [已解决问题] 解决于 2015-08-10 11:17

问题描述:首先是两张表分别是order表和order_history 表,两张该表的结构基本上相同;order_history 比 order 表多一个字段为insert_time;

   当order表中的一个state字段发生变化时(insert or update)时需要向order_history表中新增一条记录。

   求大神,帮助给写一个触发器呗?

sql
IT小伙儿的主页 IT小伙儿 | 初学一级 | 园豆:11
提问于:2015-08-03 15:40
< >
分享
最佳答案
0

自己看:http://www.cnblogs.com/hoojo/archive/2011/07/20/2111316.html

收获园豆:30
jio92 | 小虾三级 |园豆:1064 | 2015-08-03 15:43
其他回答(2)
0

create trigger tgr_xxx on [order] after insert,update

as

begin

  

end

收获园豆:9
gw2010 | 园豆:1394 (小虾三级) | 2015-08-03 16:23

创建触发器我会创建,就是在逻辑中不知道怎么将order表中的数据添加到order_history 表中?

支持(0) 反对(0) IT小伙儿 | 园豆:11 (初学一级) | 2015-08-03 17:14

@IT小伙儿: 

CREATE TRIGGER tgr_t
ON t
AFTER INSERT,UPDATE
AS
BEGIN
IF EXISTS(SELECT 1 FROM deleted)
INSERT INTO t1 SELECT id,v,1,GETDATE() FROM INSERTED --更新
ELSE
INSERT INTO t1 SELECT id,v,2,GETDATE() FROM INSERTED --新增
END

支持(0) 反对(0) gw2010 | 园豆:1394 (小虾三级) | 2015-08-03 17:24

@gw2010: 楼下说得对,别人写一遍对你帮助不大,对我反而有帮助,所以我还是原意写一遍。

支持(0) 反对(0) gw2010 | 园豆:1394 (小虾三级) | 2015-08-03 17:25
0

还是自己去写把,有不难,别人给你写了,完全没有意义

收获园豆:1
稳稳的河 | 园豆:4183 (老鸟四级) | 2015-08-03 16:27
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册