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

Home -> Community -> Mailing Lists -> Oracle-L -> Re: Dynamic SQL question

Re: Dynamic SQL question

From: Deanna Schneider <deanna.schneider_at_ces.uwex.edu>
Date: Fri, 19 Mar 2004 15:33:07 -0600
Message-ID: <03d101c40df9$c52683f0$9b2c6880@cets.local>


Nope. It doesn't even compile then. It's not "inside" v_update, it's ending the assignment block of v_update.

> I don't think there is supposed to be a ; inside v_update. Take it out and
see if it runs.
>
> -----Original Message-----
> From: oracle-l-bounce_at_freelists.org
> [mailto:oracle-l-bounce_at_freelists.org]On Behalf Of Deanna Schneider
> Sent: Friday, March 19, 2004 4:28 PM
> To: oracle-l_at_freelists.org
> Subject: Dynamic SQL question
>
>
> Hello,
> I'm trying to write a procedure that includes dynamic sql (8.17). If I
don't
> use the dynamic sql, the query runs fine. If I do, it fails with a numeric
> or value error (ORA-06512).
>
> Can anyone see what I'm missing?
> This works:
> UPDATE resourcegroup
> SET lft = DECODE( (SIGN((lft/drop_left)-1) +
SIGN((lft/drop_right)-1)),
> 0, lft-1, 2, lft-2, lft),
> rgt = DECODE( (SIGN((rgt/drop_left)-1) +
SIGN((rgt/drop_right)-1)),
> 0, rgt-1, 2, rgt-2, lft)
> WHERE lft > drop_left;
>
>
> This fails:
> v_update := 'UPDATE '|| in_tablename ||
> 'SET lft = DECODE( (SIGN((lft/:1)-1) + SIGN((lft/:2)-1)), 0,
> lft-1, 2, lft-2, lft), '||
> 'rgt = DECODE( (SIGN((rgt/:3)-1) + SIGN((rgt/:4)-1)), 0,
rgt-1,
> 2, rgt-2, lft) ' ||
> 'WHERE lft > :5';
>
> EXECUTE IMMEDIATE v_update USING drop_left, drop_right, drop_left,
> drop_right, drop_left;
>
> I'm just using the linewrap concantenation for use of readability for
> testing. It fails when it's all on one line as well.
>
> Thanks.
> -Deanna
>
>
> ----------------------------------------------------------------
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> ----------------------------------------------------------------
> To unsubscribe send email to: oracle-l-request_at_freelists.org
> put 'unsubscribe' in the subject line.
> --
> Archives are at http://www.freelists.org/archives/oracle-l/
> FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
> -----------------------------------------------------------------
> ----------------------------------------------------------------
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> ----------------------------------------------------------------
> To unsubscribe send email to: oracle-l-request_at_freelists.org
> put 'unsubscribe' in the subject line.
> --
> Archives are at http://www.freelists.org/archives/oracle-l/
> FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
> -----------------------------------------------------------------



Please see the official ORACLE-L FAQ: http://www.orafaq.com

To unsubscribe send email to: oracle-l-request_at_freelists.org put 'unsubscribe' in the subject line.
--
Archives are at http://www.freelists.org/archives/oracle-l/
FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------
Received on Fri Mar 19 2004 - 15:25:55 CST

Original text of this message

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