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报错提示之解决办法,感谢大家的阅读和对我们的支持。

时间: 2019-08-21

docker版本: [root@localhost gae_proxy]# docker version Client: Version: 1.10.3 API version: 1.22 Package version: docker-common-1.10.3-46.el7.centos.10.x86_64 Go version: go1.6.3 Git commit: d381c64-unsupported Built: Thu Aug 4 13:21:17 2016 OS/Arch: l

dockerfile里或者在容器里执行yum,报错,找不到源(invalid baseurl xxx),但是宿主机上执行yum是没问题的啊,为什么? 因为不论是dockerfile使用RUN关键字执行yum还是直接进入到容器里面执行yum,它们都是使用的docker镜像里面的源(CentOS是在路径/etc/yum.repo.d/CentOS-Base.repo),所以你要把宿主机上的同路径下的源拷贝到容器里面,然后docker commit一个新的"基础镜像",这个时候使用docke

Ubuntu下开启php调试模式报错信息解决办法 在Ubuntu下php的缺省设置是不显示错误信息的,如果程序出错会显示"无法处理此请求的错误提示",这在开发环境下非常不方便. 其实我们只要编辑下apache的配置文件就好 1.我的apache 配置文件目录是/etc/apache2/apache2.conf sudo vim /etc/apache2/apache2.conf 再最后加入以下两行 php_flag display_errors on php_value error_r

在5.1.46中优化器在对primary key的选择上做了一点改动: Performance: While looking for the shortest index for a covering index scan, the optimizer did not consider the full row length for a clustered primary key, as in InnoDB. Secondary covering indexes will now be pref

今天在起别人项目的时候, 发现报错. 这个错误是,项目中不识别es6的扩展运算符, 解决方式很简单. // 第一步 cnpm install babel-plugin-transform-object-rest-spread // 第二步 看一下你的 .babelrc 里面是否有识别es6语法的配置 { "presets": [ ["env", { "modules": false, "targets": { "br

会报错如下: org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Mapper method 'com.bill.springMybatis.dao.UserDao.getUserIdByName attempted to return null from a m

