成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

MySQL基礎(chǔ)教程4 —— 數(shù)據(jù)類(lèi)型之存儲(chǔ)需求及如何選擇正確的類(lèi)型

瀏覽:58日期:2023-10-17 16:01:16
1. 列類(lèi)型存儲(chǔ)需求

根據(jù)類(lèi)別列出了MySQL支持的每個(gè)列類(lèi)型的存儲(chǔ)需求。

MyISAM表中行的最大大小為65,534字節(jié)。每個(gè)BLOB和TEXT列 賬戶(hù)只占其中的5至9個(gè)字節(jié)。

如果MyISAM表包括變長(zhǎng)列類(lèi)型,記錄格式也是可變長(zhǎng)度。當(dāng)創(chuàng)建表時(shí),在某些條件下,MySQL可以將一個(gè)列從變長(zhǎng)類(lèi)型改為固定長(zhǎng)度的類(lèi)型或反之亦然。

數(shù)值類(lèi)型存儲(chǔ)需求

列類(lèi)型存儲(chǔ)需求TINYINT1個(gè)字節(jié)SMALLINT2個(gè)字節(jié)MEDIUMINT3個(gè)字節(jié)INT,INTEGER4個(gè)字節(jié)BIGINT8個(gè)字節(jié)FLOAT(p)如果0 <=p<= 24為4個(gè)字節(jié),如果25 <=p<= 53為8個(gè)字節(jié)FLOAT4個(gè)字節(jié)DOUBLE [PRECISION], itemREAL8個(gè)字節(jié)DECIMAL(M,D),NUMERIC(M,D)變長(zhǎng);參見(jiàn)下面的討論BIT(M)大約(M+7)/8個(gè)字節(jié)

DECIMAL(和NUMERIC)的存儲(chǔ)需求與具體版本有關(guān):

使用二進(jìn)制格式將9個(gè)十進(jìn)制(基于10)數(shù)壓縮為4個(gè)字節(jié)來(lái)表示DECIMAL列值。每個(gè)值的整數(shù)和分?jǐn)?shù)部分的存儲(chǔ)分別確定。每個(gè)9位數(shù)的倍數(shù)需要4個(gè)字節(jié),并且“剩余的”位需要4個(gè)字節(jié)的一部分。下表給出了超出位數(shù)的存儲(chǔ)需求:

剩余的字節(jié)位數(shù)數(shù)目00112132425363748494

日期和時(shí)間類(lèi)型的存儲(chǔ)需求

列類(lèi)型存儲(chǔ)需求DATE3個(gè)字節(jié)DATETIME8個(gè)字節(jié)TIMESTAMP4個(gè)字節(jié)TIME3個(gè)字節(jié)YEAR1個(gè)字節(jié)

字符串類(lèi)型的存儲(chǔ)需求

列類(lèi)型存儲(chǔ)需求CHAR(M)M個(gè)字節(jié),0<=M<=255VARCHAR(M)L+1個(gè)字節(jié),其中L<=M且0<=M<=65535(參見(jiàn)下面的注釋)BINARY(M)M個(gè)字節(jié),0<=M<=255VARBINARY(M)L+1個(gè)字節(jié),其中L<=M且0<=M<=255TINYBLOB,TINYTEXTL+1個(gè)字節(jié),其中L< 28BLOB,TEXTL+2個(gè)字節(jié),其中L< 216MEDIUMBLOB,MEDIUMTEXTL+3個(gè)字節(jié),其中L< 224LONGBLOB,LONGTEXTL+4個(gè)字節(jié),其中L< 232ENUM(’value1’,’value2’,...)1或2個(gè)字節(jié),取決于枚舉值的個(gè)數(shù)(最多65,535個(gè)值)SET(’value1’,’value2’,...)1、2、3、4或者8個(gè)字節(jié),取決于set成員的數(shù)目(最多64個(gè)成員)

