Modifier une table dans MySQL
Les structures de tables peuvent être modifiées dans MySQL-admin dans la même interface que celle
utilisée pour la création mais l!accès à cette interface peut se faire par MySQL-Query-Browser par un clic-
droit sur la table en question.
Créer une table à partir d!une requête SELECT
Dans la pratique, lorsqu!on a déjà une base de données chargées, il est facile de créer des tables à partir
d!autres tables pour peu que ces dernières contiennent les données nécessaires à l!alimentation de la
nouvelle table à créer. Il suffit pour cela de faire précéder la requête SELECT de la commande SQL
“CREATE TABLE nom_de_la_table ” . Cela créera une table avec tous les attributs présents dans la clause
SELECT mais pas les index ni la clé primaire qu!il faudra penser à ajouter par après.
Extraire des données d!une
table existante
Utiliser l!outil MySQL-Query-Browser
Ecrire une requête SELECT pour sélectionner les éléments
à extraire, ex. : “SELECT * FROM table” pour obtenir tous
les éléments de la table “table”.
Ensuite aller dans le menu File, puis “Export Resultset” et
sauvegarder dans le type souhaité selon l!usage prévu du
fichier.
Charger une table à partir d!un fichier
La commande
permet de charger la table “ tbl_name” avec le fichier “ datafile.csv” si celui-ci est de type txt, avec le point-
virgule en guise de séparateur de champs et le guillemet double en guise de délimiteur de champs textuel.
Le point-virgule peut être remplacé par une virgule, une tabulation, ou autre mais il faut alors le préciser
dans la requête ci-dessus, de même pour le délimiteur de champs. Les fins de lignes sont des caractères
invisibles qui dépendent du système d!exploitation ou du logiciel utilisé pour créer le fichier; “\r\n” correspond
à un encodage sous windows, “\r” à Mac OS et “\n” à Linux, mais cela peut varier et il vaut mieux être
prudent. La clause “IGNORE” indique un nombre de lignes à ignorer au début du fichier et est facultative
comme les autres clauses détaillées ci-dessus.
Charger une BD avec MySQL Migration Toolkit
L!outil MySQL Migration Toolkit permet de transférer dans MySQL le contenu et la structure entière d!une
base de données telle qu!un fichier MS Access ou une base de données Oracle, MS SQL Server, etc (mais
pas PostgreSQL). Il crée d!abord le script de création de la base et ensuite le script d!insertion des données,
on peut donc éventuellement s!en servir pour ne faire qu!une seule de ces étapes. En particulier les fichiers
Access sont généralement définis avec des formats de taille maximale (varchar(256), bigint, ...) et on peut
saisir l!occasion pour les redéfinir avant de charger les données dans MySQL.
3
“LOAD DATA LOCAL INFILE 'datafile.csv' INTO TABLE tbl_name FIELDS TERMINATED
BY ';' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES;”