插入可以执行没有错误,但不插入任何东西?我正在使用SQL Server 2008,并想知道如果我能仅仅通过检查@@error
或者是否有我缺少的东西而逃脱。对于更新,我检查@@error
和@@rowcount
。插入@@rowcount = 0
对我来说似乎很陌生。插入0行没有错误
编辑 @Gregory我基本上想知道如何检查一个插入语句。插入执行和@@error
为0是否有奇怪的边界情况?
插入可以执行没有错误,但不插入任何东西?我正在使用SQL Server 2008,并想知道如果我能仅仅通过检查@@error
或者是否有我缺少的东西而逃脱。对于更新,我检查@@error
和@@rowcount
。插入@@rowcount = 0
对我来说似乎很陌生。插入0行没有错误
编辑 @Gregory我基本上想知道如何检查一个插入语句。插入执行和@@error
为0是否有奇怪的边界情况?
您可以使用select返回空表来运行INSERT
命令。
该语句将成功,但不更新行。
INSERT INTO myTable (col1, col2)
SELECT col1, col2
FROM myOtherTable
WHERE 1 = 2
您是否遇到过错误,但没有插入?
或者这只是一个问题,你为什么要使用ROWCOUNT?除了检查单个插入是否工作之外,ROWCOUNT还有其他目的。
还是你问@@ ERROR?
此外,插入可能最终会插入没有错误的行,而不是涉及触发器。
通过鼠标点击击败我。 :) +1 – 2011-06-02 14:01:25
@Ken - 对不起 - 下次尝试会变慢;) – Oded 2011-06-02 14:01:55
谢谢,就是我在找的东西。如果使用值插入测试(aCol)值(42)',我是否安全地检查'@@ error'? – 2011-06-02 14:34:43