Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> Conditional Trigger
Hello all,
I have the following task: I have a table with two fields, ISBN (NUMBER 9), TITLE and PERIODICAL_OWNER (NUMBER 9). I am trying to create a trigger that checks on insert, that the ISBN being entered is not already in the table but if it does, it must exist in the PERIODICAL_OWNER column.
So, if the new ISBN being entered is already in the table, it has to be in the PERIODICAL_OWNER column in order for it to be accepted. I am new to PL/SQL and have tried writing a trigger but it's not working. Here it is:
IF :New.ISSN = :Old.ISSN And
:New.ISSN NOT IN (:Old.Tidsskriftnr_eier) THEN
RAISE_APPLICATION_ERROR(-20070, 'ERROR>>' ||
' PERIODICAL:' ||
' For ISSN that already exists in the basen, it' ||
' must exist in periodicald to be accepted.');
ELSE
:New.ISSN := :New.ISSN;
END IF;
Thank you in advance for your help
-- MeReceived on Tue Nov 20 2007 - 06:14:13 CST