Наличие в MySQL 4.0 столбцов меток времени «Создано» и «Последнее обновление» - PullRequest
120 голосов
/ 06 ноября 2008

У меня есть следующая схема таблицы;

CREATE TABLE `db1`.`sms_queue` (
  `Id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `Message` VARCHAR(160) NOT NULL DEFAULT 'Unknown Message Error',
  `CurrentState` VARCHAR(10) NOT NULL DEFAULT 'None',
  `Phone` VARCHAR(14) DEFAULT NULL,
  `Created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `LastUpdated` TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP,
  `TriesLeft` tinyint NOT NULL DEFAULT 3,
  PRIMARY KEY (`Id`)
)
ENGINE = InnoDB;

Сбой из-за следующей ошибки:

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

У меня вопрос, могу ли я иметь оба этих поля? или мне нужно вручную устанавливать поле LastUpdated во время каждой транзакции?

Ответы [ 11 ]

0 голосов
/ 26 марта 2018

Мой веб-хостинг застрял на версии 5.1 mysql, поэтому любой, как я, не имеющий возможности обновления, может выполнить следующие указания:

http://joegornick.com/2009/12/30/mysql-created-and-modified-date-fields/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...