Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Abschnitt wird beschrieben, wie die aktuelle Position des Cursors im Beispiel Recordset aus dem JScript-Codebeispiel ermittelt wird, um ein Recordsetzurückzugeben.
Aktueller Datensatz
Der aktuelle Datensatz entspricht dem Eintrag, auf den die Position des Cursors des Recordset-Objekts zeigt. Wenn ein Recordset-Objekt aus der Datenquelle zurückgegeben wird, als Ergebnis des Aufrufs von Recordset.Open, Command.Executeoder Connection.Execute (einschließlich Connection.NamedCommand und Connection.StoredProcedure), ist der Cursor auf den ersten Datensatz gesetzt. Im Beispieldatensatz ist der erste Datensatz der Artikel "Onkel Bobs organische getrocknete Birnen".
Größe des Recordsets
Um die Größe eines Recordset--Objekts zu ermitteln, rufen Sie den Wert der Recordset.RecordCount-Eigenschaft ab. Dieser Wert ist eine lange ganze Zahl, die die Anzahl der Datensätze im Recordset-angibt. Wenn das Dataset vom OLEDB-Anbieter für Microsoft SQL Server zurückgegeben wird, gibt dieser Wert die Anzahl der zurückgegebenen Zeilen an. Das Lesen der RecordCount--Eigenschaft eines geschlossenen Recordset- verursacht einen Fehler.
Wenn die Anzahl der Datensätze nicht bestimmt werden kann, lautet der Wert der Eigenschaft -1.
Der Wert der eigenschaft RecordCount hängt auch von den Funktionen des Anbieters und dem verwendeten Cursortyp ab. Bei einem nur vorwärts gerichteten Cursor ist der Wert -1. Bei einem statischen oder Keyset-Cursor ist der Wert die tatsächliche Anzahl von Datensätzen, die im Recordset-Objekt enthalten sind. Bei einem dynamischen Cursor ist der Wert abhängig von der Datenquelle entweder -1 oder die tatsächliche Anzahl von Datensätzen.
Ein Cursor, der Recordcount- unterstützt, muss sich mehr anstrengen und erfordert daher mehr Rechenleistung als ein Cursor, der Recordcount-nicht unterstützt. Wenn Sie die Anzahl der Datensätze nicht kennen müssen, kann die Verwendung eines anderen Cursortyps dazu beitragen, die Leistung Ihrer Anwendung zu verbessern, insbesondere, wenn Sie mit einem großen Dataset umgehen müssen.
In einigen Fällen kann ein Anbieter oder ein Cursor den Wert RecordCount nicht ermitteln, ohne zuerst alle Datensätze aus der Datenquelle abzurufen. Rufen Sie die Recordset-auf, um eine genaue Zählung sicherzustellen.MoveLast-Methode vor dem Aufrufen Recordset.RecordCount.
Das Beispiel Recordset-Objekt, das mithilfe des JScript-Codebeispiels abgerufen wird, verwendet einen Vorwärtscursor, sodass der Aufruf von RecordCount für dieses Objekt immer zu -1 führt. Wenn Sie die Codezeile ändern, die das Recordsetaufruft.Open-Methode wie im folgenden Beispiel gezeigt, gibt die RecordCount-Eigenschaft die tatsächliche Anzahl der abgerufenen Datensätze zurück.
oRs.Open sSQL, sCnStr, adOpenStatic, adLockOptimistic, adCmdText
Dies liegt daran, dass statische Cursor mit dem Microsoft OLE DB-Anbieter für SQL Server die RecordCount-unterstützen. In diesem Beispiel gibt es fünf Datensätze und damit RecordCount den Wert 5 liefern sollte.
Dieser Abschnitt enthält das folgende Thema.