国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

SQL SERVER的數據類型 && SQLServer中易混淆的數據類型

瀏覽:2日期:2023-11-02 12:23:25

數據類弄是數據的一種屬性,表示數據所表示信息的類型。任何一種計算機語言都定義了自己的數據類型。當然,不同的程序語言都具有不同的特點,所定義的數據類型的各類和名稱都或多或少有些不同。SQLServer 提供了 25 種數據類型: ·Binary [(n)] ·Varbinary [(n)] ·Char [(n)] ·Varchar[(n)] ·Nchar[(n)] ·Nvarchar[(n)] ·Datetime ·Smalldatetime ·Decimal[(p[,s])] ·Numeric[(p[,s])] ·Float[(n)] ·Real ·Int ·Smallint ·Tinyint ·Money ·Smallmoney ·Bit ·Cursor ·Sysname ·Timestamp ·Uniqueidentifier ·Text ·Image ·Ntext (1)二進制數據類型

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

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

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

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

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

在 Microsoft SQL Server 中,貨幣數據的數據類型是Money 和 Smallmoney Money數據類型要求 8 個存儲字節,Smallmoney 數據類型要求 4 個存儲字節。

(7)特殊數據類型

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

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

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

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

SQLServer中易混淆的數據類型

SQL Server 中易混淆的數據類型 >近來在做數據庫設計,有時候真弄不清SQL2000里的數據類型,所以摘了這篇文章。

(1)char、varchar、text和nchar、nvarchar、ntext char和varchar的長度都在1到8000之間,它們的區別在于char是定長字符數據,而varchar是變長字符數據。所謂定長就是長度固定的,當輸入的數據長度沒有達到指定的長度時將自動以英文空格在其后面填充,使長度達到相應的長度;而變長字符數據則不會以空格填充。text存儲可變長度的非Unicode數據,最大長度為2^31-1(2,147,483,647)個字符。

后面三種數據類型和前面的相比,從名稱上看只是多了個字母'n',它表示存儲的是Unicode數據類型的字符。寫過程序的朋友對Unicode應該很了解。字符中,英文字符只需要一個字節存儲就足夠了,但漢字眾多,需要兩個字節存儲,英文與漢字同時存在時容易造成混亂,Unicode字符集就是為了解決字符集這種不兼容的問題而產生的,它所有的字符都用兩個字節表示,即英文字符也是用兩個字節表示。nchar、nvarchar的長度是在1到4000之間。和char、varchar比較:nchar、nvarchar則最多存儲4000個字符,不論是英文還是漢字;而char、varchar最多能存儲8000個英文,4000個漢字??梢钥闯鍪褂胣char、nvarchar數據類型時不用擔心輸入的字符是英文還是漢字,較為方便,但在存儲英文時數量上有些損失。

(2)datetime和smalldatetime datetime:從1753年1月1日到9999年12月31日的日期和時間數據,精確到百分之三秒。 smalldatetime:從1900年1月1日到2079年6月6日的日期和時間數據,精確到分鐘。

(3)bitint、int、smallint、tinyint和bit bigint:從-2^63(-9223372036854775808)到2^63-1(9223372036854775807)的整型數據。 int:從-2^31(-2,147,483,648)到2^31-1(2,147,483,647)的整型數據。 smallint:從-2^15(-32,768)到2^15-1(32,767)的整數數據。 tinyint:從0到255的整數數據。 bit:1或0的整數數據。

(4)decimal和numeric 這兩種數據類型是等效的。都有兩個參數:p(精度)和s(小數位數)。p指定小數點左邊和右邊可以存儲的十進制數字的最大個數,p必須是從 1到38之間的值。s指定小數點右邊可以存儲的十進制數字的最大個數,s必須是從0到p之間的值,默認小數位數是0。

(5)float和real float:從-1.79^308到1.79^308之間的浮點數字數據。 real:從-3.40^38到3.40^38之間的浮點數字數據。在SQL Server中,real的同義詞為float(24)。;

標簽: Sql Server 數據庫
主站蜘蛛池模板: 亚洲视频欧美 | 国产欧美日韩综合精品无毒 | 91成人午夜在线精品 | 日本人成免费大片 | 亚洲精品区在线播放一区二区 | 日韩国产欧美一区二区三区 | 有码视频在线观看 | 在线亚洲成人 | 国产日韩欧美综合在线 | 波多野结衣在线观看高清免费资源 | 久久好看视频 | 精品三级内地国产在线观看 | 欧美日本道免费一区二区三区 | 日韩欧美国产一区二区三区 | 亚洲三级网| 精品久久久久不卡无毒 | a级日韩乱理伦片在线观看 a级特黄毛片免费观看 | 久草视频免费在线 | 亚洲 欧美 日韩 在线 中文字幕 | 亚洲欧美午夜 | 国产精品久久久久亚洲 | 亚洲国产精品线观看不卡 | 日本亚洲欧美在线 | 看一级毛片一区二区三区免费 | 亚洲成人第一页 | 亚洲欧美日韩国产制服另类 | 一级视频网站 | 国内国语一级毛片在线视频 | 久久久久久久免费视频 | 久久99热只有视精品6国产 | 日本九六视频 | 亚洲欧美日韩国产精品影院 | 国产午夜精品一区二区三区不卡 | 大学生久久香蕉国产线观看 | 欧美在线精品一区二区三区 | 成人a影片在线观看 | 午夜一级片 | 九九热播视频 | 久视频在线观看 | 国产欧美精品综合一区 | 国产欧美日韩综合精品一区二区三区 |