MySQL中Multiple primary key defined报错的解决办法
创建主键可以有两种方式:
create table 表名( 字段名 类型, 字段名 类型, …… primary key(name) );
或者是
create table 表名( 字段名 类型 primary key, 字段名 类型, …… );
但是要注意的是,想要创建复合主键,就不可以用第二种方式。
下面列举一个小例子:

这里报错Multiple primary key defined,表示定义了多个主键,正确的写法是如下:

如果项设置复合主键,复合主键的特点是同时创建、同时删除,所以需要把主键删除,但是这里设置了自增,需要先把自增删除,才可以删除主键,如果不先删除自增,而直接删除主键的话会报错(如下)。

需要先删除自增:

这里我们创建复合主键的话,把name字段上的普通索引先删除掉,再给stu_id和name字段同时创建复合主键:

总结:文章开头写的两种创建主键的方式,第二中方式不可以在创建复合主键的时候用;复合主键要同时创建、同时删除。
以上就是MySQL中出现Multiple primary key defined报错提示之解决办法,感谢大家的阅读和对免费资源网的支持。
上一篇:macOS下mysql 8.0.16 安装配置图文教程
栏 目:其它数据库
本文标题:MySQL中Multiple primary key defined报错的解决办法
本文地址:https://zz.feitang.co/shujuku/30932.html
您可能感兴趣的文章
- 12-20使用DataGrip连接Hive的详细步骤
- 12-20debian10 mariadb安装过程详解
- 12-20MySQL索引失效的几种情况详析
- 12-20详解mysql持久化统计信息
- 12-20Robo可视化mongoDb实现操作解析
- 12-20MySQL 字段 LIKE 多个值
- 12-20Redis fork进程分配不到内存解决方案
- 12-20mysql插入前判断数据是否存在的操作
- 12-20基于navicat连接登录windows10本地wsl数据库
- 12-20Linux安装MariaDB数据库的实例详解


阅读排行
推荐教程
- 12-07mysql存储过程太慢怎么办
- 12-06redis通信协议(protocol)
- 12-05mysql的事务,隔离级别和锁用法实例分析
- 12-04MySQL一次性创建表格存储过程实战
- 12-03深入理解Redis内存淘汰策略
- 12-20PhpMyAdmin出现错误数据无法导出怎么办?
- 12-19Redis中实现查找某个值的范围
- 12-15浅析mysql迁移到clickhouse的5种方法
- 12-15CentOS7 64位下MySQL5.7安装与配置教程
- 12-14Mysql大型SQL文件快速恢复方案分享





