SQL Server: вывод PRINT появляется не сразу - PullRequest
59 голосов
/ 08 декабря 2008

В SQL Server 2005 Management Studio создается впечатление, что выходные данные операторов PRINT появляются не сразу: если у меня есть оператор PRINT, за которым следует долго выполняющийся оператор, выходные данные PRINT появляются только после следующего оператора .

Есть ли способ очистить выход раньше? Я запускаю несколько сценариев обновления, для завершения которых требуется время, и я хотел бы знать, как далеко продвинулся сценарий (поэтому я знаю, стоит ли подождать несколько минут, а затем начать следующий, или идти на обед ).

Ответы [ 2 ]

91 голосов
/ 08 декабря 2008

Нет. Они будут возвращены только тогда, когда транзакция будет зафиксирована, когда будут возвращены другие наборы записей или завершен оператор (go терминатор оператора в пакете SQL). Вы можете использовать raiserror с уровнями нефатальных ошибок (0-18), чтобы получить немедленную обратную связь такого рода. Например:

RAISERROR ('Foo', 10, 1) WITH NOWAIT
0 голосов
/ 25 февраля 2019

Спасибо! и предложить небольшой мод для опции печати, чтобы плюнуть в сообщение, без ведомой информации об ошибке

    raiserror('msg or var',0,0) with nowait; 

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...