You may need to post a small sample which demonstrates the problem. You don't need, e.g., 3 different cursors (statement handles) to update 3 different rows in the same table. I suspect you are creating cursors and not reusing them. -----Original Message----- From: Xiaoping Gu [mailto:[EMAIL PROTECTED]] Sent: Tuesday, June 05, 2001 1:23 PM Cc: Michael A. Chase; Sterin, Ilya; 'Dan, Ephraim '; [EMAIL PROTECTED] Subject: Run out of number of cursor using DBD::Oracle when inserting/updating Hi, We have a perl program to insert/update/select to Oracle database using DBI and DBD::Oracle. After each execute, we commit it. However, it only inserts/updates about 100 rows then runs out of number of cursors. The open_cursor is set to 100. However, why the cursors are not released after commit? Can somebody asnwer this? Thanks.