数据库——3.数据库的设计规范(实用版)

本文从实用角度总结了数据库设计的关键点,包括表的属性应设为utf8mb4字符集和utf8mb4_0900_ai_ci排序规则,表名遵循特定命名规则,字段设计中强调了必有字段如id、precision、乐观锁字段等,并提出了字段类型选择、长度限制和非空约束的建议。文章提倡在实践中遵循一定的规范以提高效率。
摘要由CSDN通过智能技术生成

前面也出过一篇文章,那篇文章里面详细介绍了数据库的设计规范,包括方方面面的内容。说实话,其实里面好多东西都是一种习惯的问题,用不用都影响不大,只要知道那个概念,遇见时能理解,需要时会使用就行,没必要纠结太多。

目录

1.表的设计

1.1表的属性

1.2表的名称

2.字段设计

2.1必有字段

2.2详细讲述

2.3其他注意事项

3.小结


而这篇文章,主要是从实用的角度出发,去繁化简,总结一下数据库的设计规范,这个是需要在实践中牢记并使用的。

1.表的设计

1.1表的属性

记住,无论什么表

字符集:utf8mb4

排序规则:utf8mb4_0900_ai_ci(就是第一个)

1.2表的名称

好的名称能够容易分便表的作用

  1. 实体表(切切实实存数据的):t_xxx_xxx
  2. 关系表(存表与表之间的关系的):ref_xxx_xxx
  3. 字典表:dic_xxx_xxx

注意事项:

  1. 各种类型的表的开头是一致的
  2. 表名要见名知意,不同单词间用"_"连接

如下图:

2.字段设计

2.1必有字段

每个数据库都必须有下面的这些字段:

  • id (bigint unsigned)
  • recision (int unsigned)乐观锁
  • creator(varchar(32) )创建人
  • updater(varchar(32))更新人
  • create_time(datetime)创建时间
  • update_time(datetime)更新时间
  • del_flag(int unsigned)删除标志

2.2详细讲述

id 不用多说,必有字段

注意:类型要用 bigint unsigned ,不要用bigint

原因:bigint,默认是有符号,即取值范围是正负范围;bigint unsigned,无符号,即取值范围就是正值范围;使用bigint unsigned 在使用B+树索引时更方便更高效

recision:乐观锁

暂时不知道啥用,加上也不碍事

creator / updater:就是记录信息用的,没啥

create_time / update_time:也是记录信息的,方便后面的使用

del_flag:记录是否删除用的

注意:我们对数据库中所有数据的删除操作只能是软删除,也就是说用update这个关键字来删除,而不是用delete;我们对数据库中数据的所有查询操作都要带上del_flag这个字段,根据里面的内容,确定是否显示

2.3其他注意事项

  1. varchar的长度一般设置为32就够了,不用设置为255,除非特别长的情况,不然不设置为255
  2. 所有的字段都必须为非空字段,也就是说你要设置默认值

3.小结

这篇文章就是从实操角度讲了一些数据库设计时的一些规范性问题。主要设计表和字段两方面。不要嫌弃麻烦,实操时最好都用上。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

L纸鸢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值