1. ホーム
  2. mysql

MySQL CURRENT_TIMESTAMP (作成時および更新時)

2023-12-27 11:53:50

質問

以下のような、2つのTIMESTAMPフィールドを持つテーブルを定義したいと思います。

CREATE TABLE `msgs` (
    `id` INT PRIMARY KEY AUTO_INCREMENT,
    `msg` VARCHAR(256),
    `ts_create` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    `ts_update` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)

エラーを回避する方法。

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

ポイントは ts_createts_update をテーブルスキーマに追加します。

どのように解決するのですか?

これは古い投稿だと思いますが、実はmysqlは最近の版では2つのTIMESTAMPをサポートしているようです mysql 5.6.25 それが私が現在使用しているものです。