數據類型名稱 | 類 別 |
長度(以字
節爲單位)
|
數 據 特 點 |
Bit
|
整型
|
1
|
該大小容易產生誤導。表中的第1個
Bit數據類型佔1個字節。其餘7個位也
用作Bit數據類型。允許null值以使其佔
用一個額外字節
|
Bigint
|
整型
|
8
|
可處理日常用到的越來越大的數,其取
值範圍爲–263 ~ 263–1的整數
|
Int
|
整型
|
4
|
取值範圍爲–2147483648 ~ 2147483647的整數
|
SmallInt
|
整型
|
2
|
取值範圍爲–32 768 ~ 32 767的整數
|
TinyInt
|
整型
|
1
|
取值範圍爲0~255的整數
|
Decimal/Numeric
|
十進制/數字型
|
可變
|
固定精度,取值範圍爲–1038–1 ~ 1038–1。
兩者含義相同
|
Money
|
貨幣
|
8
|
貨幣單位,取值範圍爲–263 ~ 263,精確
到4個小數位。注意貨幣單位可以是任
意貨幣,不限於美元
|
SmallMoney
|
貨幣
|
4
|
貨幣單位,取值範圍爲–214 748.364 8 ~
+214 748.364 7
|
Float (ANSI
的Real)
|
近似小數
|
可變
|
接受一個1~53的參數(如Float(20))來
決定其大小與精度。注意參數值表示位數,
不是字節數。 取值範圍爲
–1.79E + 308 ~ 1.79E + 308
|
DateTime
|
日期/時間
|
8
|
日期與時間數據,取值範圍爲1753年1
月1日~ 9999年12月31日,精確到0.03秒
|
DateTime2
|
日期/時間
|
可變(6~8)
|
新擴展的DateTime典型數據類型。支持更
大的日期範圍和更高的時間部分精度(精
確到100納秒)。與DataTime一樣,它不包
含時區信息,但與.NET DateTime
數據類型相對應
|
SmallDateTime
|
日期/時間
|
4
|
日期與時間,取值範圍爲1900年1月1日
~2079年6月6日,精確到分鐘
|
DateTimeOffset
|
日期/時間
|
可變
(8~10)
|
類似於DateTime數據類型,但有一個相對
於U-TC時間的–14:00~+14:00的偏移量。
時間在內部存儲爲UTC時間,任何比較、
排序或索引都將基於該統一的時區
|
Date
|
日期/時間
|
3
|
只存儲Gregorian日曆定義的0001年1月1日
~9999年12月31日的日期數據。採取ANSI
標準日期格式(YYYY-MM-DD),但會從
其他一些格式隱式轉換
|
Time
|
日期/時間
|
可變(3~5)
|
只存儲用戶可選精度爲100納秒(默認)的時間數據
|
Cursor
|
特殊數字
|
1
|
指向遊標的指針,只佔用一個字節。記住組
成實際遊標的結果集也佔用內存,佔用內存
的大小取決於結果集
|
Timestamp/
rowversion |
特殊數字
(二進制)
|
8
|
給定數據庫中的唯一特殊值。即使UPDATE
語句沒有引用timestamp列(時間標記),其
值在插入或更新記錄時也會由數據庫自動
設置(不允許直接更新timestamp字段)
|
數據類型名稱 |
類 別 |
長度(以字 節爲單位) |
數 據 特 點 |
|
||||
|
UniqueIdentifier |
特殊數字 (二進制) |
16 |
特殊的全局唯一標識符(GUID),必須 保證其在內存空間和時間內的唯一性 |
||||
|
Char |
字符 |
可變 |
定長字符數據。比設定長度短時使用空 格填充,爲非Unicode數據,指定的最大長 度爲8000字符 |
||||
|
VarChar |
字符 |
可變 |
長度可變的字符數據。比設定長度短時不 使用空格填充,爲非Unicode數據。允許最大 長度爲8000字符,但可以使用max關鍵字表 示其長度可足夠大(數 據長度可達231字節) |
||||
|
Text |
字符 |
可變 |
從SQL Server 2005開始向後兼容支持該 類型。可使用varchar(max)代替 |
||||
|
NChar |
Unicode |
可變 |
定長Unicode字符數據。比設定長度短 時使用空格填充。指定的最大長度爲4000字符 |
||||
|
NVarChar |
Unicode |
可變 |
可變長度的Unicode字符數據。比設定長 度短時不使用空格填充。允許最大長度爲 4000字符,但可以使用max關鍵字表示 其長度可足夠大(數據長度可達231字節) |
||||
|
Ntext |
Unicode |
可變 |
可變長度的Unicode字符數據。類似 Text數據類型,僅用作向後兼容。可使 用nvarchar(max)代替 |
||||
|
Binary |
二進制 |
可變 |
定長二進制數據,最大長度爲8000字節 |
||||
|
VarBinary |
二進制 |
可變 |
可變長度二進制數據,最大特定長度爲 8 000字節,可使用max關鍵字使其作爲 BLOB(大對象)字段(數據長可達231字節) |
||||
|
Image |
二進制 |
可變 |
從SQL Server 2005開始向後兼容支持該 類型。可使用varbinary(max)代替 |
||||
|
Table |
其他 |
特殊 |
主要用於操作結果集,通常作爲用戶自定義 函數(UDF)的結果輸出或作爲存儲過程 的參數。在表的定義中不作爲可用的數 據類型(不可以嵌套表) |
||||
|
HierarchyID |
其他 |
特殊 |
維護層次結構定位信息的特殊數據 類型。提供特定於層次結構需要的特 殊功能。允許進行深度、父/子關係和索 引比較。實際大小隨層次結構中的節點 數和平均深度而變 |
||||
|
Sql_variant |
其他 |
特殊 |
與VB和C++中的變量基本無關。其實質 是用於保存大多數其他SQLServer數據 類型的容器。當列或函數需要處理多 種數據類型時可使用這種數據類型。 與VB不同的是,使用這種數據類型要 將其顯式轉換爲更具體的數據類型 |
||||
|
XML |
字符 |
可變 |
定義一個字符字段用作XML數據。用 於針對XML模式的數據驗證和使用特 殊的面向XML的函數 |
||||
|
CLR |
其他 |
可變 |
隨CLR對象的特性而變,CLR對象支持 基於自定義數據類型的CLR。隨 SQL Server 2012附帶的空間數 據類型GEOMETRY和GEOGRAPHY 實現爲CLR類型 |
(續)
數據類型名稱
|
類 別
|
長度(以字
節爲單位)
|
數 據 特 點
|
UniqueIdentifier
|
特殊數字
(二進制)
|
16
|
特殊的全局唯一標識符(GUID),必須保證
其在內存空間和時間內的唯一性
|
Char
|
字符
|
可變
|
定長字符數據。比設定長度短時使用空
格填充,爲非Unicode數據,指定的最大
長度爲8000字符
|
VarChar
|
字符
|
可變
|
長度可變的字符數據。比設定長度短時不
使用空格填充,爲非Unicode數據。允許最
大長度爲8000字符,但可以使用max關
鍵字表示其長度可足夠大(數據長度可達231字節)
|
Text
|
字符
|
可變
|
從SQL Server 2005開始向後兼容支持該
類型。可使用varchar(max)代替
|
NChar
|
Unicode
|
可變
|
定長Unicode字符數據。比設定長度短時使
用空格填充。指定的最大長度爲4000字符
|
NVarChar
|
Unicode
|
可變
|
可變長度的Unicode字符數據。比設定長度
短時不使用空格填充。允許最大長度爲4000
字符,但可以使用max關鍵字表示其長度
可足夠大(數據長度可達231字節)
|
Ntext
|
Unicode
|
可變
|
可變長度的Unicode字符數據。類似Text數
據類型,僅用作向後兼容。可使
用nvarchar(max)代替
|
Binary
|
二進制
|
可變
|
定長二進制數據,最大長度爲8000字節
|
VarBinary
|
二進制
|
可變
|
可變長度二進制數據,最大特定長度爲8000
字節,可使用max關鍵字使其作爲BLOB(大對
象)字段(數據長可達231字節)
|
Image
|
二進制
|
可變
|
從SQL Server 2005開始向後兼容支持該類型。
可使用varbinary(max)代替
|
Table
|
其他
|
特殊
|
主要用於操作結果集,通常作爲用戶自定義
函數(UDF)的結果輸出或作爲存儲過程的參數。
在表的定義中不作爲可用的數
據類型(不可以嵌套表)
|
HierarchyID
|
其他
|
特殊
|
維護層次結構定位信息的特殊數據類型。提
供特定於層次結構需要的特殊功能。允許進
行深度、父/子關係和索引比較。實際大小隨
層次結構中的節點數和平均深度而變
|
Sql_variant
|
其他
|
特殊
|
與VB和C++中的變量基本無關。其實質是
用於保存大多數其他SQL Server數據類型的
容器。當列或函數需要處理多種數據類型時可
使用這種數據類型。與VB不同的是,使用
這種數據類型要將其顯式轉換爲
更具體的數據類型
|
XML
|
字符
|
可變
|
定義一個字符字段用作XML數據。用於針對
XML模式的數據驗證和使用特殊的面向XML的函數
|
CLR
|
其他
|
可變
|
隨CLR對象的特性而變,CLR對象支持基於
自定義數據類型的CLR。隨SQL Server
2012附帶的空間數據類型GEOMETRY和
GEOGRAPHY實現爲CLR類型
|