Kenyataan Isu:
Apabila cuba menyimpan nilai NULL dalam medan datetime dalam MySQL, pengguna mungkin menghadapi masalah, yang membawa kepada mesej ralat seperti "Nilai masa tarikh salah: '' untuk lajur 'bill_date'".
Penyelesaian:
Bertentangan dengan beberapa tanggapan salah, MySQL menyokong nilai NULL dalam medan datetime. Untuk menyelesaikan isu semasa mengemas kini rekod menggunakan PHP, pastikan pembolehubah yang mengandungi nilai NULL diluluskan dengan betul.
Pengikatan Pembolehubah PHP:
Jika menggunakan pernyataan yang disediakan, ikat pembolehubah PHP yang mengandungi nilai NULL kepada parameter pertanyaan SQL yang sepadan. Ini akan memastikan bahawa nilai NULL disimpan dengan betul dalam pangkalan data.
NULL lwn. Empty String:
Sahkan bahawa pembolehubah PHP memang memegang NULL dan bukan kosong rentetan. MySQL mentafsir rentetan kosong sebagai tarikh kosong, yang boleh membawa kepada ralat.
Kod Contoh:
Coretan kod PHP berikut menunjukkan cara mengikat nilai NULL dengan betul pada medan datetime menggunakan pernyataan yang disediakan:
$stmt = $conn->prepare("UPDATE table SET bill_date = ? WHERE id = ?"); $stmt->bind_param("si", $nullDate, $id); $nullDate = NULL; $id = 1; $stmt->execute();
Perhatikan bahawa $nullDate ditetapkan secara eksplisit kepada NULL. Dengan mengikat pembolehubah PHP dengan teliti yang memegang nilai NULL, anda boleh menyimpan NULL dalam medan datetime dengan berkesan dalam MySQL.
Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Nilai NULL dalam Medan Datetime MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!