人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動態(tài)

Sqlserver中char,nchar,varchar與Nvarchar的區(qū)別分析

發(fā)布日期:2022-01-25 17:54 | 文章來源:源碼之家
1. char類型: 對英文(ASCII)字符占用1個字節(jié),對一個漢字占用2個字節(jié),CHAR存儲定長數(shù)據很方便,CHAR字段上的索引效率極高,比如定義char(10),那么不論你存儲的數(shù)據是否達  到了10個字節(jié),都要占去10個字節(jié)的空間。因為是固定長度,所以速度效率高。比如定義char(10),那么不論你存儲的數(shù)據是否達到了10個字節(jié),都要占去10個字節(jié)的空間。因為是固定長度,所以速度效率高。 2. VARCHAR存儲變長數(shù)據

如果一個字段可能的值是不固定長度的,我們只知道它不可能超過10個字符,把它定義為 VARCHAR(10)是最合算的。VARCHAR類型的實際長度是它的值的實際長度+1。為什么“+1”呢?這一個字節(jié)用于保存實際使用了多大的長度。
   Varchar類型:Varchar 的類型不以空格填滿,而Char則會填充滿為止,如varchar(100),但它的值只是"qian",所以它在數(shù)據庫中存的值就是"qian",而char 不一樣,如char(100),它的  值是"qian",而實際上它在數(shù)據庫中是"qian "(qian后共有96個空格,就是把它填滿為100個字節(jié))。
注:由于char是以固定長度的,所以它的速度會比varchar快得多!但程序處理起來要麻煩一點,要用trim之類的函數(shù)把兩邊的空格去掉!
3. Nchar類型和Nvarchar類型是怎么一回事呢? 為了與其他多種字符的轉換,如中文,音標等,對每個英文(ASCII)字符都占用2個字節(jié),對一個漢字也占用兩個字節(jié),所有的字符都占用2個字節(jié)。   varchar(n):變長型字符數(shù)據類型,存儲最長長度為8,000 個字符
  nvarchar(n):可變長度 Unicode 數(shù)據,其最大長度為 4,000 字符.字節(jié)的存儲大小是所輸入字符個數(shù)的兩倍,就是說它是雙字節(jié)來存儲數(shù)據的。如果存儲數(shù)據如果存在單字節(jié)時,它也是以雙字節(jié)來占用存儲空間的。   varchar一般適用于英文和數(shù)字,Nvarchar適用中文和其他字符,其中N表示Unicode常量,可以解決多語言字符集之間的轉換問題。 以下是補充:

對于程序中的一般字符串類型的字段,SQL Server中有char、varchar、nchar、nvarchar四種類型來對應,那么這四種類型有什么區(qū)別呢,這里做一下對比。

1.定長或變長

所謂定長就是長度固定,當要保存的數(shù)據長度不夠時將自動在其后面填充英文空格,使長度達到相應的長度;有var前綴的,表示是實際存儲空間是動態(tài)變化的,比如varchar,nvarchar變長字符數(shù)據則不會以空格填充。

2.Unicode或非Unicode

數(shù)據庫中,英文字符只需要一個字節(jié)存儲就足夠了,但漢字和其他眾多非英文字符,則需要兩個字節(jié)存儲。如果英文與漢字同時存在,由于占用空間數(shù)不同,容易造成混亂,導致讀取出來的字符串是亂碼。Unicode字符集就是為了解決字符集這種不兼容的問題而產生的,它所有的字符都用兩個字節(jié)表示,即英文字符也是用兩個字節(jié)表示。而前綴n就表示Unicode字符,比如nchar,nvarchar,這兩種類型使用了Unicode字符集。

3.幾種數(shù)據類型的存儲的最大容量

char,varchar 最多8000個英文,4000個漢字

nchar,nvarchar 最多可存儲4000個字符,無論英文還是漢字

版權聲明:本站文章來源標注為YINGSOO的內容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內容來源于網友推薦、互聯(lián)網收集整理而來,僅供學習參考,不代表本站立場,如有內容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務

7x24全年不間斷在線

專屬顧問服務

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務熱線

關注
微信

關注官方微信
頂部