先是创建了一个表
CREATE TABLE IF NOT EXISTS emp(
`no` INT(20) AUTO_INCREMENT NOT NULL PRIMARY KEY COMMENT'员工编号',
name VARCHAR(20) NOT NULL COMMENT'姓名',
sex VARCHAR(2) DEFAULT '男' COMMENT'性别',
age INT(3) NOT NULL COMMENT'年龄',
salary DOUBLE(10,2) NOT NULL COMMENT'薪资'
)ENGINE=InnoDB CHARSET=UTF8 COMMENT='员工表';
然后修改第一个字段
ALTER TABLE emp MODIFY no BIGINT(20) AUTO_INCREMENT NOT NULL PRIMARY KEY COMMENT'员工编号';
报错如下
ERROR 1068 (42000): Multiple primary key defined
解决方法:将ALTER代码中的主键PRIMARY KEY 去掉即可
ALTER TABLE emp MODIFY no BIGINT(20) AUTO_INCREMENT NOT NULL COMMENT'员工编号';
解决MySQL创建表后修改主键报错的问题,
文章描述了在MySQL中创建员工表后尝试修改第一个字段no的数据类型,遇到Multipleprimarykeydefined的错误。解决方法是删除ALTER语句中的PRIMARYKEY部分,因为主键已在游戏中定义过。
8364





