Char Varchar和Nvarchar的區別

2021-10-21 13:29:27 字數 652 閱讀 3167

char和varchar這兩種型別是我們經常使用的資料型別,但是在使用的過程中也沒有特別的去注意他們有什麼樣的區別,nvarchar相對與char和varchar就不是很常用。通過一次技術的分享和在網際網路上查詢一些知識,讓我對這些數值型別有了深刻的認識。

char:是計算機程式語言中只可容納單個字元的一種基本資料型別,長度是固定的。

varchar:是一種比char更加靈活的資料型別,同樣用於表示字元資料,但是varchar可以儲存可變長度的字串。

nvarcahr:處理的是unicode的資料型別,所有的字元使用兩個自己表示。nvarchar處理的資料的長度也是可變的。

一、型別

char和varchar是非unicode可變長度型別,nvarchar是unicode編碼可變長度型別。

二、長度

char和varchar的最大值是8000,而nvarchar的最大值是4000。char的儲存位元組數是一開始定義的長度,varchar儲存的位元組數就是它本身的長度,而nvarchar儲存的位元組數是它本身長度的2倍。

三、效能

char的索引效率高,varchar和nvarchar的檢索效率相對char來說就不是很高。但是varchar空間分配比較靈活。

四、空間

varchar要比char和nvarchar更加節省空間。

char varchar和nvarchar的區別

1.char 適用於長度固定,一般不含中文的情況。char區分中英文,英文佔1個位元組,中文佔2個位元組。比如 char 20 你只能插入20個字母或者10個漢字。即使你插入abc,不足20個位元組,資料庫也會在abc後自動插入17個空格補足20個位元組 2.varchar 適用於長度不固定,一般不...

char varchar和varchar2的區別

1 char的長度是固定的,而varchar2的長度是可以變化的,比如,儲存字串 abc 對於char 20 表示你儲存的字元將佔20個位元組 包括17個空字元 而同樣的varchar2 20 則只占用3個位元組的長度,20只是最大值,當你儲存的字元小於20時,按實際長度儲存。2 char的效率比v...

char varchar和varchar2的比較

在mysql 中char 和 varchar 都是儲存字串的,區別在於char有固定的長度,而varchar屬於可變長的字元型別。目前varchar和varchar2是同義詞,工業標準的varchar型別可以儲存空字串,但是oracle不這樣做,儘管它保留以後這樣做的權利。oracle自己開發了乙個...