Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Handling Ora 6571 error...
In article <6nqq2q$32s$1_at_risky.ecs.umass.edu>,
duggan_at_spock.ecs.umass.edu (John F Duggan) wrote:
>
> When attempting to execute a PL/SQL function which contains a select statement
> of the form
> select upper(column) into variable from table
> where upper(in_param) = upper (column);
>
> I get ORA error 6571, Function %s does not guarantee not to update database
> Is this due to the potential for more than one row to match this where con-
> dition?
>
> The output from oerr ora 6571 is:
>
> 06571, 00000, "Function %s does not guarantee not to update database"
> // *Cause: A plsql function that does not have a pragma asserting that it
> // does not write any database state is referenced in a sql
statement.
> // Such functions cannot be used in sql statements.
> // *Action: Recreate the function and/or the functions it calls with the
pragma
>
> Can I setup a pragma to handle this?
>
> Thanks for your time,
>
> John Duggan
> Systems Programmer
>
> ----------------------------------------------------------------------------
> John Duggan Internet : duggan_at_zonker.ecs.umass.edu
> Engineering Computer Services
> Univ. of Massachusetts Phone : (413) 545-1580
> Amherst, MA 01003
> ----------------------------------------------------------------------------
>
Hi John,
yes, you're right !
Use PRAGMA RESTRICT_REFERENCE (WNDL,...); (see Manual -> Pragma Keyword)
I've had the same problem !
cu
Klaus
-----== Posted via Deja News, The Leader in Internet Discussion ==----- http://www.dejanews.com/rg_mkgrp.xp Create Your Own Free Member Forum Received on Tue Jul 07 1998 - 03:09:33 CDT