2010-02-12 221 views
0

我有一個表,其中有更新觸發器寫入它有去聲明之前的打印語句。SQL Server:遊標狀態無效(0)狀態爲什麼?

 
ALTER TRIGGER user_type_check ON user_table 
    --code 

    PRINT 'Modification of user is done.' 
GO 
SET QUOTED_IDENTIFIER OFF 
GO 
SET ANSI_NULLS ON 
GO 


現在有了這個結構,每當我對錶進行更新操作失敗。

但是,當我在觸發器中的go語句之後移動PRINT語句時,它的工作正常,沒有錯誤。爲什麼是這樣的行爲?

+0

請使用標準的SO標籤,如「SQL服務器」當你等待幾分之一秒時彈出 - 做*不*使用「mssql」或「sqlserver」 - 謝謝! – 2010-02-12 09:43:35

回答

0

看到實際可能在您的主題中產生錯誤的代碼會更有趣。 PRINT不太可能產生這樣的錯誤。

爲什麼在觸發器中使用PRINT而不是RAISERROR?你想達到什麼目的?

順便說一句,你爲什麼當你去了之後移動打印沒有得到一個錯誤的原因是,它是那麼不再在觸發器定義