无论我是否已经定义了主键,如何创建复合主键。MySQL

Mar*_*ado 2 mysql composite-primary-key

我有一个带有主键自动增量的表,并且遇到重复数据问题。为了解决这个问题,我尝试创建一个复合主键,但这是不可能的:#1068 - Multiple primary key defined.

我不能删除主键,因为与其他表有关系,而且我不能只将唯一约束放在一列中,因为规则是复合的。

我能做些什么?我正在使用MySQL。

sta*_*san 5

修改表上的主键是一项棘手的工作。当定义了现有的键时,这一点更加正确auto-increment

不过,您可以创建一个复合唯一键。

ALTER TABLE tablename ADD UNIQUE KEY (`column1`, `column2`);
Run Code Online (Sandbox Code Playgroud)