Vous devez exécuter une instruction alter table pour chaque table. L'instruction doit prendre la forme suivante :
ALTER TABLE tbl_name
[[DEFAULT] CHARACTER SET charset_name]
[COLLATE collation_name]
Maintenant, pour obtenir toutes les tables de la base de données, vous devez exécuter la requête suivante :
SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA="YourDataBaseName"
AND TABLE_TYPE="BASE TABLE";
Laissez maintenant MySQL écrire le code pour vous :
SELECT CONCAT("ALTER TABLE ", TABLE_SCHEMA, '.', TABLE_NAME," COLLATE your_collation_name_here;") AS ExecuteTheString
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA="YourDatabaseName"
AND TABLE_TYPE="BASE TABLE";
Vous pouvez copier les résultats et les exécuter. Je n'ai pas testé la syntaxe mais vous devriez être capable de comprendre le reste. Considérez cela comme un petit exercice.
J'espère que cela vous aidera !