MySQL - 什么是正确的主键方法

Ham*_*ein 3 mysql primary-key

我开始使用MySQL开发应用程序,虽然我在使用数据库之前已经开发了应用程序,但我通常会使用递增id方法.有一天,我正在某个地方阅读帖子,看到有人因为没有正确地"正常化数据库"而被分开.我不是一个大数据库人,但我想确保我做对了.

任何想法,帮助/指导?

Dan*_*llo 5

选择主键有两种主要方法:

  • 从现有自然候选键中选择主.
  • 创建代理键,并将其设置为主键.与自然键不同,代理键不是从应用程序数据派生的.这是您使用自动递增方法的键类型.

这两种方法都有一般优点和缺点,您可能希望在某些情况下选择自然键,在其他情况下选择代理键.

我希望这是一个简短的介绍,以便您可以进一步研究如何选择合适的主键.