具体代码如下所示: var express = require('express'); var mongoose = require('mongoose'); var router = express.Router(); var Person = mongoose.model('Person',{ id:Number, name:String }); /*新增*/ router.get('/insert', function(req, res){ var student = new Person

错误描述: 在开发.net项目中,通过microsoft.ACE.oledb读取excel文件信息时,报错: "未在本地计算机上注册"microsoft.ACE.oledb.12.0"提供程序" 代码示例: static void Main(string[] args) { readexcel("D:\\test\\xlsxtest.xlsx"); } public static void readexcel(string _path) { Da

手头有一台大学时代的Windows电脑,它此前没有装过create-react-app,只装了node环境.版本信息:node -> 10.16.3,npm -> 6.9.0.前几日闲的无事想给它装个React,结果失败了,报了错,所以有了下面这出. 安装过程 根据React官方文档(上图)可以发现,此时并不需要安装create-react-app工具,只要你的node >= 8.10 && npm >= 5.6,就可以直接使用npx create-react-ap

ibatis mysql 同时删多个表报错_MySQL中Multiple primary key defined报错的解决办法相关推荐

  1. Django 出现 “multiple primary key defined”报错

    记录项目中遇到的错误与解决方案 配置 Python版本:3.6 Django版本:1.11.11 Mysql Server版本:8.0.16 IDE:PyCharm 操作系统:Mac OS 错误信息 ...

  2. Mysql存储过程老是报错_mysql中看看这个存储过程老是报错,该如何处理

    mysql中看看这个存储过程老是报错 我的mysql版本是5.5.21的,下面这个存储过程是需要更加另外3张表的数据来更新strategycontracttemp中数据,但是每次更新到中途报错,先代码 ...

  3. android项目模块导入eclipse编译报错,android中studio导入eclipse项目报错怎么办

    android中studio导入eclipse项目报错怎么办 发布时间:2020-07-15 17:34:45 来源:亿速云 阅读:96 作者:清晨 这篇文章将为大家详细讲解有关android中stu ...

  4. mysql下载是port报错_mysql group replication添加复制节点报错

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 恳求各位大神给把把脉,到底问题处在那个环节 环境: 三台物理机 192.168.1.3 192.168.1.4 192.168.1.5 配置文件: [my ...

  5. mysql 日期型中文报错_mysql日期类型默认值'0000-00-00' 报错,是什么问题?

    如题,本来是 从另一个数据库中导出的sql文件,在我电脑上导入报这个错误,不知道是不是mysql 版本问题.多方搜索无果,所以上来求助.DROP TABLE IF EXISTS `workreport ...

  6. python后面空格报错_python中空格和table混用报错原因

    python是一门严格遵守缩进的语言,缩进的规则代表着程序的层级关系.我们来看一段代码.class MyForm(Form): value1 = StringField('value1') value ...

  7. mysql导入存储过程报错_mysql导入建立存储过程或函数报错This function has none of DETERMINISTIC, NO SQL解决办法...

    原因: 这是我们开启了bin-log, 我们就必须指定我们的函数是否是 1 DETERMINISTIC 不确定的 2 NO SQL 没有SQl语句,当然也不会修改数据 3 READS SQL DATA ...

  8. django配置mysql,并解决NameError: name ‘_mysql‘ is not defined报错

    首先需要安装好mysql,然后修改django的setting.py 将原始的: DATABASES = {'default': {'ENGINE': 'django.db.backends.sqli ...

  9. navicat for mysql执行sql语句报错: [Err] 1146 - Table ‘performance_schema.session_status‘doesn‘t exist 解决办法

    navicat for mysql执行sql语句报错: [Err] 1146 - Table 'performance_schema.session_status' doesn't exist 解决办 ...

最新文章

  1. Flameshot:Linux 环境下的一个简洁但功能丰富的截图工具
  2. 【Web API系列教程】1.2 — Web API 2中的Action Results
  3. delphi 的 ORM 框架
  4. RocketMQ源码分析之RocketMQ事务消息实现原下篇(事务提交或回滚)
  5. python语句分为复合语句_复合语句if条件的Python求值
  6. CSS浏览器兼容问题集-第四部分
  7. 白沙工业园新松机器人_常州中智永浩助推机器人行业高质发展 打造机器人领域新优势...
  8. uva12099 Bookcase ACM NWERC
  9. spring cloud gateway集成hystrix全局断路器
  10. Oracle 应用篇+Oracle Siebel CRM
  11. 百度地图LV1.5实践项目开发工具类bmap.util.jsV1.3
  12. 怎样删除androidstudio创建的模拟器
  13. 神经网络架构搜索(NAS)综述
  14. 阻抗匹配四种处理方式
  15. DM达梦数据库集群之分布式集群(MPP)主备
  16. J-Link下载失败解决办法
  17. 求知若饥,虚心若愚——Stay Hungry, Stay Foolish
  18. mount -t nfs报错bad option; bad option; for several filesystems , you might need a /sbin/mount
  19. VX Search Client 9.7.18 漏洞分析及利用
  20. 03.Git 分支管理【详细图文】

热门文章

  1. Ken Thompson爷爷的经典复制自身代码程序 - Python版本(只用两行!)
  2. vb整合多个excel表格到一张_[Excel]同一工作簿中多个工作表保存成独立的表格
  3. Python 内置模块之 ConfigParser - 解析 ini 文件
  4. 机器学习接口和代码之 KNN
  5. Redis Python
  6. python处理ini文件_python对ini配置文件处理
  7. C++代理 Surrogate
  8. Linux 信号之mysleep
  9. 树莓派安装MySQL数据库与卸载
  10. okHttp源码解析------待续