轉換一個資料庫中的所有表
要輕鬆轉換一個資料庫中的所有表,請使用以下命令:
SET @DB_NAME = DATABASE();
SELECT CONCAT('ALTER TABLE `', table_name, '` ENGINE=InnoDB;') AS sql_statements
FROM information_schema.tables
WHERE table_schema = @DB_NAME
AND `ENGINE` = 'MyISAM'
AND `TABLE_TYPE` = 'BASE TABLE';
注意: 你應該連線到你的資料庫以使
DATABASE()
功能正常工作,否則它將返回NULL
。這主要適用於伺服器附帶的標準 mysql 客戶端,因為它允許連線而無需指定資料庫。
執行此 SQL 語句以檢索資料庫中的所有 MyISAM
表。
最後,複製輸出並從中執行 SQL 查詢。