Har du prøvet at bruge null for det felt, når du opdaterer?
Du kan også prøve at indstille standardværdien til CURRENT_TIMESTAMP
i stedet for 0000-00-00 00:00:00
.
Ikke desto mindre, når jeg vil have oprettelses- og opdateringstid, bruger jeg altid følgende:
...
CREATED timestamp NOT NULL default '0000-00-00 00:00:00',
UPDATED timestamp NOT NULL default now() on update now(),
....
Jeg bruger now()
, fordi er et alias for CURRENT_TIMESTAMP
og den er kortere. I slutningen får tabelstrukturen CURRENT_TIMESTAMP
, så bare rolig.
Tricket med CREATED
felt er at huske at bruge null på begge felter for INSERT
erklæringer for UPDATE
udsagn er det ikke påkrævet:
INSERT INTO mytable (field1, field2, created, updated)
VALUES ('foo', 'bar', null, null);