我正在尝试运行此查询:
ALTER TABLE table DROP PRIMARY KEY, ADD PRIMARY KEY( `CUSTNO` , `DEPTNO` , `PRODNO` , `DT` );
我得到了
Incorrect table definition; there can be only one auto column and it must be defined as a key
答案 0 :(得分:4)
你必须改变你的pk列,使其不再具有auto_increment修饰符。
答案 1 :(得分:1)
你必须在3(或4)步骤中完成这项工作:
编辑:也许设置一个新的主要不是你真正想要做的。请查看unique indexes - 我认为您希望在其他列上设置它们以确保它们不会出现多次。
答案 2 :(得分:0)
首先,如果我是正确的,你是在定义复合键吗?这通常是不好的做法。最好有一个额外的ID列,并添加一个单独的约束来检查您是否有一个独特的组合。正如codymanix建议的那样,你需要先将列改为不再使用auto_increment然后删除它。