データベースを削除したくない、
私は自分のマシンでウェブサイトをホストしていないので、
データベースを削除するには、データベースを再度作成する必要があり、多くの設定が必要になります。
特定のデータベース内のすべてのテーブルを削除するために使用できるMySQLのコマンドはありますか?
[〜#〜]編集[〜#〜]
私にできることはすべてphpMyAdmin
mysqldump -u [USERNAME] -p [PASSWORD] --add-drop-table --no-data [DATABASE] | grep ^ DROP | mysql -u [USERNAME] -p [PASSWORD] [DATABASE]
ここ データベースを削除せずにすべてのテーブルを削除する方法は他にもあります。
あなたはphpMyAdminでこれを行うことについて話していました。
私はこれをしなければならなかったので、使用しているバージョンがわかりませんが、私が持っているバージョンでは、テーブルリストの一番下までスクロールすると、[すべてチェック]をクリックして、その横にあるドロップダウンで「選択済み:」があり、「ドロップ」を選択すると、すべてのテーブルが空になります。
Information_schemaデータベースからSQLファイルを生成することもできます。
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[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] |
grep ^DROP
Nexこれを実行して、実際にドロップコマンドを実行できます。
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]);
}
それは私のために働きます!