Здравствуйте, проблема в том, что код отрабатывает (причем выполняется нужный селект), но по какой то причине ничего не вставляется в нужную таблицу - Plan.
CREATE TABLE Animals
(
Animals_Id INT PRIMARY KEY AUTO_INCREMENT,
PeriodPrivivka INT,
PeriodFeed INT
);
CREATE TABLE Plan
(
Plan_Id INT PRIMARY KEY AUTO_INCREMENT,
Plan_Id_1 INT,
Dayy DATE,
Typee VARCHAR(20) NOT NULL,
FOREIGN KEY (Plan_Id_1) REFERENCES Animals (Animals_Id)
);
CREATE TABLE LogBookManipulation
(
LogBookManipulation_Id INT PRIMARY KEY AUTO_INCREMENT,
Id INT,
NameFirstEmployees VARCHAR(30) NOT NULL,
NameSecondEmployees VARCHAR(30) NOT NULL,
DateE DATE,
ActionN VARCHAR(20) NOT NULL,
Count INT,
Typee VARCHAR(20) NOT NULL, # Insects ColdBloodedness Mammals/ snakes
TypeeFeed VARCHAR(20) NOT NULL, #конкретный тип насекомого/животного(еды)
FOREIGN KEY (Id) REFERENCES Animals (Animals_Id)
);
Как я поняла нужно указать везде название перед полями, но у меня эта таблица не имеет имени(тк собирается на месте).
DELIMITER //
CREATE TRIGGER Planing_trigger
AFTER INSERT ON LogBookManipulation
FOR EACH ROW
begin
IF new.Typee='Планирование' THEN
INSERT INTO Plan (Plan_Id_1, Dayy, Typee )
SELECT (Animals_Id, now(), 'Кормление') FROM (Animals B LEFT JOIN (
SELECT Id, min(DATEDIFF(now(),DateE)) AS Day FROM LogBookManipulation WHERE ActionN='Кормление' GROUP BY Id ) A ON B.Animals_Id= A.Id)
WHERE (Day IS NOT NULL AND Day > PeriodFeed) OR (Day IS NULL);
END IF;
END //
Пожалуйста помогите с решением проблемы! Заранее спасибо.