VARCHAR、BLOB和TEXT類(lèi)是變長(zhǎng)類(lèi)型。每個(gè)類(lèi)型的存儲(chǔ)需求取決于列值的實(shí)際長(zhǎng)度(用前面的表中的L表示),而不是該類(lèi)型的最大可能的大小。例如,VARCHAR(10)列可以容納最大長(zhǎng)度為10的字符串。實(shí)際存儲(chǔ)需求是字符串(L)的長(zhǎng)度,加上一個(gè)記錄字符串長(zhǎng)度的字節(jié)。對(duì)于字符串’abcd’,L是4,存儲(chǔ)需要5個(gè)字節(jié)。

對(duì)于CHAR、VARCHAR和TEXT類(lèi)型,前面的表中的值L和M應(yīng)解釋為字符數(shù)目,并且列定義中的這些類(lèi)型的長(zhǎng)度表示字符數(shù)目。例如,要想保存一個(gè)TINYTEXT值需要L字符+ 1個(gè)字節(jié)。

要想計(jì)算用于保存具體CHAR、VARCHAR或者TEXT列值的字節(jié)數(shù),需要考慮該列使用的字符集。在具體情況中,當(dāng)使用Unicode時(shí),必須記住所有Unicode字符使用相同的字節(jié)數(shù)。

注釋?zhuān)?/b>VARCHAR列的有效最大長(zhǎng)度為65,532字符。

NDBCLUSTER引擎只支持固定寬度的列。這說(shuō)明MySQL簇中的表中的VARCHAR列的行為如同類(lèi)型CHAR(不同的是每個(gè)記錄仍然有一個(gè)額外字節(jié)空間)。例如,在Cluster表中,聲明為VARCHAR(100)的列中的每個(gè)記錄存儲(chǔ)時(shí)將占用101個(gè)字節(jié),無(wú)論實(shí)際存儲(chǔ)的記錄中的字符串的長(zhǎng)度為多少。

BLOB和TEXT類(lèi)需要1、2、3或者4個(gè)字節(jié)來(lái)記錄列值的長(zhǎng)度,取決于該類(lèi)的最大可能的長(zhǎng)度。

在NDB Cluster存儲(chǔ)引擎中,TEXT和BLOB列的實(shí)施是不同的,其中TEXT列中的每個(gè)記錄由兩個(gè)單獨(dú)部分組成。一個(gè)是固定大小(256字節(jié)),并且實(shí)際上保存在原表中。另一個(gè)包括超出256字節(jié)的任何數(shù)據(jù),保存在隱含的表中。第2個(gè)表中的記錄總是2,000字節(jié)長(zhǎng)。這說(shuō)明如果size<= 256,TEXT列的大小為256(其中size表示記錄的大小);否則,大小是256 +size+(2000–(size–256)%2000)。

ENUM對(duì)象的大小由不同的枚舉值的數(shù)目確定。枚舉用一個(gè)字節(jié),可以有255個(gè)可能的值。當(dāng)枚舉的值位于256和65,535之間時(shí),用兩個(gè)字節(jié)。

SET對(duì)象的大小由不同的set成員的數(shù)量確定。如果set大小是N,對(duì)象占(N+7)/8個(gè)字節(jié),四舍五入到1、2、3、4或者8個(gè)字節(jié)。SET最多可以有64個(gè)成員。

2.選擇正確的數(shù)據(jù)類(lèi)型

為了優(yōu)化存儲(chǔ),在任何情況下均應(yīng)使用最精確的類(lèi)型。例如,如果列的值的范圍為從1到99999,若使用整數(shù),則MEDIUMINT UNSIGNED是好的類(lèi)型。在所有可以表示該列值的類(lèi)型中,該類(lèi)型使用的存儲(chǔ)最少。

用精度為65位十進(jìn)制數(shù)(基于10)對(duì)DECIMAL列進(jìn)行所有基本計(jì)算(+、-、*、/)。

使用雙精度操作對(duì)DECIMAL值進(jìn)行計(jì)算。如果準(zhǔn)確度不是太重要或如果速度為最高優(yōu)先級(jí),DOUBLE類(lèi)型即足夠了。為了達(dá)到高精度,可以轉(zhuǎn)換到保存在BIGINT中的定點(diǎn)類(lèi)型。這樣可以用64位整數(shù)進(jìn)行所有計(jì)算,根據(jù)需要將結(jié)果轉(zhuǎn)換回浮點(diǎn)值。

3.使用來(lái)自其他數(shù)據(jù)庫(kù)引擎的列類(lèi)型

