Apabila mengimport fail CSV ke MySQL, adalah perkara biasa untuk menemui format tarikh yang berbeza daripada format yang dikehendaki, seperti '31-Jan-2011' dan bukannya '2011-01-31'. Untuk menyelesaikan isu ini, MySQL menawarkan penyelesaian menggunakan fungsi STR_TO_DATE() semasa proses import data.
Daripada melakukan penukaran dalam PHP dan memasukkan ke dalam jadual berasingan, penyelesaian disediakan oleh pakar melibatkan pengubahsuaian data semasa import itu sendiri. Kod berikut menunjukkan cara untuk mencapai ini:
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
Dalam kod di atas, @date_time_variable mewakili pembolehubah sementara yang menyimpan tarikh rentetan dalam fail CSV ('31-Jan-2011' dalam kes ini) . Fungsi STR_TO_DATE() kemudian menukar rentetan ini ke dalam format yang diingini ('2011-01-31'). Hasilnya diberikan kepada lajur date_time_column dalam jadual.
Untuk mendapatkan maklumat lebih terperinci tentang pendekatan ini, rujuk dokumentasi MySQL tentang LOAD DATA INFILE Syntax.
Atas ialah kandungan terperinci Bagaimana untuk Mengimport Data CSV dengan Format Tarikh Berbeza ke dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!