2010-10-07 73 views

回答

1

正如消息所言,問題在於連接到SQL。

因爲它只發生在一個程序中,所以我的任務就是在嘗試調用此存儲過程之前,您已經留下了一些打開的數據庫連接。

您可以通過打開Perfmon來檢查連接並查看連接池。 如果它隨着時間的推移而增長,那麼你留下了開放的連接。

同時檢查您的網絡是否穩定,您是否在Lan,Wan,web,本地或遠程?在連接字符串中,你使用了這個:127.0.0.1/localhost /還是真實的IP地址?

+0

我得到了DBA重啓數據庫,仍然發生。我認爲這很奇怪。我們甚至有一個數據庫的舊副本(相同的模式),並指出了Web服務器,它的工作原理... – Diskdrive 2010-10-13 02:15:33

+0

@RoboShop也許然後存儲過程中的錯誤?我能說什麼... – Aristos 2010-10-13 06:06:35

1

這可能已經修復,但...

我遇到了一些我自己的ASP.NET代碼的同樣的問題。調用SqlDataReader.Close()或SqlDataReader.Dispose()(從內部類SqlClient.TdsParser)時,會異常拋出異常。

我能夠通過簡單地使用SqlConnection.Close()來解決問題。顯然SqlDataReader.Close()是不可靠的。

實施例:

if (this._Command != null) 
{ 
    this._Command.Cancel(); 
    this._Command.Dispose(); 
} 
if (this._Connection.State == ConnectionState.Open) 
{ 
    this._Connection.Close(); 
} 
if (this._DataReader != null) 
{ 
    this._DataReader.Dispose(); 
} 
this._Connection.Dispose(); 
相關問題