在SQL Server 2005 Management Studio中,PRINT语句的输出似乎不会立即出现:如果我有一个PRINT语句后跟一个长时间运行的语句,PRINT输出直到以下语句后才出现
有没有办法提前刷新输出?我正在运行一些需要花费时间才能完成的升级脚本,我想知道脚本有多远(所以我知道是等待几分钟然后开始下一个,还是去吃午餐)。
答案 0 :(得分:90)
没有。它们仅在提交事务,返回其他记录集或语句完成时返回(SQL批处理中为go
语句终止符)。您可以在非致命错误级别(0-18)使用raiserror来获得此类的即时反馈。例如:
RAISERROR ('Foo', 10, 1) WITH NOWAIT
答案 1 :(得分:0)
谢谢!并提供一个用于打印选项的略微mod,以吐出一条消息,而不会跟踪错误信息
SELECT t1.QUANTITY,
, t1.[TURNOVER WITHOUT TAX]
, t2.SPLIT
, CAST(CAST(QUANTITY AS numeric(32, 18)) * CAST(SPLIT AS numeric(32,18))
AS numeric(32, 9)) [QUANTITY2]
, CAST(CAST([TURNOVER WITHOUT TAX] AS numeric(32, 18)) * CAST(SPLIT AS numeric(32,18))
AS numeric(32, 9)) [TURNOVER_WITHOUT_TAX2]