LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

阿里的MySQL建表规范,居然只有10条

admin
2024年8月1日 20:40 本文热度 581

很多公司有很厚一本的MySQL规范,规范内容越多,越难落地执行。


阿里的MySQL建表强制规范只有10条,大伙可以参考借鉴。




画外音,另外:

索引强制规范有4条,SQL强制规范有9条;

建议规范与参考规范若干。




规范一:是否字段

1. 表达是否概念的字段,必须使用is_xxx的形式命名;

2. 数据类型必须是 unsigned tinyint;

3. 1表示是,0表示否;

举例:是否删除

正确:使用is_deleted,1表示删除,0表示未删除

错误:deleted, if_deleted, delete_or_not


规范二:字母与数字

1. 表名,字段名禁止出现大写;



画外音:MySQL在Windows下不区分大小写,Linux下虽然区分,但为了避免节外生枝,统一禁止大写。



2. 禁止数字开头,禁止两个下划线中间只有数字;

举例:

正确:aliyun_admin,level3_name

错误:AliyunAdmin,level_3_name


规范三:表名禁止使用复数

表名表示实体内容,不是实体数量,禁止使用复数。


规范四:禁止使用保留字

常见的例如:desc,range,match,delayed...


规范五:主键,唯一索引,普通索引命名规范

1. 主键索引名:pk_xxx



画外音:primary key



2. 唯一索引名:uk_xxx



画外音:unique key



3. 普通索引名:idx_xxx


画外音:index




规范六:小数类型规范

1. 小数类型使用decimal;

2. 禁止使用float和double;



画外音:float和double存在精度损失,比较的时候,可能得到意想不到的结果。



3. 如果范围超过decimal,可以拆成整数与小数分开存储;


规范七:字符串长度非常相近,必须使用定长char


画外音:预先分配存储空间,不会触发重新分配。




规范八:可变字符串规范

1. 如果字符串长度较长,且内容长度差异较大,使用varchar;



画外音:不预先分配存储空间,比较节省空间。



2. 如果字符串长度大部分超过5000,使用text,独立出一张表单独存储;



画外音:避免影响主表其他字段索引效率。




规范九:强制字段

1. 必须具备id字段:类型为bigint unsigned,单表时自增,步长为1,不具备业务含义;

2. 必须具备create_time字段:类型为datetime(除非记录时区信息,使用timestamp);

3. 必须具备update_time字段:同上;


规范十:禁止进行物理删除操作


画外音:逻辑操作保留了数据资产的同时,能够追溯操作行为。




贵司有MySQL规范吗?你觉得他们的建表规范合理吗?



来源丨公众号:架构师之路(ID:road5858)

该文章在 2024/8/2 18:33:15 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved