瓦查爾vs nvarchar
varchar和nvarchar之間的區別表明了數據在數據庫中的存儲方式。數據庫系統由數據組成,數據由數據類型定義。數據類型告訴列可以包含什麼類型的值。數據庫表中的每一列都必須具有名稱和數據類型。今天,在數據庫設計中有許多可用的數據類型。在這些數據類型中,varchar和nvarchar用於存儲字符串字符。Varchar和Nvarchar似乎可以互換。但這兩種類型有著不同的優點,它們的用途也不同。
什麼是瓦查爾(varchar)?
顧名思義,varchar是一個可變字符或可變字符。varchar的語法是varchar[(n | max)]。Varchar存儲的ASCII數據是非Unicode數據,它是正常使用中使用的數據類型。Varchar每個字符使用一個字節。它還將每個字符串的長度存儲在數據庫中。Varchar的數據長度可變,最多可以存儲8000個非Unicode字符。這種數據類型非常靈活,可以接受大多數不同類型的數據。Varchar不允許為字符串的未使用部分存儲空白字符。varchar的最大存儲大小是2GB,數據的實際存儲大小是數據的實際長度加上兩個字節。儘管varchar比char慢,但它使用動態內存分配。不僅字符串,而且非字符串類型,如日期類型,“2月14日”、“12/11/2014”也可以存儲在varchar數據類型中。
什麼是女巫(nvarchar)?
Nvarchar表示一個國家的變化字符或國家變化字符。nvarchar的語法是nvarchar[(n | max)]。Nvarchar可以存儲不同長度的不同類型的數據。它們是Unicode數據和多語言數據,以及中文中具有雙字節字符的語言。Nvarchar每個字符使用2個字節,它最多可以存儲4000個字符,最大長度為2GB。Nvarchar將“”視為空字符串,長度為零。存儲大小是字符大小的兩倍加上兩個字節。在nvarchar中,當存儲和接收值時,尾隨空格不會被刪除。
瓦查爾(varchar)和女巫(nvarchar)的區別
varchar和nvarchar之間的關鍵區別表明了數據在數據庫中的存儲方式。
•Varchar存儲ASCII值,nvarchar存儲Unicode字符。
•Varchar每個字符使用一個字節,而nvarchar每個字符使用兩個字節。
•Varchar[(n)]存儲可變長度的非Unicode字符,Nvarchar[(n)]存儲可變長度的Unicode字符。
•Varchar最多可存儲8000個非Unicode字符,nvarchar最多可存儲4000個Unicode或非Unicode字符。
•Varchar最好用於非Unicode字符變量所在的位置。Nvarchar用於帶有Unicode字符的變量所在的位置。
•varchar的存儲大小是字節數等於字符數加上為偏移量保留的兩個字節。Nvarchar使用的字節數等於字符數的兩倍加上為偏移量保留的兩個字節。
•所有現代操作系統和開發平臺都在內部使用Unicode。因此,為了避免數據類型的轉換,nvarchar被大量使用而不是varchar。
小結:
Nvarchar vs Varchar
Varchar和nvarchar是可變長度的數據類型,我們使用它們來存儲不同類型的字符串。這些數據類型在現代操作系統中非常有用。這些不同的數據類型避免了根據操作系統從一種類型到另一種類型的數據轉換。因此,varchar和nvarchar可以幫助程序員輕鬆識別Unicode和非Unicode字符串。這兩種數據類型在編程中非常有用。
- Caius Durling的Varchar(抄送2.0)