information_schema
を使用できます テーブル名を検索し、結果を一連のDROP
としてフォーマットすることもできます ステートメント。
SELECT CONCAT('DROP TABLE ', TABLE_NAME, '; ')
FROM information_schema.tables
WHERE table_schema = DATABASE() AND table_name NOT IN ('foo', 'bar', 'baz');
(DATABASE()
関数は現在のuse
を返します 'dデータベース。)
PREPARE
を使用する およびEXECUTE
、コピー&ペーストを回避することもでき、(MySQL 5.0.13以降では)これを行うためのストアドプロシージャを作成します。