SQL數據類型

SQL數據類型是指定任何對象的數據類型的屬性。 每列,變數和運算式在SQL中都有相關的數據類型。 在創建表時可以使用這些數據類型。 也可以根據需要為表的列(字段)選擇合適的數據類型。在資料庫中,表的每列都具有特定的數據類型。 數據類型指定列(字段)可以容納的數據類型,例如字串,數值和日期時間值。

SQL Server為例,它提供了六種類型的數據類型,如下所示 -

精確的數字數據類型

數據類型 開始值 結束值
bigint -9,223,372,036,854,775,808 9,223,372,036,854,775,807
int -2,147,483,648 2,147,483,647
smallint -32,768 32,767
tinyint 0 255
bit 0 1
decimal -10^38 +1 10^38 -1
numeric -10^38 +1 10^38 -1
money -922,337,203,685,477.5808 +922,337,203,685,477.5807
smallmoney -214,748.3648 +214,748.3647

近似數字數據類型

數據類型 開始值 結束值
float -1.79E + 308 1.79E + 308
real -3.40E + 38 3.40E + 38

日期和時間數據類型

數據類型 開始值 結束值
datetime -1.79E + 308 1.79E + 308
smalldatetime Jan 1, 1900 Jun 6, 2079
date 存儲日期,如1991年6月30日  
time 存儲時間。如,下午12:30  

注意 - 這裏,datetime的精度為3.33毫秒,而smalldatetime的精度為1分鐘。

字串數據類型

序號 數據類型 描述
1 char 最大長度為8,000個字元,非Unicode字元固定長度。
2 varchar 最多8,000個字元,非Unicode數據可變長度。
3 varchar(max) 最大長度為2E + 31個字元,可變長度非Unicode數據(僅限SQL Server 2005)。
4 text Unicode數據的可變長度,最大長度為2,147,483,647個字元。

Unicode字串數據類型

序號 類型 描述
1 nchar 最大長度為4,000個字元,Unicode字元固定長度。
2 nvarchar 最大長度為4,000個字元,Unicode字元可變長度。
3 nvarchar(max) 最大長度為2E + 31個字元(僅限SQL Server 2005),Unicode字元可變長度。
4 ntext 最大長度為1,073,741,823個字元,可變長度。

二進位數據類型

序號 類型 描述
1 binary 最大長度為8,000位元組,固定長度的二進位數據。
2 varbinary 最大長度為8,000位元組,可變長度二進位數據。
3 varbinary(max) 最大長度為2E + 31個位元組(僅限SQL Server 2005),可變長度二進位數據。
4 image 最大長度為2,147,483,647位元組,可變長度二進位數據)

其他數據類型

序號 類型 描述
1 sql_variant 存儲各種SQL Server支持的數據類型的值,textntexttimestamp類型除外。
2 timestamp 存儲資料庫範圍的唯一編號,每次更新行時都會更新該編號。
3 uniqueidentifier 存儲全局唯一識別字(GUID)
4 xml 存儲XML數據,可以將xml實例存儲在列或變數中(僅限SQL Server 2005)。
5 cursor 引用游標對象
6 table 存儲結果集以供以後處理

上一篇: SQL語法 下一篇: SQL運算符