Mysql數(shù)據(jù)格式

varchar 對(duì)每個(gè)英文(ascii)字符都占用2個(gè)字節(jié),對(duì)一個(gè)漢字也只占用兩個(gè)字節(jié)
char 對(duì)英文(ascii)字符占用1個(gè)字節(jié),對(duì)一個(gè)漢字占用2個(gè)字節(jié)varchar 的類(lèi)型不以空格填滿,比如varchar(100),但它的值只是”qian”,則它的值就是”qian”而char 不一樣,比如char(100),它的值是”qian”,而實(shí)際上它在數(shù)據(jù)庫(kù)中是”qian “(qian后共有96個(gè)空格,就是把它填滿為100個(gè)字節(jié))。

由于char是以固定長(zhǎng)度的,所以它的速度會(huì)比varchar快得多!但程序處理起來(lái)要麻煩一點(diǎn),要用trim之類(lèi)的函數(shù)把兩邊的空格去掉!

ntext

可變長(zhǎng)度 Unicode 數(shù)據(jù)的最大長(zhǎng)度為 230 – 1 (1,073,741,823) 個(gè)字符。存儲(chǔ)大小是所輸入字符個(gè)數(shù)的兩倍(以字節(jié)為單位)。ntext 在 SQL-92 中的同義詞是 national text。

text

服務(wù)器代碼頁(yè)中的可變長(zhǎng)度非 Unicode 數(shù)據(jù)的最大長(zhǎng)度為 231-1 (2,147,483,647) 個(gè)字符。當(dāng)服務(wù)器代碼頁(yè)使用雙字節(jié)字符時(shí),存儲(chǔ)量仍是 2,147,483,647 字節(jié)。存儲(chǔ)大小可能小于 2,147,483,647 字節(jié)(取決于字符串)。

bigint:從-2^63(-9223372036854775808)到2^63-1(9223372036854775807)的整型數(shù)據(jù),存儲(chǔ)大小為 8 個(gè)字節(jié)。

int:從-2^31(-2,147,483,648)到2^31-1(2,147,483,647)的整型數(shù)據(jù),存儲(chǔ)大小為 4 個(gè)字節(jié)。

smallint:從-2^15(-32,768)到2^15-1(32,767)的整數(shù)數(shù)據(jù),存儲(chǔ)大小為 2 個(gè)字節(jié)。

tinyint:從0到255的整數(shù)數(shù)據(jù),存儲(chǔ)大小為 1 字節(jié)。

bit:1或0的整數(shù)數(shù)據(jù),存儲(chǔ)大小為 1 字節(jié)。

?

Unicode 數(shù)據(jù)
在 Microsoft? SQL Server? 2000 中,傳統(tǒng)上非 Unicode 數(shù)據(jù)類(lèi)型允許使用由特定字符集定義的字符。字符集是在安裝 SQL Server 時(shí)選擇的,不能更改。使用 Unicode 數(shù)據(jù)類(lèi)型,列可存儲(chǔ)由 Unicode 標(biāo)準(zhǔn)定義的任何字符,包含由不同字符集定義的所有字符。Unicode 數(shù)據(jù)類(lèi)型需要相當(dāng)于非 Unicode 數(shù)據(jù)類(lèi)型兩倍的存儲(chǔ)空間。

Unicode 數(shù)據(jù)使用 SQL Server 中的 nchar、varchar 和 ntext 數(shù)據(jù)類(lèi)型進(jìn)行存儲(chǔ)。對(duì)于存儲(chǔ)來(lái)源于多種字符集的字符的列,可采用這些數(shù)據(jù)類(lèi)型。當(dāng)列中各項(xiàng)所包含的 Unicode 字符數(shù)不同時(shí)(至多為 4000),使用 nvarchar 類(lèi)型。當(dāng)列中各項(xiàng)為同一固定長(zhǎng)度時(shí)(至多為 4000 個(gè) Unicode 字符),使用 nchar 類(lèi)型。當(dāng)列中任意項(xiàng)超過(guò) 4000 個(gè) Unicode字符時(shí),使用 ntext 類(lèi)型。

