设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2575|回复: 5
打印 上一主题 下一主题

为什么我的触发器不起作用

[复制链接]
跳转到指定楼层
1#
发表于 2004-7-7 03:29:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ALTER TRIGGER 借用单编号_T1

ON dbo.[tbl借用单-编号]

FOR DELETE/* INSERT, UPDATE, DELETE */

AS



update dbo.[tbl交检单-编号]

set 借用=0,

    借用日期=null

where 产品编号 in (select 产品编号 from inserted) and 产品型号 in (select 产品型号 from inserted)

一个dbo.[tbl交检单-编号]表和dbo.[tbl借用单-编号]表,dbo.[tbl借用单-编号]

是记录产品被借用的,当用户删除借用记录时,触发dbo.[tbl交检单-编号]表中把借用字段更改False

借用日期清空,可是不起作用.

还提示:

其它用户或应用程序已经删除了该记录或更改了其主键的值.

错误信息.
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2004-7-7 04:37:00 | 只看该作者
"inserted"? maybe it is "deleted"? If still problem, pls let me know.And, maybe the UPDATE statement is better like this:update dbo.[tbl交检单-编号] set 借用=0, 借用日期=null FROM dbo.[tbl交检单-编号] t1, deleted t2

where t1.产品编号=t2.产品编号 AND t1.产品型号=t2.产品型号
3#
 楼主| 发表于 2004-7-8 00:22:00 | 只看该作者
非常感谢亚罗版主,原来我把inserted表和deleted表搞错了,真是非常感谢.ALTER TRIGGER 借用单编号_T1

ON dbo.[tbl借用单-编号]

FOR DELETE/* INSERT, UPDATE, DELETE */

AS



update dbo.[tbl交检单-编号]

set 借用=0,

    借用日期=null

where 产品编号 in (select 产品编号 from deleted ) and 产品型号 in (select 产品型号 from deleted ) '====================ALTER TRIGGER 借用单编号_T1

ON dbo.[tbl借用单-编号]

FOR DELETE  /* INSERT, UPDATE, DELETE */

ASupdate dbo.[tbl交检单-编号]

set

借用=0,

借用日期=null

FROM dbo.[tbl交检单-编号] t1, deleted t2

where t1.产品编号=t2.产品编号 AND t1.产品型号=t2.产品型号 这两种写法都通过,亚罗朋友,在网络多用户环境使用,这两种写法都可以吗?
4#
发表于 2004-7-8 01:55:00 | 只看该作者
yodong朋友,多用户也没问题的。deleted/inserted的根据是每个session(会话),比方说两个人同时删除一个记录那么他们的deleted各自不同,当然,多用户环境要考虑一些其他问题,例如记录锁定和错误处理,如果张三删除了一条记录,而李四的客户端还未刷新,那么李四删除同一条记录就会出错了,所以考虑到这类问题后可以在服务器端或者客户端作处理。你的第一种写法我认为有编码冗余之嫌,因为select....from deleted两次,似乎不是非常专业,各人看法不一,仅供参考。如果,一次删去多条记录,那么这两种写法就有本质的不同了。按照第一种写法,产品编号和产品型号即使不在同一条被删除记录,但只要删除的那些记录中都有((select 产品编号 from deleted )为真 AND 产品型号 in (select 产品型号 from deleted )为真),那么就执行语句;第二种写法则要求同时在某一条被删除记录中匹配产品编号和产品型号。
5#
 楼主| 发表于 2004-7-8 03:07:00 | 只看该作者
有道理,真是受益匪浅,阿罗朋友,你对SQL SERVER 很有研究.希望你不要厌我其烦向你请教.谢谢你对我的帮助.
6#
发表于 2004-7-8 06:46:00 | 只看该作者
楼主不必客气,我也只是半瓶子醋而已。能帮上忙,感到很高兴,如何会“厌你其烦”?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 12:36 , Processed in 0.084480 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表