读书人

使用触发器怎么使得在修改一张表的数

发布时间: 2012-04-27 11:57:44 作者: rapoo

使用触发器,如何使得在修改一张表的数据时,另一张表得的一个类似数据发生变化
现有表1 deviceapplylist ,字段userno deviceno 等
表2 deviceinfo , 字段userno deviceno 等


我想再修改表1的deviceno时候,自动触发表2中有着相同deviceno的 userno变成表1中userno的值

比如表1中userno=123, 我update deviceno=1,那么表2中deviceno=1的userno变成123

不知道这样的功能是否能够实现

下面是我写的一个触发器
CREATE TRIGGER TRI_changeuserno
ON deviceapplylist
FOR UPDATE--//INSERT触发方式
AS
SET NOCOUNT ON--//关闭回响

UPDATE S
SET S.userno=I.userno
FROM deviceinfo S, inserted I

where S.deviceno=I.deviceno

SET NOCOUNT OFF

本人新手,望各位高手指点

[解决办法]
LZ这个可以的。
但是触发器尽量少用或尽量使用短小的触发器事务,一个是占用资源较多。
另外就是会造成管理成本的增加。
[解决办法]
可以,触发器用得好,可以起到事半功倍的效果,反之则反之.

读书人网 >SQL Server

热点推荐