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

Home -> Community -> Usenet -> c.d.o.tools -> Re: PL/SQL Delete Error -- Urgent!

Re: PL/SQL Delete Error -- Urgent!

From: Peter L <news_at_abc.co.uk>
Date: 2000/07/21
Message-ID: <397879d1.2870780@news.freeserve.net>#1/1

On Thu, 20 Jul 2000 21:03:03 GMT, "John Chen" <jchen_at_tucows.com> wrote:

>Hi All,
>
>I have a table called "my_table" with one field "ID". I try to write a
>PL/SQL function to get the minimal value of "ID" and then delete this
>record. However I
>got an error message: Warning:
> Package Body created with compilation errors.
>
>If I do not include the "delete", everything is OK and it returns the
>minimal value.
>I am using Oracle 8iR2 on Red Hat Linux 6.1
>Please help!!
>
>The PL/SQL script is as follows:
>================================
>create or replace package my_package as
> function get_id return number;
> pragma restrict_references(get_id, WNDS);
> pragma restrict_references(my_package, WNDS, RNPS);
>end opensrs_package;
>/
>
>create or replace package body my_package as
>
> function get_id return number is
> min_id number;
> begin
> select min(id) into min_id from my_table;
> delete from min_id where id = min_id;
> return min_id;
> end get_id;
>
>end my_package;
>/
>

You are using WNDS which means Write No Database State, however your function does a delete, which means you are trying to break the WNDS restriction. You could change the pragma or write a procedure with an out parameter. Received on Fri Jul 21 2000 - 00:00:00 CDT

Original text of this message

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