首页新闻找找看学习计划

触发器问题:

0
悬赏园豆:50 [已解决问题] 解决于 2014-02-27 12:41

触发器问题:
一个学生表(学号,姓名,所在系)和系表(系编号,系名,系人数)
问题:
在学生表中增加或减少一个学生,在系表中的系人数字段会有对应的变化,这个触发器怎么写?

编程小二的主页 编程小二 | 初学一级 | 园豆:102
提问于:2013-05-15 22:41
< >
分享
最佳答案
0

给个插入的例子你,更新同理

CREATE TRIGGER test

  on  学生表

  after insert

as

bebin

  declare @id int

  select @id = 所在系 from INSERTED

  update 系表 set 系人数=(select count(1) from 学生表 where 所在系=@id) where 系编号= @id

end

收获园豆:50
五行缺木 | 菜鸟二级 |园豆:386 | 2013-05-16 08:57
其他回答(4)
0
不负春光,努力生长 | 园豆:1382 (小虾三级) | 2013-05-15 23:16
0

针对学生表建两个触发器,after insert和after delete触发器

滴答的雨 | 园豆:3690 (老鸟四级) | 2013-05-16 00:06
0

   同2楼,新建两个触发器即可。 after insert和after delete . 具体例子可以“参照”3楼,不过3楼的update语句貌似不给力。 insert学生后,应该update系表 人数+1 .

  update 系表 set 系人数=系人数+1 where......  同理delete触发器,更新系人数=系人数-1 即可。

大致如上,具体操作要看你自己的需求。

 

谢谢

[Stephen-kzx] | 园豆:366 (菜鸟二级) | 2013-05-16 11:43
0

触发器都不靠谱 不如在写sql的时候加上对系表的操作。。

丫的 | 园豆:1575 (小虾三级) | 2013-05-16 15:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册