Einzelnen Beitrag anzeigen

brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#4

AW: query.open blockiert

  Alt 7. Nov 2013, 10:58
Wenn CursorLocation clUseServer ist, dann blockiert "Open" erstmal nicht mehr, aber bei dem x. Query dauert das setzen des SQL-Textes sehr lange:

Delphi-Quellcode:
    Result.SQL.Clear;
    Result.SQL.Add(_SQL);

Intern wird dann:

  ADODB.InternalRefresh
// mit
  RefreshFromOleDB

// aufgerufen, wobei
   if Assigned(CommandPrepare) then CommandPrepare.Prepare(0);

// ewig dauert
Das kann ich also leider nicht verwenden. ExecuteOption AsyncFetch liefert die Daten in einem Extra-Thread, wobei ich mich dann wieder um Synchronisation keumemrn musss, das ist zu viel Aufwand (es werden dann die extra Events aufgerufen).
  Mit Zitat antworten Zitat