Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: cancel an insert within the trigger?

Re: cancel an insert within the trigger?

From: <sybrandb_at_yahoo.com>
Date: 21 Sep 2004 07:49:27 -0700
Message-ID: <a1d154f4.0409210649.416ef257@posting.google.com>


avanrossem_at_hotmail.com (Andre) wrote in message news:<4d32d1be.0409210219.26642641_at_posting.google.com>...
> Hello all,
>
> I have created an insert trigger:
> If I do a count on the table and this count results in a 1 or higher I
> would not insert the record. (of_id is not the primary key)
>
> CREATE OR REPLACE TRIGGER iu_cli BEFORE insert or update on client
> FOR EACH ROW
> BEGIN
> CC number;
> IF INSERTING
> THEN
> select count(*) into CC from client WHERE of_id = :new.of_id;
> If CC > 1 then
> --do not insert?
> ????????????
> end if;
> END IF;
> END;
> /
>
>
> The Question is: Can I do this this way?
> What code to put on the ???? marks?
>
> Thanks All,
> Anneke

Just raise your own error and cause the trigger to fail. How to raise your own error is described in the PL/SQL reference manual. The easiest way is to use
raise_application_error(-20000,'<Your own error text>') From all of your questions it is clear you are not an avid manual reader. Please try to change this.

Sybrand Bakker
Senior Oracle DBA Received on Tue Sep 21 2004 - 09:49:27 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US