FC2ブログ

MySQLのcurrent_timestamp

MySQLでcreatedとmodifiedに

modified timestamp not null on update current_timestamp default current_timestamp
created timestamp not null default 0,

のようにして、登録日時(created)と更新日時(modified)を設定するということがありましたが、
これらのカラムの前に同じtimestampでnot null default がないtimestampのカラムを
入れるとエラーになります。。


accessed timestamp,
modified timestamp not null on update current_timestamp default current_timestamp
created timestamp not null default 0,

だと

ERROR 1293 (HY000): Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause

がでますね。(MySQL 5.1)

accessed timestamp,



accessed timestamp not null default 0,

にしたり

accessed datetime,

にすれば大丈夫ですね。
あとはmodifiedの後ろに持ってくるとか。

もっとエラーメッセージをわかりやすくしてくれないと、何がエラーなのか、MySQLのバグなのか仕様なのか
わからないですね。

スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

chattera.net

Author:chattera.net
フリーでソフト開発の仕事をしています。
自作したこのチャットシステムは、何か世の中に役に立つこともあるかと思いますので、お呼びがかかるとうれしいですね。

連絡先は chatteranet@gmail.com です。

また、ソフト開発関連のお誘いもうけたまわっております。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR