-
Hi All,
I run a PL/SQL block which invokes a script file (which contains 15 thousands of SQL statements). Th
I got this error message
ERROR at line 118:
ORA-06550: line 672, column 224:
PLS-00123: program too large
I increased the Shared_pool_size to 80M but no way. There seems that it is a limitation of the PL/SQL compiler.
I need to execute this large script and I need to recuperate the error message if one statement fails and do a rollback. The script is well executed when directly invoked in SQL*PLUS. But If I launch it from the PL/SQL block I got the error. Is there a way to overcome this obstacle. Is there a way to handle errors in SQL*PLUS.
Please Help
Thanks in advance
-
Is there any solution for this?????
-
i'm guessing he found one after nearly 5 years
-
Probably we all seraching for the same solution..for 5 years...I can sence you have no answers...
-
you spent 5 years on looking a solution for this....?!
-
cant u use resumable space allocation?
or reduce your blocks by less scripts per block? Will the function of your scripts allow this?
Able was I ere I saw Elba
-
http://download-west.oracle.com/docs....htm#PLS-00123
PLS-00123: program too large
Cause: PL/SQL was designed primarily for robust transaction processing. One consequence of the special-purpose design is that the PL/SQL compiler imposes a limit on block size. The limit depends on the mix of statements in the PL/SQL block. Blocks that exceed the limit cause this error.
Action: The best solution is to modularize the program by defining subprograms, which can be stored in an Oracle database. Another solution is to break the program into two sub-blocks. Have the first block INSERT any data the second block needs into a temporary database table. Then, have the second block SELECT the data from the table.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|