如何从Microsoft SQL Server Management Studio中执行的TSQL脚本中删除'进入'?

问题描述:

我正在使用很多在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

您可以SET NOCOUNT ON,通过@@ROWCOUNT获取受影响的行并自行打印自定义消息。

+0

是的...它摆脱了进入。有没有更多的方式来影响进入? – 2011-03-15 11:16:33

+1

@ Kees - 不AFAIK。我从未在SSMS中看到过这样的选择。另外,我认为他们真的会喜欢总结信息到个人行数信息。 – 2011-03-15 11:39:13