Здравствуйте, пытаюсь написать триггер формирование строки из двух других строк. Пробовала вариант, который закоменчен, но в итоге вылезала ошибка, как я поняла которую я не смогу починить(чтобы писать так update, нужно везде прописывать new, что невозможно для переменной sm(если вообще в этом проблема)).
Решила переписать и в итоге все равно выходит ошибка 1093. Прошу помощи! Как вообще можно написать такой триггер или исправить ошибку?
Заранее спасибо!
DELIMITER //
CREATE TRIGGER TerrNamee_Trigger
AFTER insert ON PlaceToKeep
FOR EACH ROW BEGIN
# DECLARE s1 varchar(100);
#DECLARE s2 varchar(100);
#DECLARE sm varchar(100);
#SET s1 =(select NEW.Kind from PlaceToKeep);
# SET s2 =(select NEW.Age from PlaceToKeep);
#SET sm= (select CONCAT(s1, s2));
#UPDATE PlaceToKeep set NEW.InscriptionTerrarium= sm;
UPDATE PlaceToKeep set NEW.InscriptionTerrarium= (SELECT CONCAT((SELECT NEW.Kind FROM PlaceToKeep), (SELECT NEW.Age FROM PlaceToKeep)));
END //
Таблица с которой работаем:
CREATE TABLE PlaceToKeep
(
PlaceToKeep_Id INT PRIMARY KEY AUTO_INCREMENT,
PlaceToKeep_Id_1 INT,
Kind VARCHAR(20) NOT NULL,
Age VARCHAR(20) NOT NULL,
ConditionsOfDetention VARCHAR(20) NOT NULL,
InscriptionTerrarium VARCHAR(20) NOT NULL,
Animal VARCHAR(20) NOT NULL,
SizeAnimal INT,
StatussTerrariumFree INT,
FOREIGN KEY (PlaceToKeep_Id_1) REFERENCES Animals (Animals_Id)
);