Опитвали ли сте да използвате null за това поле при актуализиране?
Можете също да опитате да зададете стойност по подразбиране на CURRENT_TIMESTAMP
, а не 0000-00-00 00:00:00
.
Въпреки това винаги, когато искам да имам време за създаване и актуализиране, винаги използвам следното:
...
CREATED timestamp NOT NULL default '0000-00-00 00:00:00',
UPDATED timestamp NOT NULL default now() on update now(),
....
Използвам now()
, защото е псевдоним за CURRENT_TIMESTAMP
и е по-кратък. В края структурата на таблицата получава CURRENT_TIMESTAMP
, така че не се притеснявайте.
Трикът с CREATED
поле е да запомните да използвате null и в двете полета за INSERT
оператори, за UPDATE
изявления не се изисква:
INSERT INTO mytable (field1, field2, created, updated)
VALUES ('foo', 'bar', null, null);