都图科技doutoo.com
首页/技术知识/开发实践

数据库表设计:从命名规范到字段类型

开发实践 2026.03.14|约 5 分钟|软件事业部 出品

表结构一旦上线,改动成本会随着数据量增长而快速上升。所以在设计阶段多花半天,往往能省下后期几周的迁移改造工作。

一、命名规范统一

  • 表名用小写 + 下划线,用业务名词而非缩写
  • 字段名表达含义,不用 a、flag1 这类命名
  • 关联字段与被关联表的主键命名保持一致
  • 避免使用数据库保留字

规范的直接收益是:写 SQL 时不用查字典,接手的人不用猜。

二、主键与关联

  1. 主键使用无业务含义的自增或雪花 ID,避免用业务编号
  2. 业务唯一性用唯一索引约束,而不是靠应用层判断
  3. 关联字段类型必须与主表主键一致,否则索引会失效
业务编号做主键的代价

业务编号可能被修改、可能重复使用、可能很长的字符串。一旦成为主键,所有关联表都要跟着改。

三、字段类型与长度

场景建议
金额定点小数类型,不使用浮点
时间统一使用标准时间类型,不用字符串存时间
状态用短整型或枚举,不用中文文本
文本区分定长与变长,长文本单独考虑

四、索引:按查询来设计

  • 先列出核心查询场景,再决定索引,不要"每个字段都加索引"
  • 组合索引注意字段顺序,把区分度高的放前面
  • 避免在索引列上做函数运算,会导致失效
  • 定期检查未被使用的索引,及时清理

五、五个必要的公共字段

建议每张业务表都带上:创建时间、更新时间、创建人、更新人、逻辑删除标记。它们在排查问题、数据审计、误删恢复时都会派上用场。等到需要的时候才加,通常已经补不回历史数据了。

← 上一篇前后端联调效率怎么提升