Я добавляю столбец tsu
(добавьте метку времени к обновлению) типа DATETIME
ко многим моим таблицам.
Я должен записать BEFORE UPDATE
триггеры, которые обновят столбец к CURRENT_TIMESTAMP()
, но я не могу разобраться в нем. Попробованный:
DELIMITER $$
CREATE
TRIGGER `cams`.`tsu_update_csi` BEFORE UPDATE
ON `cams`.`csi`
FOR EACH ROW BEGIN
UPDATE csi SET tsu = CURRENT_TIMESTAMP WHERE csi_code = OLD.csi_code;
END$$
DELIMITER ;
Кто-либо может указать на меня в правильном направлении? MTIA
Хорошо, попробуйте это:
DELIMITER $$ CREATE
TRIGGER `cams`.`tsu_update_csi` BEFORE UPDATE
ON `cams`.`csi`
FOR EACH ROW BEGIN
SET NEW.tsu = CURRENT_TIMESTAMP;
END$$ DELIMITER ;
Не знаю, будет ли он работать для вас, но вы всегда можете сделать это Timestamp
поле без значения по умолчанию - MySQL автоматически устанавливает значение первого такого поля, определенного в Таблица к текущему временному времени на каждом обновлении.
Если поле может быть определено в качестве временной техники, вы можете использовать следующее:
TS2 Timestamp Default Teake_timestamp На обновлении Current_Timestamp);