2011-03-15 67 views
0

我正在使用很多在SQL Server上執行管理任務的TSQL腳本。這些腳本保存爲.sql文件,並由Microsoft SQL Server Management Studio中的DBA執行。我使用print語句將一些信息回傳給DBA。如何從Microsoft SQL Server Management Studio中執行的TSQL腳本中刪除'進入'?

考慮一個腳本中的簡化:

PRINT 'Update user...' 
UPDATE [User] SET UserName = UserName WHERE UserName = 'Administrator' 

PRINT 'Delete user...' 
DELETE FROM [User] WHERE UserName = 'Nothing' 

PRINT 'Update & Delete finished' 

當我運行此腳本我得到以下輸出:

Update user... 

(1 row(s) affected) 
Delete user... 

(0 row(s) affected) 
Update & Delete finished 

總是有一個進入的結果之前,查詢。我的一些DBA抱怨輸出的可讀性。在腳本中使用遊標時,特別難以解釋結果。

當動作的結果顯示時,有沒有辦法擺脫前面的輸入?

+0

我認爲如果你的數據庫管理員有什麼好處,並且這對他們如此重要,那麼他們應該能夠弄清楚這一點...... – Paddy 2011-03-15 11:10:36

+0

是的。但是,因爲他們沒有,我決定把這個問題放在SO :-)。 – 2011-03-15 11:13:32

+0

在你的每條消息之前打印一行信息是否有助於可讀性? – Paddy 2011-03-15 11:39:32

回答

4

您可以SET NOCOUNT ON,通過@@ROWCOUNT獲取受影響的行並自行打印自定義消息。

+0

是的...它擺脫了進入。有沒有更多的方式來影響進入? – 2011-03-15 11:16:33

+1

@ Kees - 不AFAIK。我從未在SSMS中看到過這樣的選擇。另外,我認爲他們真的會喜歡總結信息到個人行數信息。 – 2011-03-15 11:39:13

相關問題