Maison > base de données > tutoriel mysql > Comment charger du texte Unicode codé en UTF-8 dans une table MySQL ?

Comment charger du texte Unicode codé en UTF-8 dans une table MySQL ?

Susan Sarandon
Libérer: 2024-10-28 12:10:02
original
667 Les gens l'ont consulté

How to Load Unicode Text Encoded as UTF-8 into a MySQL Table?

Chargement de texte Unicode codé en UTF-8 dans une table MySQL

Pour importer des données d'un fichier CSV contenant des caractères non anglais codés en UTF-8 dans un MySQL table, des étapes spécifiques doivent être prises pour assurer une bonne gestion des caractères.

Configuration du jeu de caractères :

Avant de charger les données, vous devez définir le jeu de caractères de la colonne correspondante dans le tableau à utf8. Cela garantit que la colonne peut stocker des données codées en UTF-8.

Chargement des données avec LOAD DATA INFILE :

Utilisez la syntaxe suivante pour que la commande LOAD DATA INFILE charge les données :

<code class="sql">LOAD DATA INFILE 'file'
IGNORE INTO TABLE table
CHARACTER SET UTF8
FIELDS TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'</code>
Copier après la connexion
  • CHARACTER SET UTF8 : Spécifie que les données sont codées en UTF-8
  • IGNORE : Saute toutes les lignes qui ne se chargent pas correctement en raison de problèmes de codage de caractères
  • CHAMPS TERMINÉS PAR ';' : Remplacez-le par le délimiteur approprié si votre fichier en utilise un autre pour séparer les colonnes
  • OPTIONNELLEMENT ENCLOS PAR '"' : Utilisez ceci si vos données contiennent des caractères spéciaux qui doivent être cités
  • LIGNES TERMINÉES PAR 'n' : Modifier en refléter le caractère de fin de ligne dans votre fichier CSV

Exemple :

<code class="python">import MySQLdb

conn = MySQLdb.connect(host="localhost", user="user", passwd="password", db="database")
cursor = conn.cursor()

# Set the character set of the column
cursor.execute("ALTER TABLE table MODIFY COLUMN column_name VARCHAR(255) CHARACTER SET UTF8")

# Load the data using LOAD DATA INFILE
cursor.execute(
    """
    LOAD DATA INFILE '/path/to/file.csv'
    IGNORE INTO TABLE table
    CHARACTER SET UTF8
    FIELDS TERMINATED BY ';'
    OPTIONALLY ENCLOSED BY '"'
    LINES TERMINATED BY '\n'
    """
)

conn.commit()</code>
Copier après la connexion

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!

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