请教一个触发器问题.

tatty_bad 2008-06-05 10:55:02
CREATE TRIGGER [UpBomInfo] ON [dbo].[YT_CustBom_List] 
FOR INSERT, UPDATE, DELETE
AS
If not exists(select 1 from inserted)
Begin
UpDate YT_Bom_List Set YT_Bom_LastTime = getDate() Where YT_Bom_Id=(Select YT_CostBom_BomId From inserted)
End


我的要求是一旦在YT_CostBom_List表里面有数据增加,更新,删除,那么在YT_Bom_List表里面对应的记录就也跟着更新一下时间.

两表关联是YT_Bom_List里面的YT_Bom_Id 和YT_CostBom_List里面的YT_CostBom_BomId

上面的是我写的,能够通过,但是执行不了.
...全文
135 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxg22526451 2008-06-05
  • 打赏
  • 举报
回复
解决了?
那接分:)
wzy_love_sly 2008-06-05
  • 打赏
  • 举报
回复
接分,真解决了吗?
wzjpsq 2008-06-05
  • 打赏
  • 举报
回复
跟帖
tatty_bad 2008-06-05
  • 打赏
  • 举报
回复
问题解决了.谁跟帖.给分.
tatty_bad 2008-06-05
  • 打赏
  • 举报
回复
是解决了.正如楼上所说,我自己搞糊涂了.

还是谢谢大家.
iamme81 2008-06-05
  • 打赏
  • 举报
回复
是不是
If not exists(select 1 from inserted)
Begin
UpDate YT_Bom_List Set YT_Bom_LastTime = getDate() Where YT_Bom_Id=(Select YT_CostBom_BomId From inserted)
End

逻辑上的错误

应该是If exists(select 1 from inserted)

此外delete用的是deleted表,楼主这样写法有问题

应该为delete单独写个触发器

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