Kod Ralat 1292: Nilai Tarikh Salah dalam MySQL
Apabila bekerja dengan MySQL, anda mungkin menghadapi kod ralat 1292, menunjukkan tarikh yang salah nilai. Ralat ini biasanya berlaku apabila cuba memasukkan nilai tarikh yang tidak mematuhi format atau kekangan yang dijangkakan.
Soalan:
Saya cuba memasukkan tarikh value ('01-05-2012') ke dalam lajur data_apertura jadual ALBERGO, tetapi saya mendapat kod ralat 1292. Saya telah cuba menukar format tarikh daripada 'dd/mm/yyyy' kepada 'dd-mm -yyyy', tetapi ia nampaknya tidak menyelesaikan isu itu. Apakah perubahan yang perlu saya buat?
Jawapan:
Ralat dalam kes ini tidak berkaitan dengan format tarikh, sebaliknya tetapan dalam MySQL 5.7 yang tidak membenarkan tarikh tertentu nilai, khususnya yang diformatkan sebagai '0000-00-00 00:00:00'. Untuk membenarkan nilai tersebut, anda perlu mengemas kini fail konfigurasi MySQL anda (my.cnf) seperti berikut:
sudo nano /etc/mysql/my.cnf
sql_mode="NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
sudo service mysql restart
Dengan perubahan ini, MySQL kini akan membenarkan nilai tarikh seperti '01-05-2012' untuk dimasukkan ke dalam lajur data_apertura.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Kod Ralat 1292: Nilai Tarikh Salah dalam MySQL dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!