aber die Spaltennamen in CSV und in der Datenbanktabelle sind unterschiedlich, was soll ich tun?
Kein Problem. Sie können angeben, welche CSV-Spalte in welche Datenbankspalte importiert wird.
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 an:
LOAD DATA INFILE 'persondata.txt' INTO TABLE persondata (col1,col2,...);
Wenn ich die INFILE-Syntax zu kompliziert finde, verwende ich gerne einen grafischen Client wie HeidiSQL um die richtige Spaltenreihenfolge zusammenzuklicken (es hat eine grafische Vorschau) und die generierte SQL-Abfrage zu kopieren und einzufügen.