Sql Server 自定義數據類型


SQLServer 提供了 25 種基本數據類型:

  ·Binary [(n)]  二進制數據 既可以是固定長度的(Binary),也可以是變長度的。其中,n 的取值范圍是從 1 到 8000。其存儲窨的大小是 n + 4 個字節。

  ·Varbinary [(n)] 二進制數據 n 位變長度的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲窨的大小是 n + 4 個字節。

  ·Char [(n)] 字符數據類型(任何字母、符號和數字任意組合而成的數據) 定長字符數據,其長度最多為 8KB

  ·Varchar[(n)]  變長字符數據 長度最多為 8KB

  ·Nchar[(n)]  Unicode 數據類型(列可以存儲多個字符集中的字符) 列長度固定不變 最多可以存儲4000 個字符

  ·Nvarchar[(n)]  Unicode 數據類型 列長度變化 最多可以存儲4000 個字符

  ·Datetime 日期和時間數據類型 所存儲的日期范圍是從 1753 年 1 月 1 日開始,到9999 年12 月 31 日結束(每一個值要求 8 個存儲字節)。精確到三百分之一秒或3.33毫秒

  ·Smalldatetime 日期和時間數據類型 1900年 1 月 1日 開始,到 2079 年 12 月 31 日結束(每一個值要求 4 個存儲字節)。精確到一分鍾

  ·Decimal[(p[,s])] 17 個字節 容納從 1028 - 1到 - 1028 - 1. 的值的精確的數字數據類型。你可以定義精度 (1 - 28) 和 符號 (0 - 定義精度)。缺省精度和符號分別是18和0

  ·Numeric[(p[,s])] 數據類型與decimal 型相同

  ·Float[(n)]  浮點數 可以是從-1.79E+308到1.79E+308 之間的任意數

  ·Real 近似數值類型。它可以表示數值在-3.40E+38到3.40E+38之間的浮點數

  ·Int 數據類型存儲數據的范圍是從 -2 147 483 648 到 2 147 483 647(每一個值要求4個字節存儲空間)。

  ·Smallint 存儲數據的范圍從 -32 768 到 32 767(每一個值要求2個字節存儲空間)。

  ·Tinyint 存儲數據的范圍是從0 到255(每一個值要求1個字節存儲空間)。

  ·Money 貨幣數據表示正的或者負的貨幣數量 Money數據類型要求 8 個存儲字節 存儲從-9220億到9220 億之間的數據,精確到貨幣單位的萬分之一

  ·Smallmoney 貨幣數據表示正的或者負的貨幣數量 Smallmoney 數據類型要求 4 個存儲字節。能存儲從-214748.3648 到214748.3647 之間的數據,精確到貨幣單位的萬分之一

  ·Bit 由 1 或者 0 組成。當表示真或者假、ON 或者 OFF 時,使用 Bit 數據類型

  ·Cursor 特殊的數據類型,它包含一個對游標的引用。這種數據類型用在存儲過程中,而且創建表時不能用

  ·Sysname 系統提供的用戶定義數據類型,功能上相當於 nvarchar(128),用於引用數據庫對象名稱。

  ·Timestamp 用於表示SQL Server 活動的先后順序,以二進投影的格式表示。Timestamp 數據與插入數據或者日期和時間沒有關系

  ·Uniqueidentifier 由 16 字節的十六進制數字組成,表示一個全局唯一的。當表的記錄行要求唯一時,GUID是非常有用

  ·Text  用來存儲大量的非統一編碼型字符數據。這種數據類型最多可以有231-1或20億個字符 

     ·Image 二進制數據 存儲的數據是以位字符串存儲的,不是由 SQL Server 解釋的,必須由應用程序來解釋。例如,應用程序可以使用BMP、TIEF、GIF 和 JPEG 格式把數據存儲在 Image 數據類型中。

  ·Ntext Unicode 數據類型 該列可以存儲多於 4000 個字符

用戶定義的數據類型

  用戶定義的數據類型基於在 Microsoft SQL Server 中提供的數據類型。當幾個表中必須存儲同一種數據類型時,並且為保證這些列有相同的數據類型、長度和可空性時,可以使用用戶定義的數據類型。

--建自定義數據類型
--Exec sp_addtype ssn,'Varchar(11)','Not Null'
--刪除自定義數據類型
--Exec sp_droptype 'ssn'
--查看用戶自定義數據類型
--select * from systypes where xtype<>xusertype;(sql server 2000)
--select * from sys.types where is_user_defined=1

  

 


免責聲明!

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



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