規(guī)則1:一般情況可以選擇MyISAM存儲(chǔ)引擎,如果需要事務(wù)支持必須使用InnoDB存儲(chǔ)引擎。
注意:MyISAM存儲(chǔ)引擎 B-tree索引有一個(gè)很大的限制:參與一個(gè)索引的所有字段的長(zhǎng)度之和不能超過1000字節(jié)。另外MyISAM數(shù)據(jù)和索引是分開,而InnoDB的數(shù)據(jù)存儲(chǔ)是按聚簇(cluster)索引有序排列的,主鍵是默認(rèn)的聚簇(cluster)索引,因此MyISAM雖然在一般情況下,查詢性能比InnoDB高,但I(xiàn)nnoDB的以主鍵為條件的查詢性能是非常高的。
規(guī)則2:命名規(guī)則。
數(shù)據(jù)庫和表名應(yīng)盡可能和所服務(wù)的業(yè)務(wù)模塊名一致
服務(wù)與同一個(gè)子模塊的一類表應(yīng)盡量以子模塊名(或部分單詞)為前綴或后綴
表名應(yīng)盡量包含與所存放數(shù)據(jù)對(duì)應(yīng)的單詞
字段名稱也應(yīng)盡量保持和實(shí)際數(shù)據(jù)相對(duì)應(yīng)
聯(lián)合索引名稱應(yīng)盡量包含所有索引鍵字段名或縮寫,且各字段名在索引名中的順序應(yīng)與索引鍵在索引中的索引順序一致,并盡量包含一個(gè)類似idx的前綴或后綴,以表明期對(duì)象類型是索引。
約束等其他對(duì)象也應(yīng)該盡可能包含所屬表或其他對(duì)象的名稱,以表明各自的關(guān)系
規(guī)則3:數(shù)據(jù)庫字段類型定義