Comment exporter la table vers CSV dans MySQL

Comment exporter la table vers CSV dans MySQL
Le fichier CSV est un format de fichier texte très courant pris en charge par de nombreuses applications. La forme complète du CSV est des valeurs séparées par des virgules. Cela signifie que les données sont séparées par une virgule dans chaque ligne de ce fichier. Il est principalement utilisé pour échanger des données tabulaires entre différents types d'applications qui prennent en charge ce format de fichier. XML est un autre format de fichier couramment utilisé pour échanger des données entre les applications. Mais le fichier CSV est une meilleure option que le fichier XML, car il faut moins d'espace et de bande passante qu'un fichier XML. Vous devez exporter des données au format CSV à partir d'une application avant d'importer les données dans une autre application. MySQL prend en charge diverses façons d'exporter des données à partir de tables de base de données. Le format CSV en est une façon. Cet article montre différentes façons d'exporter des données au format CSV à partir du tableau de la base de données MySQL.

Prérequis:

Avant d'exécuter une instruction d'exportation, vous devez créer une nouvelle base de données et des tables ou sélectionner une base de données et des tables existantes. Exécutez les commandes suivantes pour créer un bibliothèque base de données et trois tables nommées livres, emprunteurs et book_borrow_info.

Créer une bibliothèque de bases de données;
Utiliser la bibliothèque;
Créer des livres de table (
id int not null auto_increment,
titre varchar (50) pas null,
Auteur Varchar (50) pas null,
éditeur varchar (50) pas null,
Clé primaire (ID)
) Moteur = inNODB;
Créer des emprunteurs de table (
id varchar (50) pas null,
nom varchar (50) pas null,
Adresse Varchar (50) pas nul,
Email Varchar (50) pas null,
Clé primaire (ID)
));
Créer une table book_borrow_info (
Borrow_id Varchar (50),
book_id int,
emprunter_date ne pas nul,
return_date date non nul,
statut varchar (15) pas null,
Index par_ind (book_id),
Clé primaire (emprunter_id, emprunter_date),
Clé étrangère (book_id) références aux livres (id)
Sur Supprimer Cascade
Sur Mise à jour Cascade);

Exécutez les commandes SQL suivantes pour insérer certaines données en trois tables.

