2009-07-21 77 views
1

我正在使用SQL 2000作爲我的應用程序。我的應用程序使用N個表格。 我的應用程序有一個叫做數據庫服務器的SQL服務器的包裝器。它作爲24/7的Windows服務運行。數據庫表鎖

如果我已經檢查了SQL維護計劃中的完整性檢查選項,那麼當此任務運行一次後,其中一個表已被鎖定並且從未解鎖。 所以我的數據庫事務的歷史已經失去。

請提供您的建議如何解決這個問題。

+0

這是一個持續的問題,或者是它是從未被釋放的一次性鎖? CHECK INTEGRITY維護計劃步驟會專門鎖定數據庫,這可能會導致爭用問題。如果您擁有SQL Server Enterprise,它可以在保持聯機狀態下執行此操作,但Standard不太適合共享。 – SqlRyan 2009-07-24 04:32:06

回答

1

如果客戶端命令超時會怎麼樣?由於DBCC,鎖是你自己的鎖?

您的代碼將超時等待DBCC完成,但它已發出的任何鎖都不會回滾。

命令超時告訴SQL Server停止處理。要釋放鎖定,您需要在連接上進行ROLLACK或關閉連接。

選項:在SQL