Maison > base de données > tutoriel mysql > Comment importer efficacement des fichiers texte délimités par des tabulations dans MySQL à l'aide de LOAD DATA INFILE ?

Comment importer efficacement des fichiers texte délimités par des tabulations dans MySQL à l'aide de LOAD DATA INFILE ?

Barbara Streisand
Libérer: 2024-12-23 03:13:09
original
394 Les gens l'ont consulté

How to Efficiently Import Tab-Delimited Text Files into MySQL Using LOAD DATA INFILE?

Importation de données à partir de fichiers texte dans MySQL avec LOAD DATA INFILE

L'importation de grands ensembles de données dans MySQL à partir de fichiers texte peut être une tâche courante lorsqu'il s'agit de scénarios d'analyse ou d'intégration de données . L'un des moyens les plus efficaces d'y parvenir consiste à utiliser la commande LOAD DATA INFILE.

Structure de la commande

La commande LOAD DATA INFILE suit une syntaxe spécifique :

LOAD DATA INFILE 'file_path'
INTO TABLE table_name
FIELDS TERMINATED BY 'delimiter'
LINES TERMINATED BY 'line_delimiter'
(column_list)
Copier après la connexion

Importation délimitée par des tabulations Données

Comme mentionné dans votre question, votre fichier texte contient des données délimitées par des tabulations. Par défaut, LOAD DATA INFILE prend la tabulation comme délimiteur de champ. Par conséquent, la commande suivante devrait importer vos données :

LOAD DATA INFILE '/tmp/text_file.txt'
INTO TABLE PerformanceReport;
Copier après la connexion

Spécification des délimiteurs

Si votre fichier utilise un délimiteur différent, vous pouvez le spécifier en utilisant les CHAMPS TERMINÉS PAR clause. Par exemple, si vos données sont séparées par des virgules :

LOAD DATA INFILE '/tmp/text_file.txt'
INTO TABLE PerformanceReport
FIELDS TERMINATED BY ','
Copier après la connexion

Définition du délimiteur de ligne

La clause LINES TERMINATED BY spécifie le caractère de fin de ligne. Par défaut, c'est 'n' pour une nouvelle ligne. Si votre fichier utilise un caractère différent, ajustez en conséquence.

LOAD DATA INFILE '/tmp/text_file.txt'
INTO TABLE PerformanceReport
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n';  # If your file uses CRLF as line delimiter
Copier après la connexion

Mappage des colonnes

La partie (column_list) vous permet de spécifier le mappage entre les colonnes du fichier texte et les colonnes de la table de base de données. Si l'ordre et le nombre de colonnes correspondent, vous pouvez omettre cette partie.

Exemple avec le mappage de colonnes

Supposons que votre fichier texte comporte des colonnes supplémentaires non présentes dans la table PerformanceReport. . Vous pouvez spécifier uniquement les colonnes pertinentes dans votre commande :

LOAD DATA INFILE '/tmp/text_file.txt'
INTO TABLE PerformanceReport (id, date, value, keyword, cost, clicks)
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\r\n';
Copier après la connexion

Autres considérations

  • Assurez-vous que l'utilisateur exécutant la commande dispose des privilèges nécessaires pour importer données.
  • Le fichier texte doit être accessible au serveur de base de données.
  • Les importations de données volumineuses peuvent nécessiter l'ajustement des paramètres de mémoire pour performances optimales.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal