我的应用程序使用SQL2000。我的应用程序使用N个表。我的应用程序有一个名为Database server的SQL服务器包装器。它作为一项全天候windows服务运行。
如果我选中了SQL维护计划中的完整性检查选项,当此任务在我的一个表被锁定且从未解锁后运行一次时。所以我的数据库事务的历史记录已经丢失了。
请提供您如何解决此问题的建议。
发布于 2009-07-26 13:46:22
如果客户端命令超时怎么办?由于DBCC的原因,这些锁是你自己的锁?
您的代码将在等待DBCC完成时超时,但它已经发出的任何锁都不会回滚。
命令超时将通知SQL Server直接停止处理。要释放锁,您需要在连接上使用ROLLACK或关闭连接。
选项:
SET XACT_ABORT in SQL:Do I really need to use “SET XACT_ABORT ON”? (SO)IF @@TRANCOUNT > 0 ROLLBACK TRAN)https://stackoverflow.com/questions/1157426
复制相似问题