andychinaunix 发表于 2013-11-05 14:32

MySQL 建表规范

最近给公司开发同学总结了下建表规范,贴出来供大家参考,也请大伙多提提意见!
1、库名、表名、字段说明:
1-1.库名、表名、字段名必须使用小写字母,“_”分割。
1-2.库名、表名、字段名必须不超过12个字符。
1-3.库名、表名、字段名见名知意,建议使用名词而不是动词。
2、浮点数:
      存储精确浮点数必须使用decimal,替代使用float和double。
3、尽量不使用text和blog      
4、尽量字段定义为notnull   
5、 数据类型尽量用数字类型,数据类型尽量小
6、建表时要考虑不同表之间的相同属性值的字段,列类型,类型长度,是否非空,是否默认值,需保持一致,否则无法正确使用索引进行关联对比。
7、建索引时要注意,综合评估数据密度和数据分布,不要建重复索引,index(column1,column2,column3),相当于建立了 index(column1),index(column1,column2)和index(column1,column2,column3)三个索引。
8、非唯一索引的索引命名格式:idx_tablename_column
9、唯一索引的索引命名格式:uniq_tablename_column
10、每个表的第一个字段设置自增主键id(建议使用auto_increment),该id 本身与业务无关。
11、杜绝将图片存在数据库中。
12、不要使用mysql关键字作为表名和字段名
页: [1]
查看完整版本: MySQL 建表规范