MyISAM から InnoDB にテーブルを 1 つずつ変更するのは面倒な場合があります。次の記事では、SQL を使用してデータベース内のすべての MyISAM テーブルを InnoDB に迅速に変換するための包括的なソリューションを提供します。
この一括変換を実行するには、次の SQL ステートメントを実行します。
SET @DATABASE_NAME = 'name_of_your_db'; SELECT CONCAT('ALTER TABLE `', table_name, '` ENGINE=InnoDB;') AS sql_statements FROM information_schema.tables AS tb WHERE table_schema = @DATABASE_NAME AND `ENGINE` = 'MyISAM' AND `TABLE_TYPE` = 'BASE TABLE' ORDER BY table_name DESC;
必ず name_of_your_db を実際のデータベースの名前に置き換えてください。 database.
上記の SQL ステートメントを実行すると、各 MyISAM テーブルを InnoDB に変換する SQL ステートメントのリストが出力に表示されます。これらのステートメントを新しい SQL クエリ ウィンドウにコピーして実行します。これにより、データベース内のすべての MyISAM テーブルの変換が実行されます。
InnoDB には、MyISAM に比べて次のような利点があります。
以上がすべての MyISAM テーブルを MySQL の InnoDB に一括変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。