Bonjour
comme puis je en SQL changer toutes les tables d'une base de données en INNODB en 1 coup
merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part ALTER TABLE all_my_tables ENGINE = InnoDB;
Bonjour
comme puis je en SQL changer toutes les tables d'une base de données en INNODB en 1 coup
merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part ALTER TABLE all_my_tables ENGINE = InnoDB;
A ma connaissance, ce n'est pas possible.
Dans ton cas, j'aurais tendance à utiliser un script dans un langage tiers qui récupère le nom de toutes les tables d'un schéma :
Ensuite en exploitant les lignes retournées par la précédente requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SHOW FULL TABLES WHERE Table_type = 'BASE TABLE' ;
Code : Sélectionner tout - Visualiser dans une fenêtre à part ALTER TABLE matable SET ENGINE = INNODB ;
merci
j'ai cherche sur internet sans vraiment trouver de solution
une autre solution est de créer un Batch en générant un fichier texte contenant les commandes a exécuter :
Quelque chose comme ;
J'utilise souvent ce genre de génération pour gagner du temps.
Code : Sélectionner tout - Visualiser dans une fenêtre à part select concat_ws(""," ALTER TABLE ",table_schema,".",table_name, " ENGINE = ""Innodb"" ; ",char(13) ) into outfile "C:/Makemybat.bat" from information_schema.tables where table_type = "BASE TABLE" and table_schema <> "mysql"
Bonnes fêtes
Francis
Edit; rajout d'un mot manquant
Partager