Office中国论坛/Access中国论坛

标题: 关于UPDATE触发器 [打印本页]

作者: jskscxy    时间: 2007-1-4 17:06
标题: 关于UPDATE触发器
我有两个表 A,B

A表子段: 排序,产品ID,产品名称,产品规格....
B表子段: 排序,产品ID,岗位,基准

目的:
在A表更改排序时同时更改B表的排序

这是我写的触发器:
ALTER TRIGGER 产品表_UPDATE
ON dbo.产品表
FOR UPDATE
AS
IF UPDATE(排序)
BEGIN
UPDATE 基准表
SET 排序 = Inserted.排序 From 基准表,Deleted,Inserted
Where 基准表.排序=Deleted.排序
END

上面的触发器在企业管理器里运行正常,但在ADP里运行就会出现以下对话,
但结果还是正确的更新了,









麻烦那位仁兄帮我解释一下


图片附件: 未命名1.JPG (2007-1-4 08:56 AM, 6.7 K)



图片附件: 未命名2.JPG (2007-1-4 08:56 AM, 18.68 K)




[此贴子已经被作者于2007-1-4 9:07:34编辑过]


作者: wuaza    时间: 2007-1-4 18:26
图看不到。
这样效果一样吗:
ALTER TRIGGER 产品表_UPDATE
ON dbo.产品表
FOR UPDATE
AS
IF UPDATE(排序)
BEGIN
UPDATE 基准表
SET 排序 = Inserted.排序 From 基准表,Inserted
Where 基准表.排序=Inserted.排序
END

作者: jskscxy    时间: 2007-1-5 03:13
以下是引用wuaza在2007-1-4 10:26:00的发言:


图看不到。
这样效果一样吗:
ALTER TRIGGER 产品表_UPDATE
ON dbo.产品表
FOR UPDATE
AS
IF UPDATE(排序)
BEGIN
UPDATE 基准表
SET 排序 = Inserted.排序 From 基准表,Inserted
Where 基准表.排序=Inserted.排序
END

结果一样
作者: tzy0906    时间: 2007-1-27 23:29
ALTER TRIGGER 产品表_UPDATE
ON dbo.产品表
FOR UPDATE
AS
SET NOCOUNT ON
IF UPDATE(排序)
BEGIN
UPDATE 基准表
SET 排序 = Inserted.排序 From 基准表,Inserted
Where 基准表.排序=Inserted.排序
END


这样子应该好了吧
作者: jskscxy    时间: 2007-6-20 20:04
[color="#61b713"]谢谢tzy0906兄:

你的方法可行。

作者: xjb_test    时间: 2009-11-15 22:37
学习




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3