可能重复:
Truncate all tables in a MySQL database in one command?
我需要在不知道表名的情况下使用单个命令删除或删除MySQL数据库中的所有表。这可能吗?
答案 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