我需要创建一个触发器,该触发器将在表Documenti中插入一行并在以下查询中显示2次更新后运行
UPDATE AllegatoZip AS a
LEFT JOIN Documenti AS d on d.allegato = a.idAllegato
SET a.data_invio_operatore = d.data_invio_doc
WHERE NEW.allegato = a.idAllegato AND NEW.data_invio_doc > a.data_invio_operatore;
UPDATE AllegatoZip AS a SET a.dataInserimento = now()
WHERE NEW.allegato = a.idAllegato;
我创建的触发器只有一次更新就可以工作
CREATE TRIGGER AggiornaDataDocumenti AFTER INSERT ON Documenti
FOR EACH ROW UPDATE AllegatoZip a
LEFT JOIN Documenti d on a.idAllegato = d.allegato
SET a.data_invio_operatore = d.data_invio_doc
WHERE NEW.allegato = a.idAllegato AND NEW.data_invio_doc > a.data_invio_operatore
SQL数据库模型:https://ibb.co/msnvNe
PS。对不起,我的英语
更新:我已解决
DELIMITER $$
CREATE TRIGGER `AggiornaDataDocumenti` AFTER INSERT ON `Documenti` FOR EACH ROW BEGIN
DECLARE docID INT;
SET docID = NEW.allegato;
UPDATE AllegatoZip a
LEFT JOIN Documenti d on a.idAllegato = d.allegato
SET a.data_invio_operatore = d.data_invio_doc
WHERE
docID = a.idAllegato AND d.data_invio_doc > a.data_invio_operatore;
UPDATE AllegatoZip a SET a.dataInserimento = now()
WHERE
docID = a.idAllegato;
END
$$
DELIMITER ;