CREATE TRIGGER trig1 ON WorkTask
FOR UPDATE
AS
if WorkTask.Amount>WorkTask.Finish OR WorkTask.Overfulfill=1
begin
raiserror('不能超额完成',16,1)
rollback transaction
end
以上代码在检查语法时就报错:列前缀WorkTask与查询中所用的表名或别名不匹配,请问……
写触发器遇到的问题:列前缀与表名或别名不匹配
答案:2 悬赏:10 手机版
解决时间 2021-01-31 16:20
- 提问者网友:暮烟疏雨之际
- 2021-01-31 07:22
最佳答案
- 五星知识达人网友:鱼芗
- 2021-01-31 08:09
CREATE TRIGGER trig1 ON WorkTask
FOR UPDATe
AS
if exists(select 1 from inserted where Amount>Finish and Overfulfill=1)
begin
raiserror('不能超额完成',16,1)
rollback transaction
end
--改为这样
FOR UPDATe
AS
if exists(select 1 from inserted where Amount>Finish and Overfulfill=1)
begin
raiserror('不能超额完成',16,1)
rollback transaction
end
--改为这样
全部回答
- 1楼网友:枭雄戏美人
- 2021-01-31 09:27
表名应该是inserted吧
if (select proleftchance from t_project
where inserted.proid=t_project.proid)>0 and (select applystate from t_project
where inserted.proid=t_project.proid)='已通过'
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