You Asked
I always run into an error that the dbms output exceeds 2000 and I can increase to max of 1000000. My question is, why is there a limit on this? I have gigs of space, why does oracle have to be so stingy with the output log?
and we said...
All DBMS_OUTPUT output from a single client call is buffered in the server-side memory. Only after the call finishes, the client reads all the produced output. The limit is there to help you conserve the server-side memory in a multi-user environment. However, you can remove the limit by issuing:
SET SERVEROUTPUT ON SIZE UNLIMITED
Is this answer out of date? If it is, please let us know via a Comment