更新時にそのフィールドに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のトリック フィールドは、INSERTの両方のフィールドでnullを使用することを忘れないでください ステートメント、UPDATE 必須ではないステートメント:
INSERT INTO mytable (field1, field2, created, updated)
VALUES ('foo', 'bar', null, null);