MySQL自增主鍵與TEXT數(shù)據(jù)類型的正確用法
此文章主要向大家描述的是MySQL自增主鍵與TEXT數(shù)據(jù)類型的正確使用方案, 有時(shí)我們會(huì)用到MySQL數(shù)據(jù)庫(kù),并且還要用到起自增主鍵與TEXT數(shù)據(jù)類型。為了防止忘記,先記錄下TEXT數(shù)據(jù)類型長(zhǎng)度:
- TINYTEXT: 256 bytes
- TEXT: 65,535 bytes => ~64kb
- MEDIUMTEXT: 16,777,215 bytes => ~16MB
- BIGTEXT: 4,294,967,295 bytes => ~4GB
我要建的表,主鍵使用自增數(shù)字,有一個(gè)數(shù)據(jù)列要使用TEXT數(shù)據(jù)類型存放文本,則可寫SQL如下:
- CREATE TABLE Corpus
- (
- id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,
- data TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
- PRIMARY KEY (id)
)先解釋兩個(gè)概念:
字符集是一套符號(hào)和編碼。CHARACTER SET X 表示設(shè)置字符集為X。
校對(duì)規(guī)則是在字符集內(nèi)用于比較字符的一套規(guī)則。存在校對(duì)規(guī)則命名約定:它們以其相關(guān)的字符集名開(kāi)始,通常包括一個(gè)語(yǔ)言名,并且以_ci(大小寫不敏感)、_cs(大小寫敏感)或_bin(二元)結(jié)束。
COLLATE utf8_general_ci 表示utf8_general的不區(qū)分大小寫的校對(duì)規(guī)則(貌似是utf8字符集的默認(rèn)校對(duì)規(guī)則,使用“show collation like ‘utf8%’;”查看)。 其中表名為Corpus。主鍵為id,使用MEDIUMINT數(shù)據(jù)類型,可以表示1-999999間整數(shù)(大概值,不準(zhǔn)確,便于記憶~);UNSIGNED表示無(wú)符號(hào)型;AUTO_INCREMENT表示自增。data列使用TEXT數(shù)據(jù)類型,并且設(shè)置該列的字符集為utf8,校對(duì)規(guī)則為utf8_general且大小寫不敏感。
上述的相關(guān)內(nèi)容就是對(duì)MySQL自增主鍵以及TEXT數(shù)據(jù)類型使用的描述,希望會(huì)給你帶來(lái)一些幫助在此方面。
【編輯推薦】