use Print
PRINT 'testing----' WAITFOR DELAY '00:00:05';
程序中調用這個procedure或者觸發這個trigger,java控制臺根本沒有這個輸出;
很生氣,后果很嚴重的讓時間飛逝。
網上眾多大拿推薦使用Raiserror,于是
raiserror ('test raiserror 1---', 10, -1) with log
raiserror ('test raiserror 2---', 10, 1) with nowait
程序中調用這個procedure或者觸發這個trigger,java控制臺根本沒有這個輸出;
很生氣,后果很嚴重的讓時間飛逝。
于是,很無語胡亂的測試:
raiserror ('test raiserror 3---', 16,-1) with log;
raiserror ('test raiserror 4---', 16,-1) with nowait;
任何一條都輸出并且讓程序回滾,很好很好
我得找到這個原因:
翻翻
MSDN吧:
A RAISERROR severity of 11 to 19 executed in the TRY block of a TRY…CATCH construct causes control to transfer to the associated CATCH block. Specify a severity of 10 or lower to return messages using RAISERROR without invoking a CATCH block. PRINT does not transfer control to a CATCH block.
好吧,10以上的數字才會強迫它工作。
但是呢,為了不拋錯誤,我們可以做以下2種方案:
方案一:
建立tmp表,利用insert保存你要的結果
方案二:
不知道try catch是不是能幫上忙,就留在下回測試吧。
f