创建主键可以有两种方式:
create table 表名(
字段名 类型,
字段名 类型,
……
primary key(name)
);
或者是
create table 表名(
字段名 类型 primary key,
字段名 类型,
……
);
但是要注意的是,想要创建复合主键,就不可以用第二种方式。
下面列举一个小例子:
这里报错Multiple primary key defined,表示定义了多个主键,正确的写法是如下:
如果项设置复合主键,复合主键的特点是同时创建、同时删除,所以需要把主键删除,但是这里设置了自增,需要先把自增删除,才可以删除主键,如果不先删除自增,而直接删除主键的话会报错(如下)。
需要先删除自增:
这里我们创建复合主键的话,把name字段上的普通索引先删除掉,再给stu_id和name字段同时创建复合主键:
总结:文章开头写的两种创建主键的方式,第二中方式不可以在创建复合主键的时候用;复合主键要同时创建、同时删除。
以上就是MySQL中出现Multiple primary key defined报错提示之解决办法,感谢大家的阅读和对脚本之家的支持。
您可能感兴趣的文章:- IDEA连接mysql报错的问题及解决方法
- IDEA连接mysql又报错!Server returns invalid timezone. Go to tab and set serverTimezone prope的问题
- 解决springboot 连接 mysql 时报错 using password: NO的方案
- 详解Mysql数据库date, datetime类型设置0000-00-00默认值(default)报错问题
- 解决安装mysqlclient的时候出现Microsoft Visual C++ 14.0 is required报错
- mysql存储emoji表情报错的处理方法【更改编码为utf8mb4】
- IDEA链接MySQL报错08001和连接成功后不显示表的问题及解决方法