怎么批量删除多个

mysql怎么批量删除多个表?

数据库教程 2020-10-09 05:49:50 115

导读

mysql批量删除多个表使用DROPTABLE语句可以删除一个或多个数据表,语法格式如下:DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...]对语法格式的说明如下:表名1,表名2,表名3...表示要被删除的数据表的名称。DROPTABLE可以同时删除……

mysql批量删除多个表

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

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

对语法格式的说明如下:

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

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

两点注意:

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

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

实例:

查询数据库中的数据表

mysql> SHOW TABLES;
+--------------------+
| Tables_in_test_db  |
+--------------------+
| tb_emp1            |
| tb_emp2            |
| tb_emp3            |
+--------------------+
2 rows in set (0.00 sec)

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

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

mysql> DROP TABLE tb_emp1,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_emp1和tb_emp3 的表,删除操作成功。


1253067 TFnetwork_cn