為了使用由其它賣(mài)方編寫(xiě)的SQL執(zhí)行代碼,MySQL按照下表所示對(duì)列類(lèi)型進(jìn)行映射。通過(guò)這些映射,可以很容易地從其它數(shù)據(jù)庫(kù)引擎將表定義導(dǎo)入到MySQL中:

其它賣(mài)方類(lèi)型MySQL類(lèi)型BOOL,TINYINTBOOLEANTINYINTCHAR VARYING(M)VARCHAR(M)DECDECIMALFIXEDDECIMALFLOAT4FLOATFLOAT8DOUBLEINT1TINYINTINT2SMALLINTINT3MEDIUMINTINT4INTINT8BIGINTLONG VARBINARYMEDIUMBLOBLONG VARCHARMEDIUMTEXTLONGMEDIUMTEXTMIDDLEINTMEDIUMINTNUMERICDECIMAL

在創(chuàng)建表時(shí)對(duì)列類(lèi)型進(jìn)行映射,然后原來(lái)的類(lèi)型定義被丟棄。如果你使用其它賣(mài)方的類(lèi)型創(chuàng)建一個(gè)表,然后執(zhí)行DESCRIBEtbl_name語(yǔ)句,MySQL使用等效的MySQL類(lèi)型來(lái)報(bào)告表的結(jié)構(gòu)。例如:

mysql> CREATE TABLE t (a BOOL, b FLOAT8, c LONG, d NUMERIC);Query OK, 0 rows affected (0.08 sec)mysql> DESCRIBE t;+-------+---------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+-------+---------------+------+-----+---------+-------+| a | tinyint(1) | YES | | NULL | || b | double | YES | | NULL | || c | mediumtext | YES | | NULL | || d | decimal(10,0) | YES | | NULL | |+-------+---------------+------+-----+---------+-------+4 rows in set (0.00 sec)

