是否可以在一个表中创建两个主键?

mjd*_*per 8 mysql

嗨,我想知道是否可以在MySQL的一个表中创建两个主键.如果是这样,请解释这背后的概念.我问,因为我看过一个表,其中有两个主键没有设置自动增量.

oez*_*ezi 9

你只能有一个主键,但是:

  • 你可以组合多个列作为主键(也许这就是你所看到的)
  • 主键不需要是自动增量,它必须是唯一的
  • 您可以向一个或多个列添加多个索引以加快SELECT语句(但减慢INSERT/UPDATE)
  • 这些索引可以标记为唯一,这意味着它们不允许您在索引字段中插入具有相同内容的第二行(就像主键一样)