1. 程式人生 > >sql server中,N''表示什麼意思?

sql server中,N''表示什麼意思?

加上 N 代表存入資料庫時以 Unicode 格式儲存。
N'string' 表示string是個Unicode字串

Unicode 字串的格式與普通字串相似,但它前面有一個 N 識別符號(N 代表 SQL-92 標準中的國際語言 (National Language))。N 字首必須是大寫字母。例如,'Michél' 是字串常量而 N'Michél' 則是 Unicode 常量。Unicode 常量被解釋為 Unicode 資料,並且不使用內碼表進行計算。Unicode 常量確實有排序規則,主要用於控制比較和區分大小寫。為 Unicode 常量指派當前資料庫的預設排序規則,除非使用 COLLATE 子句為其指定了排序規則。Unicode 資料中的每個字元都使用兩個位元組進行儲存,而字元資料中的每個字元則都使用一個位元組進行儲存。有關更多資訊,請參見使用 Unicode 資料。

Unicode

字串常量支援增強的排序規則。

使用N作為字首表示你上面語句中的name的資料型別是Unicode字串型別;
例如N'sdaf' 是Unicode常量,而'sdaf'是字元竄常量;對於字元資料,儲存Unicode資料時每個字元使用2個位元組,而不是每個字元1個位元組。