无法弄清楚我的更新查询无效的原因

时间:2016-01-09 22:56:24

标签: sql-server sql-update

我已经向表columnY添加了一个整数列tableX,我写了一个更新脚本,该脚本应该为具有特定Id值的行更新此列,但是当我执行此脚本时,它会报告它是已成功完成(@@ERROR = 0),但该值未更新

期望的结果将是此更新查询更新列值...

这是查询

Begin
update tableX
set columnY=1
where rowId=446
end 

if (@@ERROR=0)
begin       
    select columnY from tableX where rowId=446
end 

go

目前此查询返回Null值,但据我了解,它应该(这将是所需的行为)返回值1

我没有(现在 - 没有运气在网上发现任何关于这个问题的事情)这里有什么问题......我试图添加更多的列,但他们也有这个奇怪行为 - 无法更新列值,但在运行更新查询时没有产生错误...

1 个答案:

答案 0 :(得分:1)

我认为,错误是在其他地方...也许是你桌子上的触发器???

试过这个:

CREATE TABLE tableX(rowId INT,columnY INT);
INSERT INTO tableX VALUES(446,0);

select columnY from tableX where rowId=446

Begin
update tableX
set columnY=1
where rowId=446
end 

if (@@ERROR=0)
begin       
    select columnY from tableX where rowId=446
end 
GO

DROP TABLE tableX;

结果是 - 正如预期的那样 - 先是0然后是1