ORA-01000:
maximum open cursors exceeded (#23)
You get this error when a user of a
host program attempts to open more cursors than they are allowed. The number of
cursors allowed is dictated by the OPEN_CURSORS initialization parameter, and
this quota can be eaten up by both implicit and explicit cursors. If you run
into this error, there is a possibility that there is a bug in your
application. Perhaps you’ve got an open cursor statement within a loop and you
do not have a matching close cursor, and as a result your code is bleeding
cursors all over the place.
However, it is possible that the
OPEN_CURSORS number is just too low for the needs of your application and has
to be upped. The default value is 50; however, the only factor limiting how
high this number can go – 300, 1000, 2000 even – is what the operating system
can take. However, it may be unwise to choose to change the OPEN_CURSORS
parameter too steeply, rather than examine your code for leaks. That’ll be like
thinking you can save yourself from drowning by drinking the sea.
No comments:
Post a Comment