加入收藏 | 设为首页 | 会员中心 | 我要投稿 航空爱好网 (https://www.52kongjun.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL中Multiple primary key defined报错的解决办法

发布时间:2022-02-24 12:47:49 所属栏目:MySql教程 来源:互联网
导读:创建主键可以有两种方式: create table 表名( 字段名 类型, 字段名 类型, primary key(name) ); 或者是 create table 表名( 字段名 类型 primary key, 字段名 类型, ); 但是要注意的是,想要创建复合主键,就不可以用第二种方式。 下面列举一个小例子
       创建主键可以有两种方式:
 
create table 表名(
字段名 类型,
字段名 类型,
……
primary key(name)
);
或者是
 
create table 表名(
字段名 类型 primary key,
字段名 类型,
……
);
      但是要注意的是,想要创建复合主键,就不可以用第二种方式。
下面列举一个小例子:
 
      这里报错Multiple primary key defined,表示定义了多个主键,正确的写法是如下:
 
     如果项设置复合主键,复合主键的特点是同时创建、同时删除,所以需要把主键删除,但是这里设置了自增,需要先把自增删除,才可以删除主键,如果不先删除自增,而直接删除主键的话会报错(如下)。
 
需要先删除自增:
 
这里我们创建复合主键的话,把name字段上的普通索引先删除掉,再给stu_id和name字段同时创建复合主键:
  
总结:文章开头写的两种创建主键的方式,第二中方式不可以在创建复合主键的时候用;复合主键要同时创建、同时删除。

(编辑:航空爱好网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!