T-SQL RAISERROR с NOWAIT, печатающим только один символ вместо всей строки - PullRequest
2 голосов
/ 14 марта 2012

У меня есть несколько хранимых процедур T-SQL, где я использую RAISERROR с параметром Severity, равным 0, для вывода сообщений о ходе выполнения в окно вывода. Я уже использую WITH NOWAIT, чтобы обеспечить немедленную распечатку сообщений.

Однако, независимо от того, какую строку я передаю в RAISERROR, на экран выводится только первый символ.

Например:

RAISERROR('Profiles Complete', 0, 1) WITH NOWAIT

выводит на экран только одну букву «P».

Кто-нибудь знает, почему это так или как я могу это исправить?

Большое спасибо,

Martyn.

1 Ответ

5 голосов
/ 19 марта 2012

Когда переменная объявляется как char без длины, длина по умолчанию равна 1.

DECLARE @c char
SET @c = 'Profiles Complete'
PRINT @c

Выход:

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