Cara Mengendalikan Nilai NULL dalam Medan Datetime MySQL
MySQL menerima nilai NULL dalam medan datetime, walaupun terdapat salah tanggapan biasa. Untuk menetapkan nilai NULL pada medan datetime, hanya biarkan pembolehubah kosong atau hantar nilai NULL secara eksplisit.
Sisipkan Nilai NULL Menggunakan MySQL
CREATE TABLE datetimetest (testcolumn DATETIME NULL DEFAULT NULL); INSERT INTO datetimetest (testcolumn) VALUES (NULL);
Masukkan Nilai NULL Menggunakan Penyata Disediakan PHP
Apabila menggunakan yang disediakan pernyataan, mengikat pembolehubah seperti biasa. Pembolehubah PHP yang mengandungi nilai NULL akan disimpan sebagai NULL dalam MySQL.
$stmt = $conn->prepare("UPDATE users SET bill_date = ? WHERE user_id = ?"); if (isset($bill_date)) { $stmt->bind_param("si", $bill_date, $user_id); } else { $stmt->bind_param("si", NULL, $user_id); }
Nota tentang Pembolehubah Kosong PHP
Pastikan pembolehubah PHP mengandungi NULL, bukan rentetan kosong . Rentetan kosong akan mengakibatkan ralat:
Incorrect datetime value: '' for column 'bill_date' at row 1
Oleh itu, hantar NULL secara eksplisit atau biarkan pembolehubah kosong untuk mengelakkan isu ini.
Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Nilai NULL dengan Betul ke Medan Datetime dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!