2010-11-12 28 views
0

所有,的SQL Server 2000工作調用過程和失敗:必須聲明變量@intVariableName

我有工作設置一臺運行夜間,而且,每隔幾個月執行對數據庫的存儲過程時,它會失敗。然後,第二天晚上,它運行良好。它始終是相同的錯誤消息:

「必須聲明變量'@intAccountIdent'。[SQLSTATE 01000](消息18014)。」

我可以確保您將此變量與其他許多人一起聲明在我的過程的頂部。

這份工作已經存在多年了,直到最近纔開始出現這個錯誤。我已經對它進行了剖析,將其分開,驗證了SVN中的版本與服務器上的版本相同......沒有任何變化,但是這種情況一直在發生。我在網上挖了一遍,一直沒能找到任何可以給我任何幫助的東西。

有沒有人遇到類似的情況?說實話,我不知道我是否在尋找一個解決方案或更多的解決方案,以解釋這樣的錯誤如何能夠神奇地解決它自己並消失?

任何洞察力非常感謝!

謝謝。

+0

發佈您的程序的代碼 – RedFilter 2010-11-12 16:09:07

+0

該程序是2000多行,並且,因爲我從未在此發佈過,所以我不知道發佈大量代碼的禮節是什麼。 :\ – CaptNickSparrow 2010-11-12 16:11:31

回答

0

我想嘗試讓SQL事件探查器在錯誤發生時運行,跟蹤事件SP:StmtStarted,SP:StmtCompleted和Exceptions(以及可能還有那些跟蹤應用程序向數據庫提交查詢的事件)。這可能會在程序運行時顯示出奇怪的情況。

這可能會產生數萬行數據以篩選,因此將其過濾爲儘可能少的行將是重要的。 (在ObjectName上過濾=您的過程名稱是一個開始。)

您能否讓它可靠地失敗,還是基本上是隨機的?比較好的運行和壞的運行也可能是有用的。

相關問題