Мне нравится устанавливать переменную @Debug tinyint в моих скриптах / SP.
По умолчанию / установить значение 0 для подавления сообщений, 1 для отображения сообщений.
Затем вместо использованияPRINT, используйте:
IF @Debug > 0 RAISERROR( 'Busy doing something...', 0, 1 ) WITH NOWAIT
Использование WITH NOWAIT заставляет сообщение отображаться немедленно, а не только когда буфер вывода очищается.
Как правило, я использую @Debug = 1 длясообщения о прогрессе, @Debug = 2 для включения dynmaic SQL, @Debug = 3 для вывода наборов результатов.
Конечно, если в вашем скрипте есть пакетные терминаторы GO, метод переменной работать не будет.