logo
Published on

怎么挑选合适的主键

设计数据实体时, 挑选合适的主键会影响后续开发和系统升级的难易程度.

在实际设计之前,我们需要知道

  1. 业界常用的设计
  2. 设计适用的场景

第一个问题

我们应该使用代理键(Surrogate)还是自然键(Natural)?

代理键由系统生成 并且和业务字段没有联系,例如一个由数据库生成的UUID

自然键则刚好相反,是基于存在的业务字段生成或直接使用的键,例如用户的身份证ID

代理键的优点

自然键的优点

数据类型和大小