標(biāo)簽: MySQL 數(shù)據(jù)庫(kù)
相關(guān)文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
91婷婷韩国欧美一区二区| 99热精品在线| 欧美高清视频一区| 久久一二三四| 一区二区三区小说| 国模精品娜娜一二三区| 亚洲精品一区二区三区蜜桃下载| 国产精品自拍三区| 欧美日韩中文另类| 开心九九激情九九欧美日韩精美视频电影| 亚洲精品乱码久久久久久蜜桃91| 欧美国产日韩a欧美在线观看| 不卡欧美aaaaa| 日韩一区二区影院| 国产成人一级电影| 欧美一区二区三区免费大片| 韩国欧美国产1区| 久久久www免费人成精品| 亚洲视频1区2区| 精品一区二区精品| 成人av在线电影| 亚洲一区二区三区四区的| 精品国偷自产国产一区| 久久国产一二区| 欧美精品成人一区二区在线观看| 亚洲天堂网中文字| 成人动漫视频在线| 日本中文一区二区三区| 中文字幕综合网| 精品捆绑美女sm三区| 在线观看免费亚洲| av网站一区二区三区| 五月天国产精品| 成人少妇影院yyyy| 亚洲在线观看免费视频| 久久精品这里都是精品| 欧美一区二区三级| 欧美视频一区在线| 99久久综合精品| 亚洲国产日韩一级| 国产麻豆9l精品三级站| 亚洲福利一二三区| 欧美韩国日本一区| 精品国产精品一区二区夜夜嗨| 色哟哟日韩精品| 亚洲在线黄色| 狠狠色综合网| 青青草国产成人av片免费| 日本一区二区在线不卡| 精品电影一区二区三区| 精品国产免费人成在线观看| 日韩欧美www| 精品国产sm最大网站免费看| 欧美一区二区黄色| 精品久久久久久综合日本欧美| 欧美一卡二卡在线| 制服丝袜av成人在线看| 日韩欧美在线影院| 精品1区2区在线观看| 久久香蕉国产线看观看99| 2019国产精品| 亚洲天堂中文字幕| 一区二区欧美在线观看| 亚洲在线观看免费| 天堂久久久久va久久久久| 久久激情五月激情| 成人爽a毛片一区二区免费| 99久久精品国产精品久久| 欧美日韩精品综合| 精品不卡在线| 久久黄色网页| 在线不卡免费av| 极品中文字幕一区| 香蕉久久国产| 在线不卡欧美精品一区二区三区| 日韩一区二区三区电影| 国产精品日产欧美久久久久| 亚洲午夜激情av| 精品一区免费av| 成人高清免费观看| 国产综合精品| 色妹子一区二区| 欧美精品一级二级三级| 国产视频一区在线播放| 一个色在线综合| 国产精品18久久久久久久久久久久| 91在线观看一区二区| 亚洲欧洲在线一区| 在线播放91灌醉迷j高跟美女| 久久久久久久久久久电影| 亚洲一区二区偷拍精品| 国产成人激情av| 一区二区精品| 3d成人h动漫网站入口| 欧美www视频| 亚洲午夜羞羞片| 成人精品小蝌蚪| 中文精品一区二区三区| 91精品国产综合久久久久久| 国产精品入口麻豆九色| 蜜臀久久久久久久| 欧美日韩国语| 欧美电影影音先锋| **性色生活片久久毛片| 国产在线麻豆精品观看| 亚洲激情一区| 在线播放91灌醉迷j高跟美女 | 国产三级精品视频| aa国产精品| 成人在线视频一区二区| 亚洲综合视频在线观看| 精品日韩一区二区| 另类av一区二区| 99久久精品免费看国产| 亚洲福中文字幕伊人影院| 26uuu精品一区二区| 一本久久精品一区二区| 欧美福利一区| 日韩精品视频网站| 欧美国产欧美综合| 欧美日韩午夜在线视频| 中文一区二区| jizzjizzjizz欧美| 蜜桃精品在线观看| 国产精品第一页第二页第三页| 欧美剧在线免费观看网站| 国产欧美91| 91免费看视频| 美腿丝袜亚洲三区| 亚洲人一二三区| 337p日本欧洲亚洲大胆精品| 欧美亚洲国产怡红院影院| 亚洲每日在线| 成人91在线观看| 理论片日本一区| 一区二区三区日韩在线观看| 久久精品男人的天堂| 欧美精品高清视频| 久久精品在线| 亚洲黄色一区二区三区| 91伊人久久大香线蕉| 国产专区欧美精品| 日韩中文字幕av电影| 亚洲色图第一区| 国产人成一区二区三区影院| 日韩欧美成人激情| 欧美日韩精品一区二区天天拍小说 | 国产精品久久777777毛茸茸 | 亚洲在线日韩| 精品91在线| 99re这里都是精品| 国产99久久久久| 狠狠色丁香久久婷婷综合丁香| 日韩精品成人一区二区三区| 伊人精品在线| 美女脱光内衣内裤视频久久网站| 久久新电视剧免费观看| 精品美女在线观看| 日韩视频一区在线观看| 69av一区二区三区| 在线不卡一区二区| 制服丝袜日韩国产| 777久久久精品| 91精品国产一区二区三区蜜臀| 欧美日韩成人综合| 欧美人妇做爰xxxⅹ性高电影 | 国产精品免费丝袜| 2023国产精品视频| 久久一区二区三区四区| 精品国产一区二区三区av性色| 日韩精品在线一区| 日韩午夜在线观看视频| 欧美一区二区日韩一区二区| 69精品人人人人| 欧美日韩1区2区| 国产精品色网| 一本色道88久久加勒比精品| 国产欧美二区| 亚洲国产综合在线| 色综合久久九月婷婷色综合| 国产老肥熟一区二区三区| 国产一区二区三区的电影 | 国产自产精品| 伊人激情综合| 欧美撒尿777hd撒尿| 久久av中文字幕片| 欧美一区二区视频在线观看2022| 久久久久欧美| 香蕉久久夜色精品国产使用方法| 中文字幕高清不卡| 久久亚洲综合色一区二区三区| 欧美精品在线一区二区三区| 午夜精品一区二区三区四区 | 精品区一区二区| 色综合天天天天做夜夜夜夜做| 国产精品久久一卡二卡| 国产精品久久久久久久久久直播| 国产suv一区二区三区88区| 久久久99久久精品欧美| 国产精品一级|