如何删除MySQL数据库中的所有表?

时间:2011-01-18 11:42:32

标签: sql mysql

  

可能重复:
  Truncate all tables in a MySQL database in one command?

我需要在不知道表名的情况下使用单个命令删除或删除MySQL数据库中的所有表。这可能吗?

2 个答案:

答案 0 :(得分:25)

drop database YOUR_DATABASE;
/* this will delete all the tables for this database */

create database YOUR_DATABASE;
/* added back the database namespace */

答案 1 :(得分:-2)

相当长,但尝试这个命令(在替换明显的事情之后):

mysql --user=YOUR_USERNAME --password=YOUR_PASSWORD -BNe "show tables" YOUR_DBSCHEMA_NAME | tr '\n' ',' | sed -e 's/,$//' | awk '{print "SET FOREIGN_KEY_CHECKS = 0;DROP TABLE IF EXISTS " $1 ";SET FOREIGN_KEY_CHECKS = 1;"}' | mysql --user=YOUR_USERNAME --password=YOUR_PASSWORD YOUR_DBSCHEMA_NAME