SQL Server 2005數據類型

1. 字符串數據類型


char

此數據類型可存儲1~8000個定長字符串,字符串長度在創建時指定;如未指定,默認爲char(1)。每個字符佔用1byte存儲空間。


nchar

此數據類型可存儲1~4000個定長Unicode字符串,字符串長度在創建時指定;如未指定,默認爲nchar(1)。每個字符佔用2bytes存儲空間。


varchar

此數據類型可存儲最大值爲8000個字符的可變長字符串。可變長字符串的最大長度在創建時指定,如varchar(50),每個字符佔用1byte存儲空間。


nvarchar

此數據類型可存儲最大值爲4000個字符可變長Unicode字符串。可變長Unicode字符串的最大長度在創建時指定,如nvarchar(50),每個字符佔用2bytes存儲空間。


text

此數據類型可存儲最大值爲2147483647個字符的變長文本,並且無需指定其初始值,每個字符佔用1byte存儲空間,一般用來存儲大段的文章。text數據類型實際上是一個Large Object數據類型,默認情況下,此類型的數據不是存儲在數據行內,而是存儲於獨立的Large Object數據頁上。另外,text數據類型不能做爲函數、存儲過程或觸發器中的參數來用。


ntext

同text數據類型,只不過存儲的是最大值爲1073741823個字符的Unicode變長文本,每個字符佔用1byte存儲空間。

說明:無論使用哪種字符串數據類型,字符串值必須放在引號內,推薦使用單引號。


2. 數值數據類型


bit

此數據類型存儲值爲0或1的二進制字段。佔用1byte存儲空間。


tinyint

此數據類型存儲0~255的整數,佔用1byte存儲空間。


smallint

此數據類型存儲-32768~32767的整數,佔用2bytes存儲空間。


int

此數據類型存儲-2147483648~2147483647的整數,佔用4bytes存儲空間。


bigint

此數據類型存儲-9223372036854775808~9223372036854775807的整數,佔用8bytes存儲空間。


decimal/numeric

這兩個數據類型功能相同,均爲存儲精度可變的浮點值。但推薦採用decimal,因其存儲的數據“更有說明性”。此種數據類型由兩個值來確定decimal(p,s),p爲精度,s爲標量,如decimal(3,2),其中數值2爲小數的位數,那麼decimal(3,2)可用來存儲如1.28這樣的浮點數。此種數據類型佔用的存儲空間取決於精度值p。p爲1~9,佔用5bytes存儲空間;p爲10~19,佔用9bytes存儲空間;p爲20~28,佔用13bytes存儲空間;p爲29~38,佔用17bytes存儲空間。


float

此數據類型存儲1~53的可變精度的浮點值,精度表示爲float(n),n表示科學記數法的尾數,取值範圍爲-1.79E+308~-2.23E-308的負數和2.23E-308~1.79E+308的正數。其存儲空間由精度值決定,n爲1~24,佔用4bytes存儲空間;n爲25~53,佔用8bytes存儲空間。


real

此數據類型存儲-3.40E+38~-1.18E-38的負數和1.18E~3.40E+38的正數。佔用4bytes存儲空間。


smallmoney

此數據類型存儲-214748.3648~214748.3647的貨幣值,精確到小數後4位。佔用4bytes存儲空間。


money

此數據類型存儲-922337203685477.5808~922337203685477.5807的貨幣值,精確到小數後4位。佔用8bytes存儲空間。


3. 日期和時間數據類型


smalldatetime

此數據類型存儲從1900年1月1日到2079年6月6日的日期。佔用4btyes存儲空間。


datetime

此數據類型存儲從1753年1月1日到9999年12月31日的日期。佔用8bytes存儲空間。


4. 二進制數據類型


binary

此數據類型存儲1~8000個字符的二進制數據,其指定長度即爲佔用的存儲空間。


varbinary

此數據類型存儲可變長的二進制數據,可在創建時指定其具體長度,也可不指定。


5. 其它數據類型


rowversion/timestamp

這兩種數據類型功能一樣,但Microsoft建議在任何情況下儘可能地指明rowversion而不是timestamp,因爲rowversion更加準確地反應了數據類型的真實性質。timestamp數據類型跟時間完全無關(和SQL-92中的Timestamp完全不一樣),它表明數據庫中的數據修改發生的相對順序。不要在鍵(尤其是主鍵)中使用timestamp列,因爲每次修改行時,timestamp值都會更改。當指定數據類型爲rowversion或timestamp,那麼SQL Server會在對錶的插入或刪除等更新操作時自動生成一個新值,並把這個新值放在合適的字段裏。此類型數據佔用8bytes存儲空間


uniqueidentifier

此類型數據存儲二進制值,其作用與全局唯一標識符(GUID)一樣。GUID 主要用於在有多個節點、多臺計算機的網絡中,分配必須具有唯一性的標識符。佔用16bytes存儲空間。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章