2009-07-23 59 views

回答

6

錯誤批處理中斷的行爲是SQL Server(即後端)選項,並受錯誤嚴重性控制。無法更改服務器行爲,中斷批處理的錯誤將始終中斷批處理。

文件延續的行爲(錯誤後運行下一個GO定界批處理)是sqlcmd選項,並受-b開關控制。默認爲ON(意味着sqlcmd會繼續下一批)。

7

在命令行上使用-V標誌。如果設置了足夠大的值(例如17),即使相當嚴重的錯誤也不會停止腳本。

例如sqlcmd ... -V 17 -i MyFile.sql

我會假設你知道你在做什麼,並且正在監視錯誤信息。

你可以走得更高,達到25級,但是如果你得到17級和25級之間的錯誤,那麼你不太可能進步很多,因爲它們往往是由軟件或硬件引起的服務器上的錯誤,而不是您輸入的腳本中的錯誤。 (http://msdn.microsoft.com/en-us/library/aa937483(v=sql.80).aspx