phpmyadmin不允许一个表创建多个主键的解决办法

时间:2023-05-21 13:33:01

在phpmyadmin中执行建表语句

CREATE TABLE `user3` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
`nack` varchar(255) DEFAULT NULL,
PRIMARY KEY (`username`,`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

MySQL 返回: phpmyadmin不允许一个表创建多个主键的解决办法

#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

很明显,这句话的意思是说:定义了多个主键。mysql中是不允许多主键的。但是,我们的主键确实可以有多个字段。

比如使用以下的语句,先删除老的主键,在新增两个字段的主键:

ALTER TABLE `tbname`
DROP PRIMARY KEY,
ADD PRIMARY KEY(
`id`,
`username`);
先设置一个主键,在alter两个主键