Heb je geprobeerd om null voor dat veld te gebruiken bij het updaten?
U kunt ook proberen de standaardwaarde in te stellen op CURRENT_TIMESTAMP , in plaats van 0000-00-00 00:00:00 .
Niettemin, wanneer ik tijd wil hebben voor het maken en bijwerken, gebruik ik altijd het volgende:
...
CREATED timestamp NOT NULL default '0000-00-00 00:00:00',
UPDATED timestamp NOT NULL default now() on update now(),
....
Ik gebruik now() , omdat het een alias is voor CURRENT_TIMESTAMP en het is korter. Aan het einde krijgt de tabelstructuur CURRENT_TIMESTAMP , dus maak je geen zorgen.
De truc met CREATED veld is om te onthouden dat u null op beide velden moet gebruiken voor INSERT verklaringen, voor UPDATE verklaringen is het niet vereist:
INSERT INTO mytable (field1, field2, created, updated)
VALUES ('foo', 'bar', null, null);