mysql怎么清空表和删减表?


本文摘自PHP中文网,作者青灯夜游,侵删。

mysql中清空表的方法:使用“TRUNCATE 表名”语句,可以完全清空一个表;删减表的方法:使用“DROP TABLE 表名1 [ ,表名2, 表名3 ...];”语句。

mysql清空表

MySQL 提供了 DELETE 和 TRUNCATE 关键字来删除表中的数据。

TRUNCATE 关键字用于完全清空一个表。其语法格式如下:

1

TRUNCATE [TABLE] 表名

其中,TABLE 关键字可省略。

实例

新建表 tb_student_course,插入数据并查询,SQL 语句和运行结果如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

mysql> CREATE TABLE `tb_student_course` (

    -> `id` int(4) NOT NULL AUTO_INCREMENT,

    -> `name` varchar(25) NOT NULL,

    -> PRIMARY KEY (`id`)

    -> );

Query OK, 0 rows affected (0.04 sec)

 

mysql> INSERT INTO tb_student_course(name) VALUES ('Java'),('MySQL'),('Python');

Query OK, 3 rows affected (0.05 sec)

Records: 3  Duplicates: 0  Warnings: 0

 

mysql> SELECT * FROM tb_student_course;

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

| id | name   |

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

|  1 | Java   |

|  2 | MySQL  |

|  3 | Python |

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

3 rows in set (0.00 sec)

使用 TRUNCATE 语句清空 tb_student_course 表中的记录,SQL 语句和运行结果如下:

1

2

3

4

mysql> TRUNCATE TABLE tb_student_course;

Query OK, 0 rows affected (0.04 sec)

mysql> SELECT * FROM tb_student_course;

Empty set (0.00 sec)

mysql删减表

在 MySQL 数据库中,对于不再需要的数据表,我们可以将其从数据库中删除。

在删除表的同时,表的结构和表中所有的数据都会被删除,因此在删除数据表之前最好先备份,以免造成无法挽回的损失。

基本语法

使用 DROP TABLE 语句可以删除一个或多个数据表,语法格式如下:

1

DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...]

对语法格式的说明如下:

  • 表名1, 表名2, 表名3 ...表示要被删除的数据表的名称。DROP TABLE 可以同时删除多个表,只要将表名依次写在后面,相互之间用逗号隔开即可。

  • IF EXISTS 用于在删除数据表之前判断该表是否存在。如果不加 IF EXISTS,当数据表不存在时 MySQL 将提示错误,中断 SQL 语句的执行;加上 IF EXISTS 后,当数据表不存在时 SQL 语句可以顺利执行,但是会发出警告(warning)。

两点注意:

  • 用户必须拥有执行 DROP TABLE 命令的权限,否则数据表不会被删除。

  • 表被删除时,用户在该表上的权限不会自动删除。

实例

选择数据库 test_db,创建 tb_emp3 数据表,输入的 SQL 语句和运行结果如下所示。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

mysql> USE test_db;

Database changed

mysql> CREATE TABLE tb_emp3

    -> (

    -> id INT(11),

    -> name VARCHAR(25),

    -> deptId INT(11),

    -> salary FLOAT

    -> );

Query OK, 0 rows affected (0.27 sec)

mysql> SHOW TABLES;

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

| Tables_in_test_db  |

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

| tb_emp2            |

| tb_emp3            |

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

2 rows in set (0.00 sec)

由运行结果可以看出,test_tb 数据库中有 tb_emp2 和 tb_emp3 两张数据表。

我们来删除数据表 tb_emp3,输入的 SQL 语句和运行结果如下所示:

1

2

3

4

5

6

7

8

9

mysql> DROP TABLE tb_emp3;

Query OK, 0 rows affected (0.22 sec)

mysql> SHOW TABLES;

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

| Tables_in_test_db  |

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

| tb_emp2            |

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

1 rows in set (0.00 sec)

执行结果可以看到,test_db 数据库的数据表列表中已经不存在名称为 tb_emp3 的表,删除操作成功。

推荐教程:mysql视频教程

以上就是mysql怎么清空表和删减表?的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

史上最简单的mysql数据备份与还原教程

mysql怎么清空表和删减表?

mysql删除数据库的命令是什么?

mysql查看数据库命令是什么?

mysql数据查询之连接查询

navicat连接mysql出现错误1045如何解决

mysql如何远程连接端口并修改

如何利用mysql数据库判断null结果为1?

连接nas里mysql数据库的方法

详细讲解mysql全局变量与局部变量

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


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

数据库系统概念 第6版

机械工业出版社

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



打赏

取消

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

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

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

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

评论

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