不要使用业务键作为数据库主键

💡 原文中文,约2700字,阅读约需7分钟。
📝

内容提要

本文反对使用自然键作为数据库表的主键,建议使用合成键。自然键提供了数据的唯一标识和唯一性约束,但不适合作为数据库主键。应该使用合成键作为数据库主键。

🎯

关键要点

  • 反对使用自然键作为数据库表的主键,建议使用合成键。
  • 自然键是由外部属性组成的唯一键,提供数据的唯一标识和唯一性约束。
  • 自然键与代理键不同,代理键在数据库之外没有意义。
  • 自然键可能在某些情况下看似有效,但实际上可能不唯一。
  • 使用自然键可能导致数据录入错误和更新异常。
  • 系统设计应允许对数据进行更正,因此不应使用外部定义的自然键作为数据库键。
  • 结论是自然键不适合数据库设计,应该使用合成键作为主键。
➡️

继续阅读