问题描述
当我阅读MSDN raiserror
的示例时:
When i read the example of MSDN raiserror
:
RAISERROR (N'This is message %s %d.', -- Message text.
10, -- Severity,
1, -- State,
N'number', -- First argument.
5); -- Second argument.
-- The message text returned is: This is message number 5.
GO
为什么文档使用%s
指定N'number'
,并使用%d
指定5
-第二个参数
Why the doc using %s
to specify the N'number'
,and %d
to specify the 5
-- Second argument
MSDN这样写:
我的问题是:如何解释?为什么不使用其他%a
或%b
,其他任何%+apha
都可以替换.我只是想获得有意义的理解.
My question is: How can explain it? Why don't using other like %a
or %b
.Any other %+apha
can replace it.I just want to get a meaningful understand.
推荐答案
这代表参数数据类型.
+--------------------+----------------------+
| Type specification | Represents |
+--------------------+----------------------+
| d or i | Signed integer |
| o | Unsigned octal |
| s | String |
| u | Unsigned integer |
| x or X | Unsigned hexadecimal |
+--------------------+----------------------+
N'number'
是nvarchar
字符串文字.因此获取%s
指示符.文字5
是带符号的指示器,因此由%d
表示.
N'number'
is an nvarchar
string literal. So gets the %s
specifier. And the literal 5
is a signed indicator so is represented by %d
.
由于这些说明符的原因.记录在 RAISERROR
主题
As for the reason for these specifiers. This is documented in the RAISERROR
topic
这篇关于sql raiserror指定参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!