Ano*_*ous 2 sql-server ssms loops messages
我有一个脚本,通常需要几个小时才能运行(主要是因为它需要循环数十万次。目前,我有一个print语句来检查进度,以便每次完成1次迭代时都会打印出来:“查询然后,在“ 100000完成的查询2”下面,依次类推。
有什么方法可以删除SQL Server Management Studio中的旧消息,以便消息窗格仅显示最新的打印语句?
您无法在中清除打印消息SSMS。如果您GO的查询中没有声明,则打印可能不会立即打印。PRINT在被调用时并不一定输出任何东西。
您不应使用print来跟踪查询的进度。要了解有关此内容的更多信息,请阅读停止使用PRINT跟踪查询进度
如果要立即跟踪进度,则可以RAISEERROR像下面这样使用,而不是打印。
RAISERROR('SOME MESSAGE YOU WANT TO SHOW', 0, 1) WITH NOWAIT;
Run Code Online (Sandbox Code Playgroud)
理想情况下,您应该有一个日志表,您应该在其中输入每个步骤的进度。这将为您提供正在发生的情况的正确图片。