欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL數(shù)據(jù)類型詳解

 更新時間:2006年10月28日 00:00:00   作者:  

(1)二進制數(shù)據(jù)類型

  二進制數(shù)據(jù)包括 Binary、Varbinary 和 Image
  Binary 數(shù)據(jù)類型既可以是固定長度的(Binary),也可以是變長度的。
  Binary[(n)] 是 n 位固定的二進制數(shù)據(jù)。其中,n 的取值范圍是從 1 到 8000。其存儲窨的大小是 n + 4 個字節(jié)。
  Varbinary[(n)] 是 n 位變長度的二進制數(shù)據(jù)。其中,n 的取值范圍是從 1 到 8000。其存儲窨的大小是 n + 4個字節(jié),不是n 個字節(jié)。
  在 Image 數(shù)據(jù)類型中存儲的數(shù)據(jù)是以位字符串存儲的,不是由 SQL Server 解釋的,必須由應(yīng)用程序來解釋。例如,應(yīng)用程序可以使用BMP、TIEF、GIF 和 JPEG 格式把數(shù)據(jù)存儲在 Image 數(shù)據(jù)類型中。

(2)字符數(shù)據(jù)類型

  字符數(shù)據(jù)的類型包括 Char,Varchar 和 Text
  字符數(shù)據(jù)是由任何字母、符號和數(shù)字任意組合而成的數(shù)據(jù)。
  Varchar 是變長字符數(shù)據(jù),其長度不超過 8KB。Char 是定長字符數(shù)據(jù),其長度最多為 8KB。超過 8KB 的ASCII 數(shù)據(jù)可以使用Text數(shù)據(jù)類型存儲。例如,因為 Html 文檔全部都是 ASCII 字符,并且在一般情況下長度超過 8KB,所以這些文檔可以 Text 數(shù)據(jù)類型存儲在SQL Server 中。

(3)Unicode 數(shù)據(jù)類型

  Unicode 數(shù)據(jù)類型包括 Nchar,Nvarchar 和Ntext
  在 Microsoft SQL Server 中,傳統(tǒng)的非 Unicode 數(shù)據(jù)類型允許使用由特定字符集定義的字符。在 SQL Server安裝過程中,允許選擇一種字符集。使用 Unicode 數(shù)據(jù)類型,列中可以存儲任何由Unicode 標準定義的字符。在 Unicode 標準中,包括了以各種字符集定義的全部字符。使用Unicode數(shù)據(jù)類型,所戰(zhàn)勝的窨是使用非 Unicode 數(shù)據(jù)類型所占用的窨大小的兩倍。
  在 SQL Server 中,Unicode 數(shù)據(jù)以 Nchar、Nvarchar 和 Ntext 數(shù)據(jù)類型存儲。使用這種字符類型存儲的列可以存儲多個字符集中的字符。當列的長度變化時,應(yīng)該使用Nvarchar 字符類型,這時最多可以存儲 4000 個字符。當列的長度固定不變時,應(yīng)該使用 Nchar 字符類型,同樣,這時最多可以存儲4000 個字符。當使用 Ntext 數(shù)據(jù)類型時,該列可以存儲多于 4000 個字符。