說(shuō)明??? SQL Server 的 Unicode 數(shù)據(jù)類(lèi)型是基于 SQL-92 標(biāo)準(zhǔn)中的國(guó)家字符數(shù)據(jù)類(lèi)型。SQL-92 使用前綴字符 n 標(biāo)識(shí)這些數(shù)據(jù)類(lèi)型及其值。

?

1.數(shù)據(jù)類(lèi)型
數(shù)據(jù)類(lèi)弄是數(shù)據(jù)的一種屬性,表示數(shù)據(jù)所表示信息的類(lèi)型。任何一種計(jì)算機(jī)語(yǔ)言都定義了自己的數(shù)據(jù)類(lèi)型。當(dāng)然,不同的程序語(yǔ)言都具有不同的特點(diǎn),所定義的數(shù)據(jù)類(lèi)型的各類(lèi)和名稱都或多或少有些不同。SQL Server 提供了 25 種數(shù)據(jù)類(lèi)型:
·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)二進(jìn)制數(shù)據(jù)類(lèi)型
二進(jìn)制數(shù)據(jù)包括 Binary、Varbinary 和 Image.
Binary 數(shù)據(jù)類(lèi)型既可以是固定長(zhǎng)度的(Binary),也可以是變長(zhǎng)度的。
Binary[(N)] 是 n 位固定的二進(jìn)制數(shù)據(jù)。其中,n 的取值范圍是從 1 到 8000。其存儲(chǔ)窨的大小是 n + 4 個(gè)字節(jié)。
Varbinary[(N)] 是 n 位變長(zhǎng)度的二進(jìn)制數(shù)據(jù)。其中,n 的取值范圍是從 1 到 8000。其存儲(chǔ)窨的大小是 n + 4個(gè)字節(jié),不是 n 個(gè)字節(jié)。
在 Image 數(shù)據(jù)類(lèi)型中存儲(chǔ)的數(shù)據(jù)是以位字符串存儲(chǔ)的,不是由 SQL Server 解釋的,必須由應(yīng)用程序來(lái)解釋。例如,應(yīng)用程序可以使用 BMP、TIEF、GIF 和 JPEG 格式把數(shù)據(jù)存儲(chǔ)在 Image 數(shù)據(jù)類(lèi)型中。
(2)字符數(shù)據(jù)類(lèi)型
字符數(shù)據(jù)的類(lèi)型包括 Char,Varchar 和 Text。
字符數(shù)據(jù)是由任何字母、符號(hào)和數(shù)字任意組合而成的數(shù)據(jù)。
Varchar 是變長(zhǎng)字符數(shù)據(jù),其長(zhǎng)度不超過(guò) 8KB。Char 是定長(zhǎng)字符數(shù)據(jù),其長(zhǎng)度最多為 8KB。超過(guò) 8KB 的ASCII 數(shù)據(jù)可以使用Text 數(shù)據(jù)類(lèi)型存儲(chǔ)。例如,因?yàn)?Html 文檔全部都是 ASCII 字符,并且在一般情況下長(zhǎng)度超過(guò) 8KB,所以這些文檔可以 Text 數(shù)據(jù)類(lèi)型存儲(chǔ)在 SQL Server 中。
(3)Unicode 數(shù)據(jù)類(lèi)型
Unicode 數(shù)據(jù)類(lèi)型包括 Nchar,Nvarchar 和Ntext。
在 Microsoft SQL Server 中,傳統(tǒng)的非 Unicode 數(shù)據(jù)類(lèi)型允許使用由特定字符集定義的字符。在 SQL Server 安裝過(guò)程中,允許選擇一種字符集。使用 Unicode 數(shù)據(jù)類(lèi)型,列中可以存儲(chǔ)任何由Unicode 標(biāo)準(zhǔn)定義的字符。在 Unicode 標(biāo)準(zhǔn)中,包括了以各種字符集定義的全部字符。使用Unicode 數(shù)據(jù)類(lèi)型,所戰(zhàn)勝的窨是使用非 Unicode 數(shù)據(jù)類(lèi)型所占用的窨大小的兩倍。
在 SQL Server 中,Unicode 數(shù)據(jù)以 Nchar、Nvarchar 和 Ntext 數(shù)據(jù)類(lèi)型存儲(chǔ)。使用這種字符類(lèi)型存儲(chǔ)的列可以存儲(chǔ)多個(gè)字符集中的字符。當(dāng)列的長(zhǎng)度變化時(shí),應(yīng)該使用 Nvarchar 字符類(lèi)型,這時(shí)最多可以存儲(chǔ) 4000 個(gè)字符。當(dāng)列的長(zhǎng)度固定不變時(shí),應(yīng)該使用 Nchar 字符類(lèi)型,同樣,這時(shí)最多可以存儲(chǔ) 4000 個(gè)字符。當(dāng)使用 Ntext 數(shù)據(jù)類(lèi)型時(shí),該列可以存儲(chǔ)多于 4000 個(gè)字符。
(4)日期和時(shí)間數(shù)據(jù)類(lèi)型
日期和時(shí)間數(shù)據(jù)類(lèi)型包括 Datetime 和 Smalldatetime 兩種類(lèi)型。
日期和時(shí)間數(shù)據(jù)類(lèi)型由有效的日期和時(shí)間組成。例如,有效的日期和時(shí)間數(shù)據(jù)包括”4/01/98 12:15:00:00:00 PM”和”1:28:29:15:01 AM 8/17/98″。前一個(gè)數(shù)據(jù)類(lèi)型是日期在前,時(shí)間在后一個(gè)數(shù)據(jù)類(lèi)型是霎時(shí)間在前,日期在后。在 Microsoft SQL Server 中,日期和時(shí)間數(shù)據(jù)類(lèi)型包括Datetime 和 Smalldatetime 兩種類(lèi)型時(shí),所存儲(chǔ)的日期范圍是從 1753 年 1 月 1 日開(kāi)始,到 9999 年12 月 31 日結(jié)束(每一個(gè)值要求 8 個(gè)存儲(chǔ)字節(jié))。使用 Smalldatetime 數(shù)據(jù)類(lèi)型時(shí),所存儲(chǔ)的日期范圍是 1900 年 1 月 1日 開(kāi)始,到 2079 年 12 月 31 日結(jié)束(每一個(gè)值要求 4 個(gè)存儲(chǔ)字節(jié))。
日期的格式可以設(shè)定。設(shè)置日期格式的命令如下:
Set DateFormat {format | @format _var|
其中,format | @format_var 是日期的順序。有效的參數(shù)包括 MDY、DMY、YMD、YDM、MYD 和 DYM。在默認(rèn)情況下,日期格式為 MDY。
例如,當(dāng)執(zhí)行 Set DateFormat YMD 之后,日期的格式為年 月 日 形式;當(dāng)執(zhí)行 Set DateFormat DMY 之后,日期的格式為 日 月有年 形式
(5)數(shù)字?jǐn)?shù)據(jù)類(lèi)型
數(shù)字?jǐn)?shù)據(jù)只包含數(shù)字。數(shù)字?jǐn)?shù)據(jù)類(lèi)型包括正數(shù)和負(fù)數(shù)、小數(shù)(浮點(diǎn)數(shù))和整數(shù) 。
整數(shù)由正整數(shù)和負(fù)整數(shù)組成,例如 39、25、0-2 和 33967。在 Micrsoft SQL Server 中,整數(shù)存儲(chǔ)的數(shù)據(jù)類(lèi)型是 Int,Smallint 和 Tinyint。Int 數(shù)據(jù)類(lèi)型存儲(chǔ)數(shù)據(jù)的范圍大于 Smallint 數(shù)據(jù)類(lèi)型存儲(chǔ)數(shù)據(jù)的范圍,而 Smallint 據(jù)類(lèi)型存儲(chǔ)數(shù)據(jù)的范圍大于 Tinyint 數(shù)據(jù)類(lèi)型存儲(chǔ)數(shù)據(jù)的范圍。使用 Int 數(shù)據(jù)狗昔存儲(chǔ)數(shù)據(jù)的范圍是從 -2 147 483 648 到 2 147 483 647(每一個(gè)值要求 4個(gè)字節(jié)存儲(chǔ)空間)。使用 Smallint 數(shù)據(jù)類(lèi)型時(shí),存儲(chǔ)數(shù)據(jù)的范圍從 -32 768 到 32 767(每一個(gè)值要求2個(gè)字節(jié)存儲(chǔ)空間)。使用 Tinyint 數(shù)據(jù)類(lèi)型時(shí),存儲(chǔ)數(shù)據(jù)的范圍是從0 到255(每一個(gè)值要求1個(gè)字節(jié)存儲(chǔ)空間)。
精確小婁數(shù)據(jù)在 SQL Server 中的數(shù)據(jù)類(lèi)型是 Decimal 和 Numeric。這種數(shù)據(jù)所占的存儲(chǔ)空間根據(jù)該數(shù)據(jù)的位數(shù)后的位數(shù)來(lái)確定。
在SQL Server 中,近似小數(shù)數(shù)據(jù)的數(shù)據(jù)類(lèi)型是 Float 和 Real。例如,三分之一這個(gè)分?jǐn)?shù)記作。3333333,當(dāng)使用近似數(shù)據(jù)類(lèi)型時(shí)能準(zhǔn)確表示。因此,從系統(tǒng)中檢索到的數(shù)據(jù)可能與存儲(chǔ)在該列中數(shù)據(jù)不完全一樣。
(6)貨幣數(shù)據(jù)表示正的或者負(fù)的貨幣數(shù)量 。在 Microsoft SQL Server 中,貨幣數(shù)據(jù)的數(shù)據(jù)類(lèi)型是Money 和 Smallmoney。Money 數(shù)據(jù)類(lèi)型要求 8 個(gè)存儲(chǔ)字節(jié),Smallmoney 數(shù)據(jù)類(lèi)型要求 4 個(gè)存儲(chǔ)字節(jié)。
(7)特殊數(shù)據(jù)類(lèi)型
特殊數(shù)據(jù)類(lèi)型包括前面沒(méi)有提過(guò)的數(shù)據(jù)類(lèi)型。特殊的數(shù)據(jù)類(lèi)型有3種,即 Timestamp、Bit 和 Uniqueidentifier。
Timestamp 用于表示SQL Server 活動(dòng)的先后順序,以二進(jìn)投影的格式表示。Timestamp 數(shù)據(jù)與插入數(shù)據(jù)或者日期和時(shí)間沒(méi)有關(guān)系。
Bit 由 1 或者 0 組成。當(dāng)表示真或者假、ON 或者 OFF 時(shí),使用 Bit 數(shù)據(jù)類(lèi)型。例如,詢問(wèn)是否是每一次訪問(wèn)的客戶機(jī)請(qǐng)求可以存儲(chǔ)在這種數(shù)據(jù)類(lèi)型的列中。
Uniqueidentifier 由 16 字節(jié)的十六進(jìn)制數(shù)字組成,表示一個(gè)全局唯一的。當(dāng)表的記錄行要求唯一時(shí),GUID是非常有用。例如,在客戶標(biāo)識(shí)號(hào)列使用這種數(shù)據(jù)類(lèi)型可以區(qū)別不同的客戶。

Mysql數(shù)據(jù)格式

最佳 Windows 性能的頂級(jí)免費(fèi)優(yōu)化軟件

每個(gè)人都需要一臺(tái)速度更快、更穩(wěn)定的 PC。隨著時(shí)間的推移,垃圾文件、舊注冊(cè)表數(shù)據(jù)和不必要的后臺(tái)進(jìn)程會(huì)占用資源并降低性能。幸運(yùn)的是,許多工具可以讓 Windows 保持平穩(wěn)運(yùn)行。

下載

相關(guān)標(biāo)簽:

來(lái)源:php中文網(wǎng)

Mysql數(shù)據(jù)格式

本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊6 分享