Mysql
 sql >> Datenbank >  >> RDS >> Mysql

CSV-Datei direkt in MySQL importieren

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.

LOAD DATA INFILE-Syntax

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.