MySQL bisa izinkan NULL
nilai untuk datetime
bidang. Saya baru saja mengujinya:
mysql> create table datetimetest (testcolumn datetime null default null);
Query OK, 0 rows affected (0.10 sec)
mysql> insert into datetimetest (testcolumn) values (null);
Query OK, 1 row affected (0.00 sec)
mysql> select * from datetimetest;
+------------+
| testcolumn |
+------------+
| NULL |
+------------+
1 row in set (0.00 sec)
Saya menggunakan versi ini:
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.0.45 |
+-----------+
1 row in set (0.03 sec)
EDIT #1:Saya melihat dalam hasil edit Anda bahwa pesan kesalahan yang Anda dapatkan di PHP menunjukkan bahwa Anda melewatkan string kosong (yaitu ''
), bukan null
. String kosong berbeda dari null
dan bukan datetime
yang valid nilai itulah sebabnya Anda mendapatkan pesan kesalahan itu. Anda harus melewati kata kunci sql khusus null
jika itu maksudmu. Juga, jangan beri tanda kutip pada kata null
. Lihat insert
saya pernyataan di atas untuk contoh cara menyisipkan null
.
EDIT #2:Apakah Anda menggunakan PDO? Jika demikian, ketika Anda mengikat param null Anda, pastikan untuk menggunakan [PDO::PARAM_NULL][1]
ketik saat mengikat null
. Lihat jawaban untuk ini pertanyaan stackoverflow
tentang cara memasukkan null
dengan benar menggunakan PDO.