Java规范分享
作者:风控 赵文豪
日期: 2019-5-29
一:数据库设计规范
1:命名规范
采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上 _ 组成;
命名尽量简洁,见名知意
Eg : lrm_product_name 风控产品名称 采用英文+下划线组成
一个库中的命名格式保持统一
不要一个表中出现多种不同字段格式 LrmProductName LRM_PRODUCT_NAME等等
建议全部使用小写加下划线 _
2:建表规范
1.建表时建议选择InnoDB引擎 utf-8字符集 所有的表和字段都要加上注释
想了解InnoDB引擎可以参考:
https://blog.csdn.net/tanliqing2010/article/details/81509539
2.设置主键为自增的id
主键作用:每行记录的唯一标识
想要详细了解主键可以参考:
https://blog.csdn.net/shellching/article/details/77367557
3.禁止使用外键,外键会导致表与表之间的耦合,影响性能,也有可能会造成死锁
想了解为什么不推荐使用外键可以参考
https://www.cnblogs.com/rjzheng/p/9907304.html
4.一个表建立的索引不要超过5个
索引可以增加查询效率,但是会影响插入和更新的效率
想要详细了解索引,可以自行百度
5.字段设置为非空并设置默认值
varchar类型默认为空字符串
注:每个表都需要有以下三个字段
add_time设置为datetime类型,默认值为 0000-00-00 00:00:00 用来记录添加时间
update_time设置为timestamp类型,默认值为ON UPDATE CURRENT_TIMESTAMP 用来记录更新时间
del_flag设置为tinyint类型,默认值为0 0:正常 1:逻辑删除
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP和CURRENT_TIMESTAMP区别
TIM