Я использую этот триггер
delimiter ||
create TRIGGER column_a_to_default
BEFORE INSERT ON `property`
FOR EACH ROW
BEGIN
IF NEW.primary_image = '' THEN
SET NEW.primary_image = default(NEW.primary_image);
END IF;
END;
||
delimiter ;
Если я вставлю в таблицу, триггер выдаст ошибку:
Поле 'primary_image' не имеет значения по умолчанию.
Но это так!
Что здесь не так? Похоже, что триггер не знает значения по умолчанию!
EDIT
Скрипт создания таблицы
CREATE TABLE IF NOT EXISTS `property` (
`id` varchar(10) NOT NULL,
`images` text NOT NULL,
`primary_image` varchar(100) NOT NULL DEFAULT '../no-image.png',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;