永发信息网

T-SQL 字符串前加 N 是什么意思

答案:2  悬赏:60  手机版
解决时间 2021-02-03 09:55
  • 提问者网友:做自己de王妃
  • 2021-02-03 01:03
T-SQL 字符串前加 N 是什么意思
最佳答案
  • 五星知识达人网友:空山清雨
  • 2021-02-03 01:26
N 在这里表示 Unicode,就是双字节字符。对于西文字符,用一个字节来存储过足够了,对于东方文字字符,就需要两个字节来存储。Unicode 为了统一、规范、方便、兼容,就规定西文字符也用两个字节来存储。
也就是说加 N 就表示字符串用 Unicode 方式存储。
这是由于自动转换造成的。
比如:declare @status nvarchar(20)
select @status = N'stopped'
select @status = 'stopped'
实际上上述两句赋值的结果是一样的,因为变量类型就是 nvarchar(Unicode 类型)。
而有些地方(比如:
的参数)不能自动转换,所以需要加 N 了。
全部回答
  • 1楼网友:十鸦
  • 2021-02-03 03:03
n 在这里表示 unicode,就是双字节字符。对于西文字符,用一个字节来存储过足够了,对于东方文字字符,就需要两个字节来存储。unicode 为了统一、规范、方便、兼容,就规定西文字符也用两个字节来存储。 也就是说加 n 就表示字符串用 unicode 方式存储。 select @status = n'stopped' select @status = 'stopped' 实际上上述两句赋值的结果是一样的,因为变量类型就是 nvarchar(unicode 类型)。 而有些地方(比如:sp_executesql 的参数)不能自动转换,所以需要加 n 了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