CSV-File in MySQL DB importieren

Tja, man lernt doch nie aus. Wollte gerade ne CSV-File nach MySQL importieren und dachte zunächst, das ich mir dafür wohl ein kleines "Helperscript" schreiben müßte. Weit gefehlt, MySQL kann dieses auch allein ;)

Mit der Anweisung LOAD DATA INFILE bringt man MySQL dazu, eine CSV-File in eine bestehende (leere!?!) Tabelle zu importieren. Klappt ausgezeichnet und wenn man wie ich nen Exel Export als Basis hat, reicht sogar ne leere Anfangsspalte in der Exel bzw. CSV-File, die entsprechende MySQL Spalte mit "auto_increment" und PRIMARY KEY vorbereitet und schon hat die ganze Tabelle nach dem Import sogar ne eineindeutige ID (für den Fall das der Export aus Exel diese nicht hat *sfg*)

Hier mal ein kleines Beispiel:

LOAD DATA LOCAL
        INFILE ‚/home/www/servers/www.servername.de/tmp/import.csv‘
        REPLACE
        INTO TABLE tabellenname
        FIELDS
                TERMINATED BY ‚;‘
                OPTIONALLY ENCLOSED BY ‚"‘;

 

 Mehr Infos gibt es unter mysql.com

3 thoughts on “CSV-File in MySQL DB importieren

  1. Ich selbst arbeite sehr viel mit CSV Dateien, gerade deshalb, um große Datenmengen schnell in die MySQL-Datenbank einzulesen. Ich nutze dabei die Navagio Schnittstelle. Bei dem hier genannten Standard MySQL-Importer habe ich halt das Hindernis, dass ich Daten nur 1zu1 in die Datenbank laden kann und nicht mit Abhängigkeiten, Funktionsaufrufen oder Bedingungen so wie ich es benötige… Aber trotzdem ist das ein guter Tipp für zwischendurch, danke dafür!

Comments are closed.