雖然一個(gè)CHAR或VARVHAR的最大長(zhǎng)度可以到255,我認(rèn)為大于20的CHAR是幾乎用不到的——很少有大于20個(gè)字節(jié)長(zhǎng)度的固定長(zhǎng)度的東東吧?不是固定長(zhǎng)度的就用VARCHAR!大于100的VARCHAR也是幾乎用不到的——比這更大的用TEXT就好了。TINYTEXT,最大長(zhǎng)度為255,占用空間也是(實(shí)際長(zhǎng)度 1);TEXT,最大長(zhǎng)度65535,占用空間是(實(shí)際長(zhǎng)度 2);MEDIUMTEXT,最大長(zhǎng)度16777215,占用空間是(實(shí)際長(zhǎng)度 3);LONGTEXT,最大長(zhǎng)度4294967295,占用空間是(實(shí)際長(zhǎng)度 4)。為什么“ 1”?“ 2”?“ 3”?“ 4”?你要是還不知道就該打PP了。這些可以用在論壇啊、新聞啊,什么的,用來(lái)保存文章的正文。根據(jù)實(shí)際情況的不同,選擇從小到大的不同類(lèi)型。
四、枚舉和集合類(lèi)型。
枚舉(ENUM)類(lèi)型,最多可以定義65535種不同的字符串從中做出選擇,只能并且必須選擇其中一種,占用存儲(chǔ)空間是一個(gè)或兩個(gè)字節(jié),由枚舉值的數(shù)目決定;集合(SET)類(lèi)型,最多可以有64個(gè)成員,可以選擇其中的零個(gè)到不限定的多個(gè),占用存儲(chǔ)空間是一個(gè)到八個(gè)字節(jié),由集合可能的成員數(shù)目決定。
舉個(gè)例子來(lái)說(shuō),在SQLServer中,你可以節(jié)約到用一個(gè)Bit類(lèi)型來(lái)表示性別(男/女),但MySQL沒(méi)有Bit,用TINTINT?不,可以用ENUM(帥哥,美眉)!只有兩種選擇,所以只需一個(gè)字節(jié)——跟TINYINT一樣大,但卻可以直接用字符串帥哥和美眉來(lái)存取。真是太方便啦!
好了,MySQL的數(shù)據(jù)類(lèi)型介紹得差不多,我的建庫(kù)策略也隨著介紹數(shù)據(jù)類(lèi)型介紹給大家一些。但這只是其中一部分,篇幅有限,不能再細(xì)說(shuō);其他的,就靠各人在對(duì)數(shù)據(jù)類(lèi)型理解的基礎(chǔ)上,多多實(shí)踐、多多討論。
本新聞共
2頁(yè),當(dāng)前在第
2頁(yè)
1 2