An einem Punkt Ihrer Anwendung müssen Sie möglicherweise eine CSV-Datei in MySQL importieren. Der Importvorgang kann auf verschiedene Arten erreicht werden, und eine davon ist die Verwendung des MySQL-Befehls LOAD DATA INFILE.
Anhand des obigen Beispiels gibt es ein mögliches Szenario, in dem Spaltennamen in der CSV-Datei und der Datenbanktabelle vorhanden sind anders. Wie lässt sich eine solche Situation berücksichtigen?
Die Lösung besteht darin, anzugeben, welche CSV-Spalte in welche Datenbankspalte importiert wird. Mit der LOAD DATA INFILE-Syntax können Sie dies tun.
Wenn am Ende der LOAD DATA INFILE-Anweisung keine Spaltenliste bereitgestellt wird, wird standardmäßig erwartet, dass Eingabezeilen ein Feld für jede Tabellenspalte enthalten. Wenn Sie nur einige Spalten einer Tabelle laden möchten, geben Sie eine Spaltenliste wie diese an:
LOAD DATA INFILE 'persondata.txt' INTO TABLE persondata (col1,col2,...);
Wenn Sie die INFILE-Syntax zu kompliziert finden, ist die Verwendung eines grafischen Clients wie HeidiSQL ein guter Ansatz Klicken Sie auf die richtige Spaltenreihenfolge (es gibt eine grafische Vorschau) und kopieren Sie dann die generierte SQL-Abfrage und fügen Sie sie ein.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit nicht übereinstimmenden Spaltennamen beim Importieren von CSV-Dateien in MySQL um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!