Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để lưu trữ các giá trị NULL trong các trường datetime trong MySQL?

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.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Có cách nào đơn giản để chuyển đổi dữ liệu MySQL thành Title Case không?

  2. Thay đổi bộ ký tự mặc định của MySQL thành UTF-8 trong my.cnf?

  3. Ví dụ SYSDATE () - MySQL

  4. Trong MySQL, tôi có nên trích dẫn số hay không?

  5. Chèn vào MySQL từ PHP (jQuery / AJAX)