TQuery.Unprepare закрывает результат запроса в Delphi? - PullRequest
3 голосов
/ 14 марта 2012

Интересно, в Delphi звонят

Query1.Unprepare;

неявно закрывает Query1, если он был ранее активен. Так, например, вызов Next на этом не удастся.

Вы могли бы сказать, просто попробуйте и попробуйте, но я сделал это на 64-битной системе Windows 7 и столкнулся с множеством проблем, пока, наконец, мой администратор BDE не сломался. Поэтому я решил просто задать эти вопросы, прежде чем начать выяснять, как я могу запустить BDE в моей системе; -)

1 Ответ

7 голосов
/ 14 марта 2012

Вы не можете использовать Prepare / Unprepare для открытого набора данных.сначала нужно закрыть его.

unit DBTables;
...
procedure TQuery.SetPrepared(Value: Boolean);
begin
  if Handle <> nil then DatabaseError(SDataSetOpen, Self);
  ...
  // SDataSetOpen = 'Cannot perform this operation on an open dataset';
...