why does this cause an error? CREATE OR REPLACE TRIGGER mm_return_trg AFTER UPDA
ID: 3718174 • Letter: W
Question
why does this cause an error?
CREATE OR REPLACE TRIGGER mm_return_trg
AFTER UPDATE OF checkin_date ON mm_rental /* After: helps define timing of trigger. UPDATE: event causing trigger to fire */
FOR EACH ROW /* helps define timing of trigger */
BEGIN
IF :OLD.checkin_date IS NOT NULL THEN /* states if old date received data field is NOT empty, continue */
UPDATE mm_rental /* updates mm_rental table */
SET checkin_date = SYSDATE;
UPDATE mm_movie /* updates mm_movie table */
SET movie_qty = movie_qty+1;
COMMIT;
END IF;
END;
Explanation / Answer
Note : there is a small mistake in the trigger just removed colon in the if statement and removed commit it will works.....if you gets again error you comment the error log....so that i can see that solved that......
Modified trigger....
CREATE OR REPLACE TRIGGER mm_return_trg
AFTER UPDATE OF checkin_date ON mm_rental
Referencing Old As "OLD" New As "NEW"
FOR EACH ROW
BEGIN
IF OLD.checkin_date IS NOT NULL
THEN
UPDATE mm_rental SET checkin_date = SYSDATE;
UPDATE mm_movie SET movie_qty = movie_qty+1;
END IF;
END;
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.