日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 芯聞號 > 充電吧
[導(dǎo)讀]1.數(shù)據(jù)類型的長度盡量?。涸跐M足要求的前提下數(shù)據(jù)類型長度越小,需要的存儲空間也就越小,同時(shí)需要讀取的CPU周期可能也會越少,可以提高性能 2.數(shù)據(jù)類型盡量簡單:因?yàn)楫?dāng)數(shù)據(jù)類型比較簡單的時(shí)候說明其規(guī)則也

1.數(shù)據(jù)類型的長度盡量小:在滿足要求的前提下數(shù)據(jù)類型長度越小,需要的存儲空間也就越小,同時(shí)需要讀取的CPU周期可能也會越少,可以提高性能 2.數(shù)據(jù)類型盡量簡單:因?yàn)楫?dāng)數(shù)據(jù)類型比較簡單的時(shí)候說明其規(guī)則也比較簡單,這樣帶來的操作代價(jià)也就會越小 3.盡量避免NULL:
原因:a:NULL可能會需要額外的存儲空間?
?????????? b.存在NULL的列會使得MySql更難優(yōu)化,因?yàn)榇嬖贜ULL的列當(dāng)做索引的時(shí)候,可能會使得索引的值比較和索引統(tǒng)計(jì)都比較困難
?????????? c:當(dāng)可為NULL的列被索引時(shí),每一個索引記錄會需要一個額外的字節(jié)。 數(shù)據(jù)類型簡介: 整型: 主要有 tinyint ? smallint ?mediumint ? int ?bigint ? 這5種數(shù)據(jù)類型,他們的數(shù)據(jù)類型的長度是固定的。分別是8bit ? 16bit ? 24bit ? 32bit ? 64bit 這樣可以得到存儲空間的大小 ?int(11),表示的展示長度,如果指定了 ?zerofill ? 那么就會顯示11位 (00000000001)
實(shí)數(shù)類型:Decimal ?用于存儲精確的小數(shù)。可以指定小數(shù)點(diǎn)前后允許的最大位數(shù)DECIMAL(18,9)小數(shù)點(diǎn)前后各有9個數(shù)字。每4個字節(jié)存儲9個數(shù)字。一共需要9個字節(jié),前后各4個字節(jié),小數(shù)點(diǎn)一個字節(jié)。 float和double在計(jì)算的時(shí)候會使用浮點(diǎn)運(yùn)算,可能導(dǎo)致一些奇怪的結(jié)果。但是decimal會需要更大的空間和計(jì)算開銷,所以應(yīng)該盡量在對小數(shù)需要精確計(jì)算的時(shí)候使用decimal
字符串類型:CHAR 和VARCHAR:一個是定長字符串,一個是不定長字符串,CAHR會為每一個記錄創(chuàng)建固定大小的存儲空間,而VARCHAR則是需要多少分配多少,但是會需要額外的空間記錄當(dāng)前占用空間的多少,所以,VARCHAR(200),記錄“a”時(shí),需要兩個字節(jié),一個字節(jié)記錄大小,而VARCAHR(2000)的列自會需要額外兩個字節(jié), 因?yàn)?000超過了255,VARCHAR是比較節(jié)省空間,但是當(dāng)有UPDATE 操作的時(shí)候可能產(chǎn)生碎片,而CHAR則不需要考慮這個問題, CHAR 會將字符串末尾的空格截?cái)啵瑢τ诔L的字符串InooDb會將VARCHAR轉(zhuǎn)為BLOB ? 更長的列會使用更大的內(nèi)存,而mysql一般會分配固定內(nèi)存,如果長度較長的時(shí)候,在內(nèi)存中進(jìn)行臨時(shí)表排序的時(shí)候性能會有影響,所以需要多少,要求多少才是最佳選擇 ? ? ? ? ? ? ? ? ? ? ? ? ?BLOB 和TEXT:是為存儲很大數(shù)據(jù)類型而設(shè)計(jì)的,兩者的不同僅在于存儲類型的不同,前者是二進(jìn)制,后者是字符串,如果值過大,那么mysql會使用外部存儲,行內(nèi)存儲的是指針,指向外部存儲的內(nèi)容? ? ? 同時(shí)這兩個類型的排序方式也是不一樣的,他會指定max_sort_length,只進(jìn)行比較前n個字符,而不是全部,以期獲得比較好的性能 ? ENUM類型:直說一句,在存儲的時(shí)候ENUM類型存儲的并不是我們指定的字符串,而是數(shù)字,這是mysql為了壓縮空間使用的方法,而在讀取時(shí)是根據(jù).frm文件進(jìn)行的轉(zhuǎn)換,也就是在表定義中存儲的映射關(guān)系

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