mysql如何删除主键?


当前第2页 返回上一页

例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

mysql> create table test1_2(

    -> id int not null  auto_increment,

    -> name char(10),-> primary key(id)

    -> );

Query OK, 0 rows affected (0.00 sec)

 

mysql> desc test1_2;

+-------+----------+------+-----+---------+----------------+

| Field | Type     | Null | Key | Default | Extra          |

+-------+----------+------+-----+---------+----------------+

| id    | int(11)  | NO   | PRI | NULL    | auto_increment |

| name  | char(10) | YES  |     | NULL    |                |

+-------+----------+------+-----+---------+----------------+

2 rows in set (0.00 sec)

如果直接删除,会报错

1

mysql> alter table test1_2 drop primary key;

输出:

1

2

ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key              

#这说明此列是自动增长列,无法直接删除

列的属性还带有AUTO_INCREMENT,那么要先将这个列的自动增长属性去掉,才可以删除主键。

1

2

3

4

5

6

7

mysql> alter table test1_2 modify id int;

Query OK, 0 rows affected (0.03 sec)

Records: 0  Duplicates: 0  Warnings: 0

 

mysql> alter table test1_2 drop primary key;

Query OK, 0 rows affected (0.02 sec)

Records: 0  Duplicates: 0  Warnings: 0

以上就是mysql如何删除主键?的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

mysql如何防止sql注入

mysql中视图的用法介绍(代码示例)

mysql中innodb存储引擎的详细介绍(代码示例)

mysql出现10055错误怎么办

mysql如何添加索引

sql与mysql区别与联系

mysql特点是什么

分析mysql表读写、索引等操作的sql语句效率优化问题

mysql在linux下最简单的安装方法

mysql使用联合索引功能的示例代码分享

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...

    正在狠努力加载,请稍候...