Skip to Main Content
  • Questions
  • Why is there a limit on DBMS_OUTPUT?

Breadcrumb

Question and Answer

Sergiusz Wolicki

Thanks for the question.

Asked: September 08, 2017 - 3:01 pm UTC

Last updated: September 10, 2017 - 9:10 pm UTC

Version: Oracle 12.1.0.22

Viewed 1000+ times

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

More to Explore

PL/SQL demos

Check out more PL/SQL tutorials on our LiveSQL tool.

PL/SQL docs

PL/SQL reference manual from the Oracle documentation library