4

DBテーブルにexpireTIMESTAMPを追加したい。タイプがTIMESTAMPでデフォルト値がCURRENT_TIMESTAMP()のフィールドタイムスタンプが1つあります。タイプがDATETIMEでデフォルト値がADDDATE(CURRENT_TIMESTAMP、INRERVAL 1 DAY)の新しいフィールド「expire」を追加しましたが、機能しません。

CREATE TABLE IF NOT EXISTS `temp_mch` (
  `name` varchar(60) NOT NULL,
  `qty_new` int(5) NOT NULL,
  `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`name`),
  KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1

私が間違っているところは?

前もって感謝します !

4

1 に答える 1

3

これは、列のデフォルト定義ではサポートされていません。

代わりに、トリガーを使用してそれを行うことができます。

詳細については、次の質問を参照してください。

TIMESTAMP列のデフォルト値としての有効期限

于 2012-04-05T13:59:13.920 に答える