Základní myšlenkou je spustit „zobrazit tabulky“ ve vaší databázi a použít výsledky z toho k výběru požadovaných tabulek. Nemyslím si, že vám MySQL umožňuje cokoliv dělat s výslednou sadou z "ukázat tabulky", ale pravděpodobně se mýlím.
Zde je rychlé a špinavé řešení pomocí shellu:
mysql -u your_user -D your_database_name -e "show tables" -s |
egrep "^Whatever_" |
xargs -I "@@" echo mysql -u your_user -D your_database_name -e "DROP TABLE @@"
Tím se vytisknou všechny příkazy shellu k odstranění tabulek začínajících "Whatever_". Pokud chcete, aby tyto příkazy skutečně provedl, odstraňte slovo „echo“.
UPRAVIT :Zapomněl jsem vysvětlit výše uvedené! Nevím, nakolik jste obeznámeni se skriptováním shellu, ale tady je:
mysql -u your_user -D your_database_name -e "show tables" -s
vytiskne seznam všech vašich tabulek se záhlavím "Tabulky_v_název_vaší_databáze". Výstup z toho je zprostředkován (symbol | znamená „přenesený“, jako při předávání) prostřednictvím následujícího příkazu:
egrep "^Whatever_"
vyhledá všechny řádky, které začínají (které symboly ^ znamenají „bytosti s“) slovem „Whatever_“ a vytiskne pouze ty. Nakonec tento seznam tabulek "Whatever_*" propojíme pomocí příkazu:
xargs -I "@@" echo mysql -u your_user -D your_database_name -e "DROP TABLE @@"
který vezme každý řádek v seznamu názvů tabulek a vloží jej místo "@@" v příkazu
echo mysql -u your_user -D your_database_name -e "DROP TABLE @@"
Takže pokud byste měli spoustu tabulek s názvem „Whatever_1“, „Whatever_2“, „Whatever_3“, vygenerované příkazy by byly:
echo mysql -u your_user -D your_database_name -e "DROP TABLE Whatever_1"
echo mysql -u your_user -D your_database_name -e "DROP TABLE Whatever_2"
echo mysql -u your_user -D your_database_name -e "DROP TABLE Whatever_3"
Výsledkem bude následující:
mysql -u your_user -D your_database_name -e "DROP TABLE Whatever_1"
mysql -u your_user -D your_database_name -e "DROP TABLE Whatever_2"
mysql -u your_user -D your_database_name -e "DROP TABLE Whatever_3"
Doufám, že to bylo dost podrobností a že přílišnými informacemi jen tak někoho neotluču o hlavu. Hodně štěstí a buďte opatrní při používání příkazu "DROP TABLE"!