2011年2月9日 星期三

SQL資料類型

  1. 數值類型
  2. 日期時間
  3. 字串類型

數值類型

數字類型 資料類型 位元組數
精確數值 tinyint(0~255) 1
smallint(-2^15~2^15-1) 2
int(-2^31~2^31-1) 4
bigint(-2^63~2^63-1) 8
近似數值 float[(n)]
-1.79E+308~-2.23E-308
0及2.23E-308~1.79E+308
n:科學記號標記法尾數的位元數目
n:1-24 佔4
n:25-53 佔8
real
-3.40E+38 ~ -1.18E-38
0及1.18E-38 ~ 3.40E+38
4
金融貨幣 money
-922,337,203,685,477.5808 ~
922,337,203,685,477.5807
8
smallmoney
-214,748.3648 ~
214,748.3647
4
其他數值 bit(1'0'NULL) 1

日期時間

日期時間資料類型 範圍與精準度 位元組數
datetime 1753:01:01 ~ 9999:12:31
精準度:0.00333秒
8
datetime2 0001-01-01 00:00:00.0000000 ~
9999-12-31 23:59:59.9999999
精準度:100奈秒
6到8
datetimeoffset 0001-01-01 00:00:00.0000000 ~
9999-12-31 23:59:59.9999999
(以UTC為單位)精準度:100奈秒
8到10
smalldatetime 1900:01:01 ~ 2079:06:06
精準度:1分鐘
4
date 1900:01:01 ~ 9999:12:31
精準度:1日
3
time 00:00:00.0000000 ~ 23:59:59.9999999
精準度:100奈秒
3到5

字串類型

字元字串類型 資料類型 位元組數
非UNICODE字元 char[(n)],固定長度1-8000 0-8000
varchar[(n)],可變長度1-8000 0-8000
varchar(max),可變儲存體 0-2GB
text,可變長度資料 0-2GB
UNICODE字元 nchar[(n)],固定長度1-4000 0-8000
nvarchar[(n)],可變長度1-4000 0-8000
nvarchar(max),可變儲存體 0-2GB
ntext,可變長度資料 0-2GB
使用UNICODE格式,每個字元都以16bit計算,包括英文,如果使用非UNICODE,如varchar(30),原本可存放30字元,但由於中文字必須耗掉2個byte空間,所以中文字只能存放15個字,這類情形。

沒有留言:

張貼留言