I've got a problem reading a resultset from Oracle 8i. I'm using Delphi with ADO.
I call a stored procedure which returns a recordset. The size of this recordset can wary greatly. However, if I define the recordset big enough, the execution of the SQL code takes a long time, after which Oracle gives me this error:
The problem is the 16778 value after the recordset keyword. 16777 still works, but one more causes the error. The problem is, the returned set can be much greater than 16777. If I set the value to 16777 and the resultset is greater, I get ORA-06513: PL/SQL: index for PL/SQL table out of range for host language array.
Do you know how I could either return larger recordsets without an error or split the recordset into smaller parts?
I think your program is not written for scalability.
Today you can solve the problem for x number of rows. Tmo what will happen if y ( >x) number of rows to be returned?
You must rewrite the code to send/get fixed number of rows at all time. This way you can gurantee ur client that ur program will work for ever.
Bookmarks