mysql联合索引问题

如图一表:

将uid和 gpmid设置成主索引 就报错,其中联合索引需要将uid放第一位,gpmid放第二位

求解~~~

阅读 2.4k
2 个回答

错误信息提示得很清楚了:只能有一个自动增长列,你这张表应该是一个中间表,所以这两个字段没有必要设置成自动增长列

提示的很清楚了:一个表中只允许出现一个自动类型的列,并且需要为它设置key(主键或索引)

你可以这样做:

  1. 移除gpmid的auto属性
  2. 移除uid和gpmid这两个column上的所有索引
  3. 然后创建联合主键
  4. 添加回来gpmid的auto属性
  5. 最后将原来各column上的索引和添加回来

如我下图:
image.png

根据题主的意思,补充下:

两种做法:

  1. 设置联合主键就不要设置自增了,无意义
  2. 如果设置了自增,那么不要设置联合主键,把另一个字段设置为unique就行
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题