Я получаю следующее сообщение об ошибке в приложении Delphi / Oracle: «ora-01000 - превышено максимальное количество открытых курсоров». Код выглядит следующим образом:
begin
for i := 0 to 150 do
begin
with myADOQuery do
begin
SQL.Text := 'DELETE FROM SOMETABLE';
ExecSQL; -- from looking at V$OPEN_CURSOR a new cursor is added on each iteration for the session
Close; -- thought this would close the cursor but doesn't
end;
end;
end;
Я знаю, что могу решить проблему, просто увеличив число параметров OPEN_CURSORS, однако я бы скорее нашел решение, при котором курсор будет закрыт после выполнения запроса. Есть идеи?
Delphi 2006 BDS
Oracle 10g