SQL Server 常見數據類型介紹


數據表是由多個列組成,創建表時必須明確每個列的數據類型,以下列舉 SQL Server 常見數據類型的使用規則,方便查閱。

整數類型

int

 存儲范圍是-2,147,483,648到2,147,483,647之間的整數,主鍵列常設置此類型。

(每個數值占用 4字節)

smallint

 存儲范圍是-32,768 到 32,767 之間的整數,用來存儲限定在特定數值范圍內的數據。

(每個數值占用 2 字節)

tinyint

 存儲范圍是0到255 之間的整數,用來存儲有限數目的數值。

(每個數值占用 1 字節)

bigint

 存儲范圍是-9,223,372,036,854,775,808到 9,223,372,036,854,775,807之間的整數。

(每個數值占用 8 字節)

bit

 值只能是0或1,當輸入0以外的其他值時,系統均把它們當1看待。常用來表示真假、男女等二值選擇。

 

數值類型

decimal(p,s)

 p 為精度(有效位),表示可儲存數值的最大位數,小數點左右兩側都包括在內,默認最大位為38 位;s為小數位數,標識小數點后  面所能儲存的最大位數,默認最小位為0位。如:123.45,則 p=5,s=2(內存大小取決於精度p)

numeric(p,s)

 numeric 和 decimal 是功能相同的,同是用來保存精度可變的浮點型數據。

float

 浮點型,它是一種近似數值類型,float(n)可儲存1-53的可變精度浮點數值。

(內存大小取決於精度n)

money

 貨幣型,能存儲從-9220 億到 9220 億之間的數據,精確到小數點后四位。

(每個數值占用 8 字節)

 

日期時間

datetime

 儲存有效日期范圍是1753/1/1~9999/12/31,可精准到3.33毫秒。(每個數值占用 8 字節)

smalldatetime

 儲存有效日期范圍是1900/1/1~2079/6/6,精確到分鍾。(每個數值占用 4 字節)

 

二進制類型

image

 雖然類型名為image, 但是並不意味着只能保存圖片二進制數據,實際上它可以保存任何二進制數據。

 

字符串類型

char(m)

 固定長度字符串,長度為 m。

nchar(m)

 國際化固定長度字符串,長度為 m。

varchar(m)

 可變長度字符串,最大長度為m,且必須是一個介於 1 和 8,000 之間的數值。

nvarchar(m)

 國際化可變長度字符串,最大長度為m, 且必須是一個介於 1 和 4,000 之間的數值。

text

 可變長度字符串,最大長度為 231 - 1個字節。

ntext

 國際化可變長度字符串,最大長度為 230 - 1個字符。

  國際化就是通用與標准。char、varchar、text儲存的字符是基於ASCII編碼格式,對於其他編碼格式的字符可能會造成存儲問題。Unicode字符集(萬國碼)就是為了解決字符集這種不兼容的問題而產生的,它所有的字符都用兩個字節表示,即英文字符也是用兩個字節表示。nchar、 nvarchar、ntext存儲的正是Unicode編碼格式的字符。所以一般來說,如果含有中文字符,用nchar、nvarchar、ntext, 如果只含英文字符,就用char、varchar、text。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM