Heim  >  Artikel  >  Datenbank  >  Wie importiere ich UTF-8-codierte Daten mit dem Python-Befehl LOAD DATA INFILE in eine MySQL-Tabelle?

Wie importiere ich UTF-8-codierte Daten mit dem Python-Befehl LOAD DATA INFILE in eine MySQL-Tabelle?

Susan Sarandon
Susan SarandonOriginal
2024-10-30 05:27:28919Durchsuche

How to Import UTF-8 Encoded Data into a MySQL Table Using Python's LOAD DATA INFILE Command?

UTF-8-kodierte Daten in MySQL-Tabelle importieren

Beim Importieren großer CSV-Dateien mit nicht-englischen Zeichen in MySQL-Tabellen ist es wichtig, Folgendes zu tun Behandeln Sie die UTF-8-Kodierung ordnungsgemäß, um eine Zeichenbeschädigung zu verhindern.

Um UTF-8-kodierte Daten mit dem Python-Befehl LOAD DATA LOCAL INFILE in eine MySQL-Tabelle zu laden, führen Sie die folgenden Schritte aus:

  1. Zeichensatz festlegen: Stellen Sie sicher, dass der Zeichensatz der Zielspalte mithilfe der CHARACTER SET-Klausel in Ihrer Abfrage zur Tabellenerstellung oder -änderung explizit auf UTF8 festgelegt ist.
  2. Geben Sie die UTF-8-Kodierung an: Fügen Sie die Option CHARACTER SET UTF8 in den Befehl LOAD DATA INFILE ein, um die UTF-8-Kodierung der importierten Daten explizit anzugeben.
  3. Kodierungsfunktion festlegen (optional): Abhängig von Um die spezifische Kodierung Ihrer Daten anzupassen, müssen Sie möglicherweise eine geeignete Kodierungsfunktion mit den Anweisungen SET NAMES oder SET CHARACTER SET angeben, bevor Sie den Befehl LOAD DATA INFILE ausführen.
  4. Feld- und Zeilenabschlusszeichen konfigurieren (optional): Definieren Sie die in Ihrer CSV-Datei verwendeten Feld- und Zeilenabschlüsse mit den Optionen FIELDS TERMINATED BY bzw. LINES TERMINATED BY.

Der folgende Python-Code zeigt beispielsweise das Laden einer CSV-Datei mit UTF-8 codierte Daten in eine MySQL-Tabelle:

<code class="python">import mysql.connector

conn = mysql.connector.connect(
    user='username',
    password='password',
    host='localhost',
    database='database'
)

cursor = conn.cursor()

# Create a table with a UTF-8 character set
query = """
CREATE TABLE IF NOT EXISTS utf8_table (
  id INT AUTO_INCREMENT PRIMARY KEY,
  data VARCHAR(255) CHARACTER SET utf8
);
"""
cursor.execute(query)
conn.commit()

# Load the UTF-8 encoded CSV file
query = """
LOAD DATA INFILE 'utf8_data.csv'
IGNORE INTO TABLE utf8_table
CHARACTER SET UTF8
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
"""
cursor.execute(query)
conn.commit()

cursor.close()
conn.close()</code>

Indem Sie diese Schritte befolgen, können Sie UTF-8-codierte Daten erfolgreich in Ihre MySQL-Tabelle importieren und dabei die nicht-englischen Zeichen genau beibehalten.

Das obige ist der detaillierte Inhalt vonWie importiere ich UTF-8-codierte Daten mit dem Python-Befehl LOAD DATA INFILE in eine MySQL-Tabelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn