関連する多くの質問を見てきましたが、この特定の質問に指を置くことはできません。
TIMESTAMP (フィールドが作成されたとき) と DATETIME (フィールドが更新されるたび) の両方を持つ MySQL テーブルがあります。次のようになります。
CREATE TABLE 'vis' (
ID BIGINT PRIMARY KEY AUTO_INCREMENT NOT NULL,
ENTRY VARCHAR(255),
AUTHOR VARCHAR(255),
CREATED_AT TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
UPDATED_AT DATETIME ON UPDATE CURRENT_TIMESTAMP,
UPDATED_BY VARCHAR(255)
)
ただし、これを試してみると、次のエラーが表示されます。(SQL Error: 1294 SQL State: HY000) - Invalid ON UPDATE clause for 'updated_at' field
私が読んだどこでも(スタックオーバーフローでも)、これを実行できるはずだと示唆していますが、このエラーが発生しています。おそらく、更新するたびに自動的に時間を更新するフィールドを持つ別の方法があるでしょうか?
MySQL サーバー 5.5 を使用しています。