Announcement

Collapse
No announcement yet.

ADO und asynchrone Abfragen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ADO und asynchrone Abfragen

    Hallo

    Umgebung:

    SQL-Server 7.0
    OLE DB Provider für SQL Server

    Problem 1:

    Ich verwende ein TADODataSet (Select * from Tabelle) mit ExecuteOptions [eoAsyncFetchNonBlocking]. Funktioniert ja wunderbar, aber es wird der erste und letzte Datensatz nicht angezeigt.
    Wo liegt das Problem?

    Problem 2:

    Ich arbeite mit Statements, bei denen die Ausführung (nicht der Fetch) recht lange dauern kann. Wie kann ich nicht nur den Fetch sondern auch die Ausführung asynchron ausführen lassen (und diese damit abbrechen)? Mit ExecuteOptions [eoAsyncExecute] wird immer ein leeres Grid angezeigt.

    Wunsch:

    Könnt ihr nicht automatisch bei Beantwortung ein eMail an den Ersteller schicken. Dies würde das System wesentlich verbessern!!!

    Ciao Herbert

  • #2
    Hallo,

    zur Frage 1: <br>
    Auch wenn Borland den schwarzen Peter an Microsoft weiterschiebt würde ich sagen, dass ADO Express an dieser Stelle einen Bug hat. Denn mit dem folgenden Workaround verschwindet dieses Problem:
    <pre>
    procedure TForm1.ADODataSet1AfterOpen(DataSet: TDataSet);
    begin
    with TCustomADODataSet(DataSet) do
    begin
    Recordset.MoveFirst;
    CursorPosChanged;
    Resync([]);
    end;
    end;
    </pre>
    zur Frage 2: <br>
    Das Abbrechen von einmal gestarteten SQL-Anweisungen ist im SQL-Standard nicht vorgesehen und daher ist dies bei den meisten SQL-Datenbanken auch nicht möglich (mir ist nur eine Option für Sybase-Datenbanken bekannt, bei der eine SQL-Anweisung mitten in der Ausführung abgebrochen werden kann). In jedem Fall würde der OLE DB-Provider dafür zuständig sein und nicht ADO als Objektüberbau

    Comment


    • #3
      Hi,<br>
      ist diese Problem in der aktuellen Version von ADO-Express noch enthalten?? Sollte man grundsetzlich bei dieser Einstellung so vorgehen??<br>
      Helmu

      Comment


      • #4
        Hallo,

        zur Frage 1: Ja. <br>
        zur Frage 2: Ja, wobei bei der nächsten MDAC/ADO Express-Version das Verhalten neu getestet werden sollte

        Comment

        Working...
        X