Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: pl/sql error
The SQL within pl/sql is static and cannot be modified. To use dynamic
SQL you will need to use the EXECUTE IMMEDIATE statement or the DBMS_SQL
package. See the PL/SQL Manual for EXECUTE IMMEDIATE.
HTH -- Mark D Powell --
From: oracle-l-bounce_at_freelists.org
[mailto:oracle-l-bounce_at_freelists.org] On Behalf Of ora_forum
Sent: Tuesday, March 21, 2006 3:57 PM
To: oracle-l_at_freelists.org
Subject: pl/sql error
Hi All: My procedure must list only tables where max(length(formula))>150. I have about 100 schemas and each has FIELDCUSTOM table.
CREATE OR REPLACE PROCEDURE data_count is owner varchar2 (40); i number (10); BEGIN FOR n IN (SELECT owner FROM dba_tables WHERE table_name ='FIELDCUSTOM') LOOP SELECT max(length (formula)) INTO i FROM n.owner.FIELDCUSTOM; IF i>=150 THEN dbms_output.put_line (owner); ELSE null; END IF; END LOOP; END; Problem in line: SELECT max(length (formula)) INTO i FROM n.owner.FIELDCUSTOM error sql command not properly ended. Thanks.
________________________________
Yahoo! Travel Find great deals
-- http://www.freelists.org/webpage/oracle-lReceived on Tue Mar 21 2006 - 15:35:57 CST
![]() |
![]() |