SQL Server數據類型的種類與應用
以下的文章主要描述的是SQL Server數據類型,其中包括二進制數據類型,邏輯數據類型,以及字符數據類型,這些SQL Server數據類型的介紹,望大家在瀏覽之后會對其有更深的了解。
二進制數據類型
1、BINARY
BINARY 數據類型用于存儲二進制數據。其定義形式為BINARY( n), n 表示數據的長度,取值為1 到8000 。在使用時必須指定BINARY 類型數據的大小,至少應為1 個字節。BINARY 類型數據占用n+4 個字節的存儲空間。在輸入數據時必須在數據前加上字符“0X” 作為二進制標識,如:要輸入“abc ”則應輸入“0xabc ”。若輸入的數據過長將會截掉其超出部分。若輸入的數據位數為奇數,則會在起始符號“0X ”后添加一個0,如上述的“0xabc ”會被系統自動變為“0x0abc”。
2、VARBINARY
VARBINARY 數據類型的定義形式為VARBINARY(n)。 它與BINARY 類型相似,n 的取值也為1 到8000,若輸入的數據過長,將會截掉其超出部分。不同的是VARBINARY數據類型具有變動長度的特性, 因為VARBINARY數據類型的存儲長度 為實際數值長度+4個字節。當BINARY數據類型允許NULL 值時,將被視為VARBINARY數據類型。
一般情況下,由于BINARY 數據類型長度固定,因此它比VARBINARY 類型的處理速度快。
邏輯數據類型
BIT: BIT數據類型占用1 個字節的存儲空間,其值為0 或1 。如果輸入0 或1 以外的值,將被視為1。 BIT 類型不能定義為NULL 值(所謂NULL 值是指空值或無意義的值)。
字符數據類型
字符數據類型是使用最多的SQL Server數據類型。它可以用來存儲各種字母、數字符號、特殊符號。一般情況下,使用字符類型 數據時須在其前后加上單引號’或雙引號” 。
1 CHAR
CHAR 數據類型的定義形式為CHAR[ (n) 。 以CHAR 類型存儲的每個字符和符號占一個字節的存儲空間。n 表示所有字符所占的存儲空間,n 的取值為1 到8000, 即可容納8000 個ANSI 字符。若不指定n 值,則系統默認值為1。若輸入數據的字符數小于n,則系統自動在其后添加空格來填滿設定好的空間。若輸入的數 據過長,將會截掉其超出部分。
2、NCHAR
NCHAR 數據類型的定義形式為NCHAR[ (n)]。 它與CHAR 類型相似。不同的是NCHAR數據類型n 的取值為1 到4000。 因為NCHAR 類型采用UNICODE 標準字符集(CharacterSet)。 UNICODE 標準規定每個字符占用兩個字節的存儲空間,所以它比非UNICODE 標準的SQL Server數據類型多占用一倍的存儲空間。使用UNICODE 標準的好處是因其使用兩個字節做存儲單位,其一個存儲單位的容納量就大大增加了,可以將全世界的語言文字都囊 括在內,在一個數據列中就可以同時出現中文、 英文、法文、德文等,而不會出現編碼沖突。
3、VARCHAR
VARCHAR數據類型的定義形式為VARCHARn)。 它與CHAR 類型相似,n 的取值也為1 到8000,若輸入的數據過長,將會截掉其超出部分。不同的是,VARCHAR數據類型具有變動長度的特性, 因為VARCHAR數據類型的存儲長度為實際 數值長度,若輸入數據的字符數小于n ,則系統不會在其后添加空格來填滿設定好的空間。
一般情況下,由于SQL Server數據類型長度固定,因此它比VARCHAR 類型的處理速度快。
4、NVARCHAR
NVARCHAR數據類型的定義形式為NVARCHAR[ (n) ]。 它與VARCHAR 類型相似。不同的是,NVARCHAR數據類型采用UNICODE 標準字符集(Character Set), n 的取值為1 到4000。
【編輯推薦】