mysql欄位型別優化

2021-07-22 22:08:06 字數 1121 閱讀 8961

選型原則:在保證足夠用的前提下盡量選擇最小型別!

①儲存人的年齡應該使用哪種資料型別?答:使用

tinyint

型別(無符號型) ②

儲存烏龜的年齡應該使用哪種資料型別?答:使用

smallinit

型別(無符號型) ③

儲存乙個

1500

萬資料的資料表其主鍵

id應該選擇哪種資料型別?答:使用

mediumint

(無符號型),大約在

0-1600

萬左右

①考慮空間問題

②考慮範圍問題(unsigned無符號)

char(length)占用的空間為 固定的,與內容多少無關;

varchar(length)占用的空間為 實際內容字元個數*位元組 + 1

①如果要儲存乙個

11位的手機號碼?答:選擇

char(11

)比較合適 ②

如果要儲存乙個

32位的

md5加密密碼?答:選擇

char(32

)比較合適 ③

如果要儲存乙個使用者名稱或乙個標題,由於不確定具體要存放多少個字元,為了避免空間的浪費建議使用

varchar

型別。

④如果要儲存乙個描述資訊(不超過

250個漢字),使用

varchar

(255

)比較合適。

如果要儲存乙個文字資訊(文章內容),其超過了

255個字元,建議使用

text

文字型別。

在實際應用中,由於date型別主要用於儲存時間資訊,但是在php中,我們有相關的函式可以對整型資料和時間進行轉化,所以實際應用中,大部分情況儲存時間都是轉化為整型資料直接儲存的

5、列舉型別與集合型別

如果程式中有單選或多選情況,不建議使用varchar型別,而建議使用列舉型別或集合型別。

經常要儲存ip位址,這個時候不建議使用varchar型別來儲存資料,而建議使用整型來儲存ip資訊

//php中ip轉整形

echo ip2long("192.168.1.1");

//整形轉ip

echo long2ip(3232235777);

mysql欄位型別解析 MySQL欄位型別最全解析

前言 要了解乙個資料庫,我們必須了解其支援的資料型別。mysql 支援大量的字段型別,其中常用的也有很多。前面文章我們也講過 int 及 varchar 型別的用法,但一直沒有全面講過字段型別,本篇文章我們將把字段型別一網打盡,講一講常用字段型別的用法。常用的字段型別大致可以分為數值型別 字串型別 ...

mysql 優化系列之欄位型別選取

mysql 優化是乙個很有意思的話題,可以從很多方面來說,大到伺服器集群,應用體系架構等,小到字段型別選擇,儲存引擎的選擇等,隨著mysql的發展,到目前 最新版本是8.0,筆者5.7 innodb 已是預設的儲存引擎 mysql 5.5 已將innodb作為預設儲存引擎 所以盡量選擇使用innod...

mysql時間型別欄位的優化技巧

最近開發乙個功能時需要查詢今天開播的主播使用者。在業務上我們有乙個資料表儲存了主播每次開播的記錄。表中有乙個時間型別的字段表示主播開播時間。為了業務安全,這裡用time欄位表明實際欄位.record表示資料表 在開始實現的時候想到的就是time 今天這種實現邏輯上比較直接。select distin...