English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

MySQL Import Data

Dans cette section, nous vous présentons plusieurs commandes d'importation de données MySQL simples.

1Importation avec la commande  mysql

L'utilisation de la commande mysql suit le format de syntaxe suivant pour l'importation :

mysql -uNom d'utilisateur    -pMot de passe  <  Données de base de données à importer(w3codebox.sql)

Exemple :

# mysql -uroot -p123456 < w3codebox.sql

Les commandes ci-dessus importent l'ensemble de la base de données  w3codebox.sql Importation.

2Importation avec la commande  source

Pour importer une base de données avec la commande source, il est nécessaire de se connecter d'abord au terminal de la base de données :

mysql> create database abc;      # Création de la base de données
mysql> use abc;                # Utilisation de la base de données créée 
mysql> set names utf8;           # Configuration de l'encodage
mysql> source /home/abc/abc.sql  # Importation de la base de données de sauvegarde

3Importation de données avec  LOAD DATA

MySQL fournit l'instruction LOAD DATA INFILE pour insérer des données. Dans l'exemple suivant, le fichier dump.txt dans le répertoire courant sera lu et les données du fichier insérées dans la table mytbl de la base de données actuelle.

mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;

 Si la clé词LOCAL est spécifiée, cela indique que le fichier est lu à partir de l'hôte client selon le chemin. Si elle n'est pas spécifiée, le fichier est lu sur le serveur selon le chemin.

Vous pouvez spécifier explicitement le séparateur de valeurs de colonnes et le marqueur de fin de ligne dans l'instruction LOAD DATA, mais le marqueur par défaut est le point d'interrogation et le retour chariot.

La syntaxe des clauses FIELDS et LINES des deux commandes est la même. Les deux clauses sont optionnelles, mais si elles sont toutes deux spécifiées, la clause FIELDS doit apparaître avant la clause LINES.

Si l'utilisateur spécifie une clause FIELDS, ses sous-clauses (TERMINATED BY, [OPTIONALLY] ENCLOSED BY et ESCAPED BY) sont également optionnelles, mais l'utilisateur doit au moins en spécifier une.

mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl
  -> FIELDS TERMINATED BY ':'
  -> LINES TERMINATED BY '\r\n';

LOAD DATA insère par défaut les données suivant l'ordre des colonnes du fichier de données. Si les colonnes du fichier de données ne correspondent pas aux colonnes de la table d'insertion, il est nécessaire de spécifier l'ordre des colonnes.

Par exemple, si l'ordre des colonnes dans le fichier de données est a,b,c, mais que l'ordre des colonnes dans la table d'insertion est b,c,a, la syntaxe d'importation des données est la suivante :

mysql> LOAD DATA LOCAL INFILE 'dump.txt' 
    -> INTO TABLE mytbl (b, c, a);

4、Utilisation de mysqlimport pour importer des données

Le client mysqlimport fournit une interface en ligne de commande pour la clause LOAD DATA INFILEQL. La plupart des options de mysqlimport correspondent directement à la clause LOAD DATA INFILE.

Pour importer les données du fichier dump.txt dans la table de données mytbl, vous pouvez utiliser la commande suivante :

$ mysqlimport -u root -p --local mytbl dump.txt
mot de passe *****

Le command mysqlimport peut spécifier des options pour définir le format spécifique, la syntaxe de la commande est la suivante :

$ mysqlimport -u root -p --local --fields-terminated-by=":" \
   --lines-terminated-by="\r\n"  mytbl dump.txt
mot de passe *****

L'expression mysqlimport utilise --L'option columns peut être utilisée pour définir l'ordre des colonnes :

$ mysqlimport -u root -p --local --columns=b,c,a \
    mytbl dump.txt
mot de passe *****

Présentation des options courantes de mysqlimport

OptionFonction
-ou --deleteSupprimez toutes les informations de la table de données avant d'importer les nouvelles données dans la table de données.
-ou --forcemysqlimport continuera à insérer les données强制继续插入数据, même s'il y a des erreurs.
-ou --ignoremysqlimport ignore ou passe outre ceux qui ont une unique              Ligne de clé, les données importées dans le fichier seront ignorées.
-l or -lock-tablesLock the table before inserting data, which prevents                When you update the database, the user's queries and updates are affected.
-r or -replaceThis option is the opposite of the -i option; this option will replace                           Records with the same unique key in the table.
--fields-enclosed- by=charSpecify what is enclosed when recording data in the text file, often                 Data is enclosed in double quotes. By default, data is not enclosed in characters.
--fields-terminated- by=charSpecify the separator between the values of each data, in period-separated files,                 The separator is the period. You can use this option to specify the separator between data.                 The default separator is the tab character (Tab). You can use this option to specify the separator between data.
--lines-terminated- by=strThis option specifies the separator string between lines in the text file                or character. By default, mysqlimport uses newline as the line separator.                You can use a string to replace a single character:                 A new line or an enter.

mysqlimport Common Options Include -v Show version (version), -p Prompt for input password (password) and others.