Bạn đã thử sử dụng null cho trường đó khi cập nhật chưa?
Bạn cũng có thể thử đặt giá trị mặc định thành CURRENT_TIMESTAMP , thay vì 0000-00-00 00:00:00 .
Tuy nhiên, bất cứ khi nào tôi muốn có thời gian tạo và cập nhật, tôi luôn sử dụng những thứ sau:
...
CREATED timestamp NOT NULL default '0000-00-00 00:00:00',
UPDATED timestamp NOT NULL default now() on update now(),
....
Tôi sử dụng now() , vì là bí danh cho CURRENT_TIMESTAMP và nó ngắn hơn. Cuối cùng, cấu trúc bảng nhận được CURRENT_TIMESTAMP , vì vậy đừng lo lắng.
Thủ thuật với CREATED trường cần nhớ sử dụng null trên cả hai trường cho INSERT câu lệnh, cho UPDATE câu lệnh không bắt buộc:
INSERT INTO mytable (field1, field2, created, updated)
VALUES ('foo', 'bar', null, null);