(4)日期和時間數(shù)據(jù)類型

  日期和時間數(shù)據(jù)類型包括 Datetime 和 Smalldatetime兩種類型
  日期和時間數(shù)據(jù)類型由有效的日期和時間組成。例如,有效的日期和時間數(shù)據(jù)包括“4/01/98 12:15:00:00:00 PM”和“1:28:29:15:01AM 8/17/98”。前一個數(shù)據(jù)類型是日期在前,時間在后一個數(shù)據(jù)類型是霎時間在前,日期在后。在 Microsoft SQL Server中,日期和時間數(shù)據(jù)類型包括Datetime 和 Smalldatetime 兩種類型時,所存儲的日期范圍是從 1753 年 1 月 1 日開始,到9999 年12 月 31 日結(jié)束(每一個值要求 8 個存儲字節(jié))。使用 Smalldatetime 數(shù)據(jù)類型時,所存儲的日期范圍是 1900年 1 月 1日 開始,到 2079 年 12 月 31 日結(jié)束(每一個值要求 4 個存儲字節(jié))。
  日期的格式可以設(shè)定。設(shè)置日期格式的命令如下:
  Set DateFormat {format | @format _var|
  其中,format | @format_var 是日期的順序。有效的參數(shù)包括 MDY、DMY、YMD、YDM、MYD 和 DYM。在默認情況下,日期格式為MDY。
  例如,當執(zhí)行 Set DateFormat YMD 之后,日期的格式為年 月 日 形式;當執(zhí)行 Set DateFormat DMY 之后,日期的格式為日 月有年 形式

(5)數(shù)字數(shù)據(jù)類型

  數(shù)字數(shù)據(jù)只包含數(shù)字。數(shù)字數(shù)據(jù)類型包括正數(shù)和負數(shù)、小數(shù)(浮點數(shù))和整數(shù)
  整數(shù)由正整數(shù)和負整數(shù)組成,例如 39、25、0-2 和 33967。在 Micrsoft SQL Server 中,整數(shù)存儲的數(shù)據(jù)類型是    Int,Smallint和 Tinyint。Int 數(shù)據(jù)類型存儲數(shù)據(jù)的范圍大于 Smallint 數(shù)據(jù)類型存儲數(shù)據(jù)的范圍,而 Smallint 據(jù)類型存儲數(shù)據(jù)的范圍大于Tinyint 數(shù)據(jù)類型存儲數(shù)據(jù)的范圍。使用 Int 數(shù)據(jù)狗昔存儲數(shù)據(jù)的范圍是從 -2 147 483 648 到 2 147 483 647(每一個值要求4個字節(jié)存儲空間)。使用 Smallint 數(shù)據(jù)類型時,存儲數(shù)據(jù)的范圍從 -32 768 到 32 767(每一個值要求2個字節(jié)存儲空間)。使用Tinyint 數(shù)據(jù)類型時,存儲數(shù)據(jù)的范圍是從0 到255(每一個值要求1個字節(jié)存儲空間)。
  精確小婁數(shù)據(jù)在 SQL Server 中的數(shù)據(jù)類型是 Decimal 和 Numeric。這種數(shù)據(jù)所占的存儲空間根據(jù)該數(shù)據(jù)的位數(shù)后的位數(shù)來確定。
  在SQL Server 中,近似小數(shù)數(shù)據(jù)的數(shù)據(jù)類型是 Float 和 Real。例如,三分之一這個分數(shù)記作。3333333,當使用近似數(shù)據(jù)類型時能準確表示。因此,從系統(tǒng)中檢索到的數(shù)據(jù)可能與存儲在該列中數(shù)據(jù)不完全一樣。

(6)貨幣數(shù)據(jù)表示正的或者負的貨幣數(shù)量 。

  在 Microsoft SQL Server 中,貨幣數(shù)據(jù)的數(shù)據(jù)類型是Money 和 Smallmoney

  Money數(shù)據(jù)類型要求 8 個存儲字節(jié),Smallmoney 數(shù)據(jù)類型要求 4 個存儲字節(jié)。

(7)特殊數(shù)據(jù)類型

  特殊數(shù)據(jù)類型包括前面沒有提過的數(shù)據(jù)類型。特殊的數(shù)據(jù)類型有3種,即    Timestamp、Bit 和 Uniqueidentifier
  Timestamp 用于表示SQL Server 活動的先后順序,以二進投影的格式表示。Timestamp 數(shù)據(jù)與插入數(shù)據(jù)或者日期和時間沒有關(guān)系。
  Bit 由 1 或者 0 組成。當表示真或者假、ON 或者 OFF 時,使用 Bit 數(shù)據(jù)類型。例如,詢問是否是每一次訪問的客戶機請求可以存儲在這種數(shù)據(jù)類型的列中。
  Uniqueidentifier 由 16 字節(jié)的十六進制數(shù)字組成,表示一個全局唯一的。當表的記錄行要求唯一時,GUID是非常有用。例如,在客戶標識號列使用這種數(shù)據(jù)類型可以區(qū)別不同的客戶。

2.用戶定義的數(shù)據(jù)類型

  用戶定義的數(shù)據(jù)類型基于在 Microsoft SQL Server 中提供的數(shù)據(jù)類型。當幾個表中必須存儲同一種數(shù)據(jù)類型時,并且為保證這些列有相同的數(shù)據(jù)類型、長度和可空性時,可以使用用戶定義的數(shù)據(jù)類型。例如,可定義一種稱為   postal_code 的數(shù)據(jù)類型,它基于 Char 數(shù)據(jù)類型。
  當創(chuàng)建用戶定義的數(shù)據(jù)類型時,必須提供三個數(shù):數(shù)據(jù)類型的名稱、所基于的系統(tǒng)數(shù)據(jù)類型和數(shù)據(jù)類型的可空性。

(1)創(chuàng)建用戶定義的數(shù)據(jù)類型

  創(chuàng)建用戶定義的數(shù)據(jù)類型可以使用 Transact-SQL 語句。系統(tǒng)存儲過程 sp_addtype 可以來創(chuàng)建用戶定義的數(shù)據(jù)類型。其語法形式如下:
  sp_addtype {type},[,system_data_bype][,'null_type']
  其中,type 是用戶定義的數(shù)據(jù)類型的名稱。system_data_type 是系統(tǒng)提供的數(shù)據(jù)類型,例如 Decimal、Int、Char   等等。 null_type 表示該數(shù)據(jù)類型是如何處理空值的,必須使用單引號引起來,例如'NULL'、'NOT NULL'或者'NONULL'。
  例子:
  Use cust
  Exec sp_addtype ssn,'Varchar(11)',"Not Null'
  創(chuàng)建一個用戶定義的數(shù)據(jù)類型 ssn,其基于的系統(tǒng)數(shù)據(jù)類型是變長為11 的字符,不允許空。
  例子:
  Use cust
  Exec sp_addtype birthday,datetime,'Null'
  創(chuàng)建一個用戶定義的數(shù)據(jù)類型 birthday,其基于的系統(tǒng)數(shù)據(jù)類型是 DateTime,允許空。
  例子:
  Use master
  Exec sp_addtype telephone,'varchar(24),'Not Null'
  Eexc sp_addtype fax,'varchar(24)','Null'
  創(chuàng)建兩個數(shù)據(jù)類型,即 telephone 和 fax

(2)刪除用戶定義的數(shù)據(jù)類型

  當用戶定義的數(shù)據(jù)類型不需要時,可刪除。刪除用戶定義的數(shù)據(jù)類型的命令是 sp_droptype {'type'}。
  例子:
  Use master
  Exec sp_droptype 'ssn'
  注意:當表中的列還正在使用用戶定義的數(shù)據(jù)類型時,或者在其上面還綁定有默認或者規(guī)則時,這種用戶定義的數(shù)據(jù)類型不能刪除。

SQL SERVER的字段類型說明

  以下為SQL SERVER7.0以上版本的字段類型說明。SQL SERVER6.5的字段類型說明請參考SQL SERVER提供的說明。

字段類型 描述
 bit  0或1的整型數(shù)字
 int  從-2^31(-2,147,483,648)到2^31(2,147,483,647)的整型數(shù)字
 smallint  從-2^15(-32,768)到2^15(32,767)的整型數(shù)字
 tinyint  從0到255的整型數(shù)字
   
 decimal  從-10^38到10^38-1的定精度與有效位數(shù)的數(shù)字
 numeric  decimal的同義詞
   
 money  從-2^63(-922,337,203,685,477.5808)到2^63-1(922,337,203,685,477.5807)的貨幣數(shù)據(jù),最小貨幣單位千分之十
 smallmoney  從-214,748.3648到214,748.3647的貨幣數(shù)據(jù),最小貨幣單位千分之十
   
 float  從-1.79E+308到1.79E+308可變精度的數(shù)字
 real  從-3.04E+38到3.04E+38可變精度的數(shù)字
   
 datetime  從1753年1月1日到9999年12日31的日期和時間數(shù)據(jù),最小時間單位為百分之三秒或3.33毫秒
 smalldatetime  從1900年1月1日到2079年6月6日的日期和時間數(shù)據(jù),最小時間單位為分鐘
   
 timestamp  時間戳,一個數(shù)據(jù)庫寬度的唯一數(shù)字
 uniqueidentifier  全球唯一標識符GUID
   
 char  定長非Unicode的字符型數(shù)據(jù),最大長度為8000
 varchar  變長非Unicode的字符型數(shù)據(jù),最大長度為8000
 text  變長非Unicode的字符型數(shù)據(jù),最大長度為2^31-1(2G)
   
 nchar  定長Unicode的字符型數(shù)據(jù),最大長度為8000
 nvarchar  變長Unicode的字符型數(shù)據(jù),最大長度為8000
 ntext  變長Unicode的字符型數(shù)據(jù),最大長度為2^31-1(2G)
   
 binary  定長二進制數(shù)據(jù),最大長度為8000
 varbinary  變長二進制數(shù)據(jù),最大長度為8000
 image  變長二進制數(shù)據(jù),最大長度為2^31-1(2G)

相關(guān)文章

  • SQL Server UPDATE語句的用法詳解

    SQL Server UPDATE語句的用法詳解

    SQL Server中的數(shù)據(jù)改動是免不了的,使用UPDATE語句就可以實現(xiàn)我們對數(shù)據(jù)庫數(shù)據(jù)的更新修改操作,下面就讓我們來了解一下UPDATE語句的用法
    2014-08-08
  • MSSQL存儲過程的功能和用法詳解

    MSSQL存儲過程的功能和用法詳解

    Microsoft SQL Server(MSSQL)是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它支持各種數(shù)據(jù)操作和查詢功能,其中,存儲過程是MSSQL中非常重要的一個功能,在這個章節(jié)中,我們將詳細介紹MSSQL存儲過程的功能和用法
    2023-12-12
  • 淺析SQL Server 聚焦索引對非聚集索引的影響

    淺析SQL Server 聚焦索引對非聚集索引的影響

    本篇文章對SQL Server的聚焦索引和非聚集索引進行簡單分析,從而總結(jié)出聚焦索引對非聚集索引的影響。有興趣的朋友可以看下
    2016-12-12
  • sql server實現(xiàn)分頁的方法實例分析

    sql server實現(xiàn)分頁的方法實例分析

    這篇文章主要介紹了sql server實現(xiàn)分頁的方法,結(jié)合實例形式總結(jié)分析了SQL Server實現(xiàn)分頁功能的常用sql語句,具有一定參考借鑒價值,需要的朋友可以參考下
    2017-03-03
  • SQL Server中統(tǒng)計每個表行數(shù)的快速方法

    SQL Server中統(tǒng)計每個表行數(shù)的快速方法

    這篇文章主要介紹了SQL Server中統(tǒng)計每個表行數(shù)的快速方法,本文不使用傳統(tǒng)的count()函數(shù),因為它比較慢和占用資源,本文講解的是另一種方法,需要的朋友可以參考下
    2015-02-02
  • sql server 性能優(yōu)化之nolock

    sql server 性能優(yōu)化之nolock

    在SQL Server數(shù)據(jù)庫查詢時,為了提高查詢的性能,我們往往會在表后面加一個nolock,或者是with(nolock),讓數(shù)據(jù)庫在查詢時不鎖定表,從而提高查詢的速度,接下來,通過本篇文章給大家詳解sql server 性能優(yōu)化之nolock,需要的朋友快來學(xué)習(xí)吧。
    2015-08-08
  • MMC提示不能打開文件SQLServerEnterpriseManager.MSC的解決方法

    MMC提示不能打開文件SQLServerEnterpriseManager.MSC的解決方法

    MMC不能打開文件SQLServerEnterpriseManager.MSC的解決方法,主要是不能很方便的打開Microsoft SQL 企業(yè)管理器
    2010-05-05
  • SQL Server 獲取服務(wù)器時間的sql語句

    SQL Server 獲取服務(wù)器時間的sql語句

    這篇文章主要介紹了SQL Server 獲取服務(wù)器時間的sql語句,需要的朋友可以參考下
    2016-07-07
  • SQL Server誤區(qū)30日談 第4天 DDL觸發(fā)器就是INSTEAD OF觸發(fā)器

    SQL Server誤區(qū)30日談 第4天 DDL觸發(fā)器就是INSTEAD OF觸發(fā)器

    DDL觸發(fā)器的實現(xiàn)原理其實就是一個AFTER觸發(fā)器。這個意思是先發(fā)生DDL操作,然后觸發(fā)器再捕捉操作(當然如果你在觸發(fā)器內(nèi)寫了Rollback,則也可能回滾)
    2013-01-01
  • sql server把退款總金額拆分到盡量少的多個訂單中詳解

    sql server把退款總金額拆分到盡量少的多個訂單中詳解

    這篇文章主要給大家介紹了關(guān)于sql server把退款總金額拆分到盡量少的多個訂單中的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12

最新評論