T-SQL語句之SQLSERVER中的系統資料類型

來源:互聯網
上載者:User
1> 位元據類型
位元據類型使一些用十六進位表示的資料。位元據類型包括三種:binary,varbinary和image。
binary[(n)]:固定長度的n個位元組位元據,最大長度可達8KB。
Varbinary[(n)]:n個位元組可變長位元據,其最大長度不得超過8KB。
Image:可用於儲存位元組數超過8KB的資料,如Microsoft Word文檔、Microsoft Excel圖表以及映像資料等,其最大長度為231-1個位元組。
2> 整數資料類型
整數資料類型有五種:bit,int,bigint,smallint,tinyint。
bit:bit型資料的值只能為0或1.通常使用bit類型的資料表示真假邏輯關係,如on/off、yes/no、ture/false等。不能對bit類型的列使用索引。
Int:可以儲存從-231到-231-1範圍內的全部正負數。int型資料佔用的儲存空間大小為4KB個位元組。
bigint:可以儲存-263到263-1範圍內的全部負數,所佔儲存空間大小為8個位元組。
smallint:儲存從-215到-215-1範圍內的全部正負數,所佔儲存空間大小為2個位元組。
tinyint:可以儲存0~255之間的所有整數,所佔儲存空間大小為1個位元組。
3> 浮點數據類型
浮點數據類型包括float和real兩種類型,用於儲存範圍非常大的數字。
float:該類型資料範圍是-1.79E+308~1.79E+308.
real:該類型資料範圍是-3.40E+38~3.40E+38.
浮點數據類型容易發生舍入誤差,因此一般在貨幣運算上不使用它但是在科學運算或統計運算計算等不要求絕對精確的運算場合使用浮點數據類型非常方便。
4> 精確的小樹資料類型
精確小數資料類型包括decimal和numeric兩種,可以精確指定小數點兩邊的總位元和小數點右面的位元。這兩種資料的去值範圍都是從-1038-1到1038-1.
decimal和numeric的區別在於:numeric類型的列可以帶有IDENTITY關鍵字。
5> 貨幣資料類型
貨幣資料類型專門用於貨幣資料處理,包括money和smallmoney。
money:以money資料類型儲存的貨幣值的範圍從-263到263-1,精確到貨幣單位的10‰。money資料類型要求有兩個2位元組整數構成,前面的一個4位元組表示貨幣值的整數部分,後面的一個4位元組表示貨幣值的小數部分。
smallmoney:以smallmoney資料類型儲存的貨幣值介於-214748.3648與214748.3647之間,精確到貨幣單位的10‰。smallmoney資料類型要求有兩個2位元組整數構成,前面的一個2位元組表示貨幣值的整數部分,後面的一個2位元組表示貨幣值的小數部分。
6> 日期 / 時間資料類型
日期/時間資料類型可以儲存日期和時間的組合資料,包括datetime和smalldatetime兩種資料類型。
datetime:儲存從1753年1月1日到9999年12月31日的日期和時間資料,精確到0.00333s或是3.33s。每個datetime類型的資料佔用8個位元組的儲存空間。
smalldatetime:儲存從1900年1月1日到2079年12月31日的日期和時間資料可以精確到分鐘。每個smalldatetime類型的資料佔用4個位元組的儲存空間。
7> 字元資料類型
字元資料類型是由字母、數字和符號組合而成,如‘beijing’、‘zyf123@126.com’等都是合法的字元型資料。字元資料類型可以分為3種:
char[(n)]:使用固定長度來儲存字元,每個字元佔用一個位元組的儲存空間,其最大長度為8000個字元。利用char資料類型來定義表列或變數時,應該給定資料的最大長度,例如有這樣的定義:declare @name char(10)。
定義變數name為char類型,最長可容納10個字元。如果實際賦給變數的字元長度短於給定的最大長度,則多餘的字元會以空格填充;如果實際賦給變數的字元長度超過了給定的最大長度,則超過的字元將會被截斷。字元型常量必須使用單引號括起來。
varchar[(n)]:用於儲存最長可達8000字元的變長字元型資料。varchar資料類型的儲存空間雖儲存的每一個資料的字元數的不同而變化。
text:專門用於儲存數量龐大的變長字元資料。最大長度可達231-1個。
8>Unicode 資料類型
Unicode資料類型用於儲存要用兩個字元才能儲存的雙位元組字元,例如漢子、日文或韓文等Unicode資料類型包括nchar、nvarchar和ntext。
nchar(n):固定長度的Unicode資料,括弧中的n用來定義字元資料的最大長度。n的取值範圍是1~4000.由於儲存的都是雙位元組字元,因此Unicode資料的儲存空間都是:Unicode資料的儲存空間=字元數*2(位元組)。
nvarchar(n):用於儲存可變長度的Unicode資料,括弧匯總的n用來定義字元資料的最大長度。n的取值範圍是1~4000。
ntext:用於儲存可變長度的Unicode資料,其最大長度突破了前兩種資料的規定,最多可以儲存230-1個Unicode資料。
9>sql_variant 資料類型
sql_variant資料類型可以應用在列,參數,變數和函數傳回值中,以sql_variant為資料類型的資料可以儲存除text、ntext、image和sql_variant資料類型以外的各種資料。

10>使用者自訂資料類型

1.建立使用者自訂資料類型

1

建立兩個自訂資料類型。第一個自訂的資料類型telephone_code,資料長度為15,可變長字元型,允許為空白;第二個自訂資料類型zip,定長字元型長度為6,不允許為空白。

USE sales

GO

EXEC sp_addtype telephone_code,’varchar(15)’,’NULL’

EXEC sp_addtype zip,’char(6)’,’NOT NULL’

2.查看使用者自訂資料類型

使用預存程序sp_help可以查看使用者自訂資料類型的特徵。

2

查看telephone_code的特徵。

EXEC sp_help telephone_code

3.刪除使用者自訂資料類型

使用預存程序sp_droptype刪除使用者自訂資料類型。

3

刪除前例中定義的資料類型telephone_code。

EXEC sp_droptype telephone_code

注意:只能刪除已經定義但未被使用的使用者自訂資料類型,正在被表或其他資料庫物件使用的使用者自訂資料類型不能刪除。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.