T-SQL 字符串前加 N 是什么意思
生活随笔
收集整理的這篇文章主要介紹了
T-SQL 字符串前加 N 是什么意思
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
比如 select @status = N'stopped'
那么其中的字符串 stopped 前面為什么要加 N 呢?而且我們發(fā)現(xiàn)有些地方加 N 與否都沒有影響,有些地方又必須加 N。
N 在這里表示 Unicode,就是雙字節(jié)字符。對于西文字符,用一個字節(jié)來存儲過足夠了,對于東方文字字符,就需要兩個字節(jié)來存儲。Unicode 為了統(tǒng)一、規(guī)范、方便、兼容,就規(guī)定西文字符也用兩個字節(jié)來存儲。
也就是說加 N 就表示字符串用 Unicode 方式存儲。
但有時候加與不加都一樣,又是什么原因呢?這是由于自動轉(zhuǎn)換造成的。
比如:
declare @status nvarchar(20)
select @status = N'stopped'
select @status = 'stopped'
實際上上述兩句賦值的結(jié)果是一樣的,因為變量類型就是 nvarchar(Unicode 類型)。
而有些地方(比如:sp_executesql 的參數(shù))不能自動轉(zhuǎn)換,所以需要加 N 了。
總結(jié)
以上是生活随笔為你收集整理的T-SQL 字符串前加 N 是什么意思的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab impyramid,图像
- 下一篇: php 正则mysql语句_MySQL正