Importieren einer CSV-Datei in MySQL mit einem nicht standardmäßigen Datumsformat
Beim Importieren einer CSV-Datei in MySQL können Datumsangaben in a auftreten Format, das nicht mit dem Datentyp DATE kompatibel ist, z. B. „31. Januar 2011“. Um dieses Problem zu beheben, ist es notwendig, das Datum während des Importvorgangs zu konvertieren.
Ein Ansatz besteht darin, PHP zu verwenden, um die Konvertierung durchzuführen, bevor die Daten in eine Tabelle eingefügt werden. Eine effizientere Option besteht jedoch darin, die Konvertierung direkt während des Importvorgangs durchzuführen.
Um dies zu erreichen, können Sie die LOAD DATA INFILE-Anweisung verwenden und ein benutzerdefiniertes Datumsformat angeben. Hier ist ein Beispiel:
LOAD DATA INFILE 'file_name.csv' INTO TABLE table_name FIELDS TERMINATED BY ';' LINES TERMINATED BY '\n' (id, column2, column3, @date_time_variable) -- read one of the field to variable SET date_time_column = STR_TO_DATE(@date_time_variable, '%d-%b-%Y'); -- format this date-time variable
In diesem Beispiel wird die Funktion STR_TO_DATE verwendet, um die Zeichenfolge „31-Jan-2011“ in einen DATETIME-Wert umzuwandeln. Der Formatbezeichner %d-%b-%Y teilt der Funktion mit, dass das ursprüngliche Datum im Format Tag-Monat-Jahr (TT-MM-JJJJ) vorliegt.
Durch die Durchführung dieser Konvertierung während des Importvorgangs können Sie sicherstellen, dass das Datum im richtigen Format in der Datenbank gespeichert wird.
Das obige ist der detaillierte Inhalt vonWie importiere ich eine CSV-Datei mit nicht standardmäßigen Daten in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!