我有几个 T-SQL 存储过程,我在其中使用 Severity 参数为 0 的 RAISERROR 将进度消息打印到输出窗口。我已经在使用 WITH NOWAIT 来确保立即打印消息。
但是,无论我将什么字符串传递给 RAISERROR,都只会将第一个字符打印到屏幕上。
例如:
RAISERROR('Profiles Complete', 0, 1) WITH NOWAIT
只在屏幕上打印一个“P”。
有谁知道这是为什么或我该如何解决?
非常感谢,
马丁。
最佳答案
当一个变量被声明为没有长度的char时,长度默认为1。
DECLARE @c char
SET @c = 'Profiles Complete'
PRINT @c
输出:
P
关于tsql - T-SQL RAISERROR WITH NOWAIT 只打印一个字符而不是整个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9700344/