Я создаю следующий триггер:
CREATE TRIGGER Trigger_UpdateTrainingDelivery
AFTER DELETE OR INSERT OR UPDATE OF STARTDATE
ON TPM_TRAININGPLAN
BEGIN
UPDATE TPM_PROJECTVERSION V
SET TRAININGDELIVERYSTART = (SELECT MIN(STARTDATE) FROM TPM_TRAININGPLAN WHERE PROJECTID=V.PROJECTID AND VERSIONID=V.VERSIONID AND TRAININGPLANTYPE='prescribed')
END;
Когда я его создаю, я получаю предупреждение:
Warnings: --->
W (1): Warning: execution completed with warning
<---
Тем не менее, он все равно создается.Когда я затем изменяю строку в TPM_TRAININGPLAN, я получаю сообщение об ошибке:
>[Error] Script lines: 12-12 ------------------------
ORA-04098: trigger 'TPMDBO.TRIGGER_UPDATETRAININGDELIVERY' is invalid and failed re-validation
Script line 12, statement line 1, column 7
Что-то не так с моим триггером?Я могу запустить оператор UPDATE в триггере сам по себе, и он работает нормально, поэтому я не думаю, что с этим что-то не так.