2010年5月1日 星期六

MS SQL資料型別

MS SQL資料型別

from http://www.wretch.cc/blog/aquarius76/23282919
MS SQL資料型別
整數
資料型別 說明
INT 長度為 4 個 bytes;介於 -2,147,483,648 與 2,147,483,647 間的整數
SMALLINT 長度為 2 個 bytes;介於 -32,768 與 32,767 間的整數
TINYINT 長度為 1 個 bytes;介於 0 與 255 間的整數
BIGINT 長度為 8 個 bytes;介於 -2^63 與 2^63-1 間的整數
BIT 只佔用一個位元,且不允許存放 NULL 值


精確位數
資料型別 說明
DECIMAL[(p[,s])] 使用 2 到 17 個 bytes 來儲存資料,可儲存的值介於 -1038-1 與 1038-1 之間;p 用來定義小數點兩邊可以被儲存的位數總數目,而 s 代表小數點右邊的有效位數(s <>
NUMERIC[(p[,s])] 與 DECIMAL[(p[,s])] 同


近似浮點數值
資料型別 說明
FLOAT[(n)] n 是儲存 float 數字的小數位數,介於 1 與 53 間;若 n 介於 1 與 24 間,儲存大小為 4 個 bytes,有效位數為 7 位數;若 n 介於 25 與 53 間,儲存大小為 8 個 bytes,有效位數為 15 位數
REAL 長度為 4 個 bytes;介於 -3.4E-38 與 3.4E+38 間的浮點數;與 FLOAT(24) 相同


日期時間
資料型別 說明
DATETIME 長度為 8 個 bytes;介於 1/1/1753 與 12/31/9999 間的日期時間
SMALLDATETIME 長度為 4 個 bytes;介於 1/1/1900 與 6/6/2079間的日期時間


字串
資料型別 說明
CHAR[(n)] 固定長度為 n 的字元型態,n 必須介於 1 與 8000 之間
VARCHAR[(n)] 與 CHAR 相同,只是若輸入的資料小於 n,資料庫不會自動補空格,因此為變動長度之字串
TEXT 用來儲存大量的(可高達兩億個位元組)字元資料,儲存空間以 8k 為單位動態增加


Unicode 字串
資料型別 說明
NCHAR 與 CHAR 相同,只是每一個字元為兩個 bytes 的 unicode,且 n 最大為 4000
NVARCHAR 與 VARCHAR 相同,只是每一個字元為兩個 bytes 的 unicode,且 n 最大為 4000
NTEXT 和 TEXT 雷同,只是儲存的是 Unicode 資料


二元碼字串
資料型別 說明
BINARY[(n)] 固定長度為 n+4 個 bytes; n 為 1 到 8000 的值,輸入的值必需符合兩個條件:(1) 每一個值皆為 0-9、a-f 的值;(2)每一個值的前面必須有 0X
VARBINARY[(n)] 與 BINARY 相同,只是若輸入的資料小於 n,資料庫不會自動補 0,因此長度為變動的
IMAGE 和 TEXT 雷同,只是儲存的是影像資料


貨幣
資料型別 說明
MONEY 長度為 8 個 bytes 的整數,小數點的精確度取四位
SMALLMONEY 長度為 4 個 bytes 的整數,小數點的精確度取四位


標記
資料型別 說明
TIMESTAMP 8 bytes 的 16 進位值
UNIQUEIDENTIFIER 16 bytes 的 16 進位值


其他
資料型別 說明
SQL_VARIANT 此資料型別可儲存 text、ntext、timestamp 與 sql_variant 以外的各種 SQL Server 支援的資料型別。
CURSOR 查詢結果的資料集 (註:2005)
TABLE 表格型式的資料 (註:2005)