2011-10-08 55 views
2

我有一個數據庫,我有永久版本的表格,我做了副本,然後轉換爲內存引擎以獲得更快的性能。有沒有辦法通過引擎類型刪除數據庫中的所有表?沿線的東西:MySQL drop表,其中引擎是內存

drop * from db1 where engine = memory; 

有什麼建議嗎?

+0

這屬於dba.stackexchange.com –

回答

3

你可以得到表名的列表使用以下查詢:

select table_name 
from information_schema.tables 
where table_schema = 'db1' and engine = 'memory'; 

,然後生成一個查詢,刪除它們。據我所知你不能在drop語句中使用表達式/子查詢作爲表名,所以你將不得不使用2個查詢或爲此創建一個存儲過程。