MySQL không cho phép NULL
các giá trị cho datetime
lĩnh vực. Tôi vừa thử nghiệm nó:
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)
Tôi đang sử dụng phiên bản này:
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.0.45 |
+-----------+
1 row in set (0.03 sec)
CHỈNH SỬA # 1:Tôi thấy trong bản chỉnh sửa của bạn rằng thông báo lỗi bạn nhận được trong PHP cho biết rằng bạn đang chuyển một chuỗi trống (tức là ''
), không phải null
. Chuỗi trống khác với null
và không phải là datetime
hợp lệ giá trị đó là lý do tại sao bạn nhận được thông báo lỗi đó. Bạn phải chuyển từ khóa sql đặc biệt null
nếu đó là những gì bạn muốn nói. Ngoài ra, không đặt bất kỳ dấu ngoặc kép nào xung quanh từ null
. Xem insert
của tôi câu lệnh ở trên để biết ví dụ về cách chèn null
.
CHỈNH SỬA # 2:Bạn có đang sử dụng PDO không? Nếu vậy, khi bạn liên kết tham số null của mình, hãy đảm bảo sử dụng [PDO::PARAM_NULL][1]
gõ khi liên kết một null
. Xem câu trả lời cho điều này câu hỏi stackoverflow
về cách chèn đúng null
sử dụng PDO.