Insérer dans les valeurs des livres
(Null, «To Kill a Mockingbird», «Harper Lee», «Grand Central Publishing»),
(Null, «Cent ans de solitude», «Garcia Marquez», «Lutfi Ozkok»),
(Null, «Invisible Man», «Ralph Ellison», «Encyclopadeia Britannica, Inc.');
Insérer dans les valeurs des emprunteurs
('123490', 'Patrick Wood', '34 West Street Lancaster LA14 9ZH ',' Wood @ Gmail.com '),
('157643', 'Ezra Martin', '10 The Grove Birmingham B98 1EU ',' Martin @ hotmail.com '),
('146788', 'Frederick Hanson', '85 Highfield Road Shrewsbury Sy46 3me ',
'Hanson @ gmail.com ');
Insérer dans les valeurs Book_Borrow_info
(«123490», 1, «2020-02-15», «2020-02-25», «retourné»),
(«157643», 2, «2020-03-31», «2020-03-10», «en attente»),
(«146788», 3, «2020-04-10», «2020-01-20», «emprunté»);

Chaque fichier exporté se stocke dans un emplacement particulier dans MySQL et l'emplacement est stocké dans la variable, "Secure_file_priv". Exécutez la commande suivante pour découvrir le chemin du fichier. Ceci est une variable en lecture seule que vous ne pouvez pas changer.

Afficher des variables comme "Secure_File_Priv";

L'emplacement du fichier est '/ var / lib / mysql-files /'. Vous devez utiliser cet emplacement au moment de l'exécution de la commande d'exportation.

Données d'exportation au format CSV en utilisant dans OutFile Instruction:

Toute table de base de données peut être exportée en utilisant Dans Outfile déclaration. Supposons que je souhaite exporter les données du livres tableau. Exécutez la commande suivante pour vérifier les données existantes de ce tableau.

Sélectionner * dans les livres;

Tout nom de fichier avec .CSV L'extension peut être définie pour le nom de fichier d'exportation. Exécutez la commande d'exportation suivante pour créer livres.CSV fichier à l'emplacement,/ var / lib / mysql-files /.

Sélectionnez Titre, auteur, éditeur de Books Into OutFile '/ var / Lib / MySQL-Files / Books.CSV ';

Accédez à l'emplacement d'exportation pour vérifier que le fichier est créé sur. Cliquez sur le fichier pour afficher le contenu du fichier. Si la virgule existe en tant que contenu de n'importe quelle valeur de champ du tableau, il séparera la valeur en plusieurs valeurs. Dans le livres tableau, éditeur Le champ contient une virgule (,) comme contenu dans le troisième enregistrement. Si vous examinez le contenu du fichier CSV, vous verrez que le contenu de l'éditeur est séparé en deux valeurs qui ne sont pas appropriées.

Pour résoudre le problème ci-dessus, vous pouvez exporter le livres Tableau des données dans un fichier CSV en spécifiant correctement les délimiteurs nécessaires dans l'instruction SQL. Exécutez la commande suivante pour exporter livres se dérober livres2.CSV fichier de manière appropriée. Ici, trois délimiteurs sont utilisés pour exporter correctement les données. Ceux-ci sont Champs terminés par, ENFERMÉ PAR et Lignes terminées par.

Sélectionnez le titre, auteur, éditeur dans les livres
Dans OutFile '/ var / lib / mysql-files / books2.csv '
Les champs terminés par ','
ENFERMÉ PAR '"'
Lignes terminées par '\ n';

Maintenant, si vous ouvrez le livres2.CSV Fichier alors vous verrez que le problème précédent est résolu dans ce fichier et les données de la virgule (,) ne sont pas divisées en plusieurs valeurs.

Exporter des données au format CSV à l'aide du client MySQL:

Les données de la table peuvent être exportées dans un fichier CSV en utilisant le client MySQL. Le tableau des emprunteurs est exporté dans cette partie de cet article. Exécutez la commande suivante pour vérifier le contenu existant de ce tableau.

Sélectionner * chez les emprunteurs;

mysql déclaration avec 'Sed' La commande est utilisée ici pour exporter les données. L'un des avantages de cette déclaration est que vous pouvez définir n'importe quel emplacement et nom de fichier pour stocker le fichier CSV sans l'emplacement par défaut qui est utilisé dans l'exemple précédent. S'il n'y a pas de mot de passe pour l'utilisateur racine, alors -p L'option sera omise. L'emplacement exporté est / tmp Et le nom de fichier est sortir.CSV ici.

mysql -h localhost -u root -p -e 'select * dans la bibliothèque.Emprunteurs '|
sed 'S / \ t /, / g'> / tmp / sortie.CSV

Si vous ouvrez le sortir.CSV fichier alors la sortie suivante apparaîtra.

Données d'exportation au format CSV à l'aide de phpmyadmin:

La table de base de données peut être exportée très facilement dans le fichier CSV en utilisant n'importe quel outil administratif de la base de données. Vous devez installer l'outil avant de faire l'exportation. phpmyadmin est utilisé ici pour exporter la table dans le fichier CSV. Ici, le nom de fichier exporté sera le nom de la table. Exécutez l'URL suivante dans n'importe quel navigateur pour afficher la liste de base de données existante du serveur MySQL.

http: // localhost / phpmyadmin

Sélectionnez le tableau de la base de données que vous souhaitez exporter et cliquez sur le Exporter Tab du côté droit. Sélectionnez le format CSV dans le Format liste déroulante et cliquez sur le feu vert bouton. Sélectionnez le Enregistrer le fichier Option et appuyez sur le ok bouton.


Le fichier sera téléchargé dans le Téléchargements dossier. Ici, book_borrow_info La table est exportée. Ainsi, le nom de fichier CSV sera book_borrow_info.CSV Et le contenu suivant apparaîtra si vous ouvrez le fichier.

Conclusion:

La tâche d'échange de données entre les applications devient plus facile en utilisant la fonction d'exportation du serveur de base de données. MySQL prend en charge de nombreux autres formats de fichiers pour exporter les données de la table. Le SQL Le format de fichier est principalement utilisé pour transférer des données entre les mêmes serveurs de base de données. Le format CSV est très utile si vous souhaitez échanger des données entre deux applications différentes.