我不想删除数据库,
因为我的网站并没有托管在自己的机器上,
删除数据库将需要重新创建,并进行许多设置。
MySQL 中是否有一个命令可以用来删除特定数据库中的所有表?
编辑
我所能做的一切都是在 phpMyAdmin 中进行的。
我不想删除数据库,
因为我的网站并没有托管在自己的机器上,
删除数据库将需要重新创建,并进行许多设置。
MySQL 中是否有一个命令可以用来删除特定数据库中的所有表?
编辑
我所能做的一切都是在 phpMyAdmin 中进行的。
Select concat('DROP TABLE database_name.', table_name,';') from information_schema.TABLES where table_schema='database_name';
DROP TABLE database_name.table1;
DROP TABLE database_name.table2;
[...]
DROP TABLE database_name.tableN;
使用mysqldump -u[用户名] -p[密码] --add-drop-table --no-data [数据库名] | grep ^DROP | mysql -u[用户名] -p[密码] [数据库名] 命令可以删除所有表格而不会删除数据库。更多删除所有表格的方法可以参考这里。
mysqldump -u[用户名] -p[密码] --add-drop-table --no-data [数据库名] | grep -e '^DROP \| FOREIGN_KEY_CHECKS' | mysql -u[用户名] -p[密码] [数据库名]
- kiLLua我不知道有什么直接的方法适合您的需求。您可以尝试以下操作:
运行此命令以显示您的删除命令:
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] |
grep ^DROP
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] |
grep ^DROP |
mysql -u[USERNAME] -p[PASSWORD] [DATABASE]
$q=mysql_query("SHOW TABLES FROM ".SQL_DATABASE_NAME);
while($r=mysql_fetch_assoc($q)){
mysql_query("DROP TABLE ".$r["Tables_in_".SQL_DATABASE_NAME]);
}
这对我有用!
select concat('drop table ', group_concat(table_name), ';') from information_schema.tables where table_schema='yourdbname';