发生死锁时应该从ODBC中得到什么?

时间:2010-08-05 21:55:58

标签: sql-server odbc

我正在使用ODBC的SQLExecute()在MS SQL 2008上执行sql。我的代码调用存储过程成为死锁的受害者。服务器回滚并且过程终止,但SQLExecute()返回成功

服务器跟踪日志清楚地显示死锁,但ODBC跟踪没有任何问题的迹象。由于存在大量的并发性,所以预计会出现死锁,但是我的应用程序无法恢复,除非它被告知存在问题。

ODBC驱动程序是否应该在此处返回错误?文档声明应该在死锁后设置@@ error,但ODBC是否有责任捕获该信息?

1 个答案:

答案 0 :(得分:2)

Arrrg!在存储过程中缺少“set nocount on”。缓冲区中没有空间用于所有备份行更新计数的死锁错误。