Philipp Hasenfratz: Import Datum aus Textdatei / Format umwandeln mySQL+PHP

Beitrag lesen

Halihallo Marina

Das Datum in Textdatei hat das Format 13.01.05 (dd.mm.jj)
Die Spalte in der Datenbank ist VARCHAR(8)
Wie kann ich das Datum beim importieren umwandeln, damit es in
der Datenbank in das Format DATE 0000-00-00 (jjjj-mm-dd) past.

Entweder du lässt ein PHP-Script die CSV-Datei auslesen und wandelst
die Daten-Werte über PHP in das von MySQL geforderte Format, oder
du verwendest eine temporäre Import-Tabelle, lädst dort die CSV über
LOAD DATA INFILE ein und überführst dann dieses Zwischenergebnis
mittels

REPLACE INTO real_table SELECT ... FROM temp_table

in die "richtige", produktive Tabelle ein (indem du aber den Datums-
Wert entsprechend in ISO-8601 bringst).

Enpfehlen würde ich ersteres: Schreib ein Script, welches die CSV
Zeilenweise ausliest, den Datums-Wert in das ISO-8601 Format bringt
und die Werte über einen INSERT in die Tabelle einpflegt (bzw. eine
neue CSV generiert, welche dann über LOAD DATA INFILE eingespiesen
wird).

Viele Grüsse

Philipp