首页 > 数据库 > mysql教程 > 如果我尝试从AUTO_INCREMENT列中删除PRIMARY KEY约束会发生什么?

如果我尝试从AUTO_INCREMENT列中删除PRIMARY KEY约束会发生什么?

王林
发布: 2023-08-23 21:21:02
转载
1337 人浏览过

如果我尝试从AUTO_INCREMENT列中删除PRIMARY KEY约束会发生什么?

正如我们所知,AUTO_INCREMENT列必须也有PRIMARY KEY约束,因此当我们尝试从AUTO_INCREMENT列中删除PRIMARY KEY约束时,MySQL会返回关于不正确的表定义的错误消息。下面的示例将演示它 −

示例

假设我们有一个名为“Accounts”的表,具有以下描述 −

mysql> Describe accounts;

+--------+-------------+------+-----+---------+----------------+
| Field  | Type        | Null | Key | Default | Extra          |
+--------+-------------+------+-----+---------+----------------+
| Sr     | int(10)     | NO   | PRI | NULL    | auto_increment |
| Name   | varchar(20) | YES  |     | NULL    |                |
| amount | int(15)     | YES  |     | NULL    |                |
+--------+-------------+------+-----+---------+----------------+

3 rows in set (0.10 sec) 
登录后复制

它具有一个带有AUTO_INCREMENT和PRIMARY KEY定义的字段'Sr'。现在,如果我们尝试删除这个PRIMARY KEY,MySQL将抛出以下错误-

mysql> Alter table Accounts DROP PRIMARY KEY;
ERROR 1075 (42000): Incorrect table definition; there can be only one
   auto column and it must be defined as a key
登录后复制

以上是如果我尝试从AUTO_INCREMENT列中删除PRIMARY KEY约束会发生什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板