Recordset-Objekt | (Versionen 2.0, 2.1, 2.5, 2.6) |
Das Objekt Recordset (Datensatzgruppe) repräsentiert entweder alle Zeilen aus einer vollständigen Tabelle oder die Datensätze, die von einem ausgeführten Befehl zurückgegeben worden sind. |
Eigenschaft Recordset.AbsolutePage | (Versionen 2.0, 2.1, 2.5, 2.6) |
absolutepage = recordset.AbsolutePage | |
Die Eigenschaft AbsolutePage liefert oder setzt einen Wert, der die aktuelle Seite in der Datensatzgruppe bezeichnet. |
|
Datentyp | |
Long |
|
Beschreibung | |
Indem Sie die Eigenschaft AbsolutePage einstellen, weisen Sie ADO an, den Datensatzzeiger auf den ersten Datensatz der angegebenen Seite zu setzen. Die Eigenschaft AbsolutePage lässt sich auf eine Zahl zwischen 1 und der von der Eigenschaft PageCount zurückgegebenen Zahl einstellen, nämlich der Gesamtzahl logischer Seiten. Die Größe jeder Seite wird von der Eigenschaft PageSize bestimmt. Indem Sie die Eigenschaft AbsolutePage auslesen, können Sie feststellen, auf welcher logischen Seite sich der Datensatzzeiger befindet. Die Eigenschaft AbsolutePage liefert einen Wert vom Typ Long und bezeichnet die aktuelle Seite oder einen PositionEnum-Wert. Wenn beim Lesen der Eigenschaft AbsolutePage der Datensatzzeiger auf die BOF-Marke zeigt, wird der Wert adPosBOF (-2) zurückgegeben. Befindet sich der Datensatzzeiger auf der EOF-Marke, wird der Wert adPosEOF (-3) zurückgegeben. Wenn die Datensatzgruppe leer ist, die Position des Datensatzzeigers unbekannt ist oder der Datenprovider die Eigenschaft AbsolutePage nicht unterstützt, so wird der Wert adPosUnknown (-1) zurückgegeben. Die Eigenschaft AbsolutePage ist 1-basiert, das bedeutet, dass ein Wert von 1 die erste Seite in der Datensatzgruppe bezeichnet. |
|
Hinweis | |
Nicht alle Provider unterstützen die Eigenschaft AbsolutePage. |
|
Siehe auch | |
CursorOptionEnum-Enumeration, PositionEnum-Enumeration, Recordset.Count-Eigenschaft, Recordset.Filter-Eigenschaft, Recordset.PageSize-Eigenschaft, Recordset.Supports-Methode |
|
Eigenschaft Recordset.AbsolutePosition | (Versionen 2.0, 2.1, 2.5, 2.6) |
absoluteposition = recordset.AbsolutePosition | |
Die Eigenschaft AbsolutePosition liefert oder setzt einen Wert, der die aktuelle Datensatzposition in der Datensatzgruppe bezeichnet. |
|
Datentyp | |
Long |
|
Beschreibung | |
Indem Sie die Eigenschaft AbsolutePosition setzen, weisen Sie ADO an, den Datensatzzeiger auf den Datensatz mit der angegebenen Nummer zu verlagern. Die Eigenschaft AbsolutePosition lässt sich auf eine Zahl zwischen 1 und der von der Eigenschaft RecordCount zurückgegebenen Zahl einstellen, nämlich der Gesamtzahl der Datensätze in der Datensatzgruppe. Wenn Sie die Eigenschaft AbsolutePosition setzen, wird von ADO eine neue Gruppe an Datensätzen in den Cache-Speicher geladen, von denen der erste der von Ihnen angegebene ist. Wie viele Datensätze in den Cache geladen werden, wird durch die Eigenschaft CacheSize bestimmt. Indem Sie die Eigenschaft AbsolutePosition auslesen, können Sie feststellen, auf welcher Position sich der Datensatzzeiger befindet, und zwar als Long- oder PositionEnum-Wert. Wenn beim Lesen der Eigenschaft AbsolutePosition der Datensatzzeiger auf die BOF-Marke zeigt, wird der WertadPosBOF (-2) zurückgegeben. Und befindet sich der Datensatzzeiger auf der EOF-Marke, wird der Wert adPosEOF (-3) zurückgegeben. Wenn die Datensatzgruppe leer ist, die Position des Datensatzzeigers unbekannt ist oder der Datenprovider die Eigenschaft AbsolutePosition nicht unterstützt, so wird der Wert adPosUnknown (-1) zurückgegeben. Beachten Sie, dass sich die absolute Position ändern kann, falls einer der vorherigen Datensätze gelöscht wird oder auch nur benötigt wird. Es empfiehlt sich die Verwendung von Lesezeichen, um die Datensatzposition zu verfolgen. Die Eigenschaft AbsolutePosition ist 1-basiert, das bedeutet, dass ein Wert von 1 den ersten Datensatz in der Gruppe bezeichnet. |
|
Hinweis | |
Nicht alle Provider unterstützen die Eigenschaft AbsolutePosition. |
|
Siehe auch | |
CursorOptionEnum-Enumeration, PositionEnum-Enumeration, Recordset.CacheSize-Eigenschaft, Recordset.RecordCount-Eigenschaft, Recordset.Supports-Methode |
|
Eigenschaft Recordset.ActiveCommand | (Versionen 2.0, 2.1, 2.5, 2.6) |
activecommand = recordset.ActiveCommand | |
Die Eigenschaft ActiveCommand gibt das Command-Objekt zurück, das zum Auffüllen eines Recordset-Objekts verwendet worden ist. |
|
Datentyp | |
Variant (mit Command-Objekt) |
|
Beschreibung | |
Die schreibgeschützte Eigenschaft ActiveCommand wird für die Ausgabe des Command-Objekts verwendet, das zum Auffüllen eines Recordset-Objekts verwendet worden ist. Wenn kein Command-Objekt zum Auffüllen des Recordset-Objekts verwendet worden ist, wird ein Verweis auf ein Null-Objekt zurückgegeben. |
|
Eigenschaft Recordset.ActiveConnection | (Versionen 2.0, 2.1, 2.5, 2.6) |
Set recordset.ActiveConnection = connection recordset.ActiveConnection = connectionstring | |
Die Eigenschaft ActiveConnection gibt das Connection-Objekt für das aktuelle Command-Objekt an. |
|
Datentyp | |
String oder Variant (mit dem aktuellen Connection-Objekt) |
|
Beschreibung | |
Die Eigenschaft ActiveConnection kann entweder einen String oder einen Verweis auf ein Connection-Objekt zurückgeben. Die Eigenschaft ActiveConnection kann nicht gelesen werden, wenn das Objekt Recordset geöffnet ist oder wenn das Objekt Recordset mit einem Command-Objekt erstellt worden ist (und die Eigenschaft Source auf das Objekt Command gesetzt worden ist). Ansonsten kann die Eigenschaft ActiveConnection immer auf einen String oder auf einen Verweis auf ein Connection-Objekt gesetzt werden. Bei Verwendung eines String-Werts sollte es sich um einen gültigen Verbindungs-String handeln, der an die Eigenschaft ConnectionString eines Connection-Objekts übergeben werden kann. Die Eigenschaft ActiveConnection muss gesetzt werden, bevor Sie ein Recordset-Objekt öffnen. Bevor sie gesetzt wird, weist die Eigenschaft ActiveConnection standardmäßig einen Null-Objektverweis als Wert auf. Wenn Sie ActiveConnection als Parameter für die Methode Open des Objekts Recordset angeben, wird die Eigenschaft ActiveConnection auf denselben Wert zugreifen. Wenn Sie ein Recordset-Objekt öffnen, bei dem als Wert für die Eigenschaft Source ein Command-Objekt verwendet wird, so wird die ActiveConnection-Eigenschaft des Objekts Recordset auf den Wert der ActiveConnection-Eigenschaft des Objekts Command zugreifen. |
|
Siehe auch | |
Conection.ConnectionString-Eigenschaft, Recordset.Open-Methode, Recordset.Source-Eigenschaft |
|
Methode Recordset.AddNew | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.AddNew Fields, Values | |
Die Methode AddNew erstellt einen neuen Datensatz innerhalb des aktuellen Recordset-Objekts (das auf den angegebenen Wert gesetzt ist). |
|
Argumente | |
|
|
Beschreibung | |
Die Methode AddNew ist ein Mitglied des Objekts Recordset. Sie hat die Aufgabe, zur durch das Objekt Recordset definierten Gruppe einen neuen Datensatz hinzuzufügen. Dabei haben Sie die Wahl, entweder einen einzelnen Feldnamen und Initialisierungswert anzugeben oder eine ganze Liste an Feldern, und zwar in der Form eines Varianten-Arrays, zusammen mit einem korrespondierenden Varianten-Array an Werten, die diesen Feldern entsprechen. Nach dem Aufruf der Methode AddNew können Sie entweder die Methode Update aufrufen oder erneut die Methode AddNew, um den aktuellen Datensatz in das Recordset-Objekt einzufügen. Wenn Sie die Methode AddNew vor der Methode Update aufrufen, ruft ADO die Methode Update automatisch auf, und macht dann mit dem AddNew-Methodenaufruf weiter. Durch einfaches Hinzufügen des Datensatzes zum Recordset-Objekt ist nicht garantiert, dass sich der neue Datensatz schon in der Datenquelle befindet. Das hängt vom Aktualisierungsmodus des Recordset-Objekts ab. Ist das Objekt Recordset auf unmittelbaren Aktualisierungsmodus gesetzt und Sie geben beim AddNew-Aufruf keine Parameter an, werden die Änderungen unmittelbar nach dem anschließenden Aufruf von Update bzw. AddNew vorgenommen. Geben Sie beim Aufruf der Methode AddNew hingegen Parameter an, so werden die Werte bis zum nächsten Aufruf von Update lokal zwischengespeichert. In der Zeit zwischen dem Aufruf von AddNew und Update wird die Eigenschaft EditMode auf adEditAdd gesetzt und wird erst dann wieder auf adEditNone zurückgesetzt, wenn die Aktualisierung abgeschlossen ist. Ist das Objekt Recordset auf Batch-Aktualisierungsmodus gesetzt, werden die Änderungen nur ausgeführt, wenn die Methode UpdateBatch des Recordset-Objekts aufgerufen wird. In diesem Modus werden die Änderungen lokal zwischengespeichert, wenn die Methode AddNew keine Parameter umfasst. Dadurch wird auch die Eigenschaft EditMode auf adEditAdd gesetzt. Die Änderungen werden an den Provider gesendet – aber immer noch nicht in die Datenquelle geschrieben –, wenn die Methode Update aufgerufen wird, wobei wiederum die Eigenschaft EditMode auf adEditNone gesetzt wird. Wenn Sie hingegen die Methode AddNew mit Parametern aufrufen, werden die Änderungen unmittelbar an den Provider gesendet, damit sie beim nächsten Aufruf von UpdateBatch in die Datenquelle geschrieben werden. Unterstützt Ihr Recordset-Objekt Lesezeichen, wird der neue Datensatz am Ende Ihrer Datensatzgruppe eingefügt und ist jederzeit zugänglich. Unterstützt Ihr Recordset-Objekt jedoch keine Lesezeichen, ist es durchaus möglich, dass Sie auf den Datensatz nicht mehr zugreifen können, nachdem Sie ihn verlassen haben; Sie sollten sich also niemals darauf verlassen, dass er da ist. Verwenden Sie stattdessen die Methode Requery des Objekts Recordset, damit Ihre Anwendung das Feld finden kann. |
|
Siehe auch | |
EditModeEnum-Enumeration, Recordset.EditMode-Eigenschaft, Recordset.Requery-Methode, Recordset.Update-Methode, Recordset.UpdateBatch-Methode |
|
Eigenschaften Recordset.BOF/Recordset.EOF | (Versionen 2.0, 2.1, 2.5, 2.6) |
Boolean = recordset.BOF Boolean = recordset.EOF | |
Die Eigenschaft BOF (Beginning of File) bedeutet, dass sich der Datensatzzeiger vor dem ersten Datensatz in der Gruppe befindet. Die Eigenschaft EOF (End of File) bedeutet, dass sich der Datensatzzeiger direkt hinter dem letzten Datensatz in der Gruppe befindet. |
|
Datentyp | |
Boolean |
|
Beschreibung | |
Die Eigenschaften BOF und EOF sind beide schreibgeschützt. Ist sowohl die Eigenschaft BOF als auch EOF True, so ist die aktuelle Datensatzgruppe leer. Beim Verwenden einer Move-Methode (Move, MovePrevious, MoveFirst, MoveNext oder MovePrevious) wird ein Fehler erzeugt. Ist sowohl die Eigenschaft BOF als auch EOF False, so zeigt der Datensatzzeiger auf irgendeinen Datensatz innerhalb der Datensatzgruppe. In diesem Fall lassen sich die Move-Methoden problemlos einsetzen. Ist die Eigenschaft BOF True und die Eigenschaft EOF False, so zeigt der Datensatzzeiger auf die Position direkt vor dem ersten Datensatz innerhalb der Gruppe. In diesem Fall können Sie die Methode MovePrevious oder die Methode Move mit einer negativen Zahl verwenden, ohne einen Fehler zu erzeugen. Ist die Eigenschaft EOF True und die Eigenschaft BOF False, so zeigt der Datensatzzeiger auf die Position direkt hinter dem letzten Datensatz in der Gruppe. In diesem Fall können Sie die Methode MoveFirst oder die Methode Move mit einer positiven Zahl verwenden, ohne einen Fehler zu erzeugen. Wenn Sie den letzten Datensatz in der Gruppe löschen, bleiben die Eigenschaften BOF und EOF auf False gesetzt, bis Sie den Datensatzzeiger verlagern. Wird durch Aufruf sowohl von MoveFirst als auch von MoveLast kein Datensatz gefunden, so werden die Eigenschaften EOF und BOF beide auf True gesetzt. Kann weder MovePrevious noch Move – mit einem Wert kleiner Null – einen Datensatz finden, wird die Eigenschaft BOF auf True gesetzt. Kann weder MoveNext noch Move – mit einem Wert größer Null – einen Datensatz finden, wird die Eigenschaft EOF auf True gesetzt. |
|
Siehe auch | |
Recordset.Move-Methode, Recordset.MoveFirst-Methode, Recordset.MoveLast-Methode, Recordset.MoveNext-Methode, Recordset.MovePrevious-Methode, Recordset.Open-Methode |
|
Eigenschaft Recordset.Bookmark | (Versionen 2.0, 2.1, 2.5, 2.6) |
bookmark = recordset.Bookmark | |
Die Eigenschaft Bookmark gibt einen eindeutigen Bezeichner für den aktuellen Datensatz in der Gruppe zurück. Indem die Eigenschaft Bookmark auf einen zuvor gelesenen Wert gesetzt wird, kann der Datensatzzeiger wieder auf den ursprünglichen Datensatz gesetzt werden. |
|
Datentyp | |
Variant |
|
Beschreibung | |
Die Eigenschaft Bookmark ist nur für Datensatzgruppen verfügbar, die Lesezeichen unterstützen. Lesezeichen werden zum Speichern der Position des aktuellen Datensatzes verwendet und später dazu, den aktuellen Datensatz wieder auf das angegebene Lesezeichen zu setzen. Lesezeichen werden innerhalb von Recordset-Objekten, die Klons voneinander sind, austauschbar verwendet, aber nicht mit anderen Recordset-Objekten, selbst wenn diese aus derselben Quelle erstellt worden sind. Der Rückgabewert der Eigenschaft Bookmark ist nicht lesbar und sollte in Vergleichen nicht verwendet werden, da zwei Lesezeichen auf denselben Datensatz nicht unbedingt identisch sind. |
|
Hinweis | |
Nicht alle Provider unterstützen die Eigenschaft Bookmark. |
|
Siehe auch | |
CursorOptionEnum-Enumeration, Recordset.Supports-Methode |
|
Eigenschaft Recordset.CacheSize | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.CacheSize = cachesize | |
Die Eigenschaft CacheSize gibt an, wie viele Datensätze von ADO im lokalen System zwischengespeichert werden. |
|
Datentyp | |
Long |
|
Beschreibung | |
Die Eigenschaft CacheSize setzt oder liest die Anzahl an Datensätzen, die von ADO jeweils im lokalen Arbeitsspeicher gespeichert werden. Der Wert von CacheSize muss mindestens 1 betragen, ansonsten tritt ein Fehler auf. Der Standardwert der Eigenschaft CacheSize ist 1. Wird eine Datensatzgruppe das erste Mal geöffnet, wird die von der Eigenschaft CacheSize festgelegte Anzahl an Datensätzen gelesen. Sobald der Datensatzzeiger auf einen Datensatz verlagert wird, der hinter dieser Zahl liegt, wird der nächste Satz an Datensätzen zurückgegeben, von denen der erste der nächste Datensatz in der Datensatzgruppe ist. Wenn weniger Datensätze verfügbar sind, fordert CacheSize nur diese an. Die Eigenschaft CacheSize lässt sich für eine Datensatzgruppe jederzeit ändern, allerdings ändert sich die in den Cache gelesene Anzahl and Datensätzen erst, wenn der Zeiger auf einen Datensatz außerhalb des aktuellen Cache gesetzt wird. Die Werte innerhalb des Cache spiegeln nicht die Änderungen wider, die von anderen Anwendern vorgenommen worden sind. Um dies zu erreichen, verwenden Sie die Methode Resync. |
|
Siehe auch | |
Recordset.Resync-Methode |
|
Methode Recordset.Cancel | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Cancel | |
Die Methode Cancel bricht eine asynchrone Operation für das Objekt Recordset ab. |
|
Beschreibung | |
Die Methode Cancel können Sie aufrufen, um eine asynchrone Operation des von der Methode Open aufgerufen Recordset-Objekts abzubrechen. |
|
Siehe auch | |
Recordset.Open-Methode |
|
Methode Recordset.CancelBatch | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.CancelBatch AffectRecords | |
Die Methode CancelBatch bricht die gerade anstehende Batch-Aktualisierung der aktuellen Datensatzgruppe ab. |
|
Argumente | |
|
|
Beschreibung | |
Mit der Methode CancelBatch können Sie beliebige oder alle anstehenden Aktualisierungen im aktuellen Recordset-Objekt vom Batch-Aktualisierungsmodus ausschließen. Wird die Methode jedoch im unmittelbaren Aktualisierungsmodus aufgerufen, so wird ein Fehler erzeugt. Die Methode CancelUpdate wird durch die Methode CancelBatch aufgerufen und entfernt etwaige durch das Batch vorgenommene Aktualisierungen oder neu hinzugefügte Datensätze. Aus diesem Grund kann die aktuelle Datensatzposition ungültig sein, und es empfiehlt sich, dass Sie den Zeiger auf eine verlässliche Datensatzposition verlagern, und zwar entweder durch ein gültiges Lesezeichen oder durch eine Methode wie MoveFirst. Tritt während des CancelBatch-Aufrufs ein Laufzeitfehler auf, so entstehen Konflikte mit allen Datensätzen, die von der aktuellen Datensatzgruppe angefordert worden sind. Sind nur einige wenige Datensätze vom Konflikt betroffen, so wird die Errors-Kollektion entsprechend aufgefüllt und es entsteht kein Laufzeitfehler. |
|
Hinweis | |
Nicht alle Provider unterstützen die Eigenschaft CancelBatch. |
|
Siehe auch | |
CursorOptionEnum-Enumeration, Recordset.CancelUpdate-Methode, Recordset.Filter-Property, AffectEnum-Enumeration, Recordset.Supports-Methode |
|
Methode Recordset.CancelUpdate | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.CancelUpdate | |
Die Methode CancelUpdate nimmt alle Änderungen der aktuellen Batch-Aktualisierung zurück, die seit dem letzten Aufruf der Methoden AddNew oder Update vorgenommen worden sind. |
|
Beschreibung | |
Die Methode CancelUpdate des Recordset-Objekts nimmt Änderungen zurück, die seit dem Aufruf von Update oder Recordset am Datensatz vorgenommen worden sind. Außerdem nimmt sie die mit AddNew durchgeführte Erstellung neuer Datensätze zurück. Die Methode CancelUpdate kann nur vor der Update-Methode für den aktuellen Datensatz aufgerufen werden. Die einzige andere Möglichkeit, Änderungen an einem Datensatz zurückzunehmen, haben Sie durch das Transaktionsmanagement mit den Recordset-Methoden BeginTrans und RollbackTrans. |
|
Siehe auch | |
Recordset.AddNew-Methode, Recordset.Update-Methode |
|
Methode Recordset.Clone | (Versionen 2.0, 2.1, 2.5, 2.6) |
Set cloned_recordset = original_recordset.Clone | |
Die Methode Clone des Recordset-Objekts gibt einen Klon der aktuellen Datensatzgruppe zurück. |
|
Rückgabewerte | |
Recordset-Objekt |
|
Beschreibung | |
Die Methode Clone des Objekts Recordset erstellt ein exaktes Duplikat des ursprünglichen Recordset-Objekts. Verwenden Sie diese Methode, wenn Sie zu einem bestimmten Zeitpunkt innerhalb derselben Datensatzgruppe auf mehr als einen Datensatz zugreifen wollen. Das ist effizienter als das Erstellen eines neuen Recordset-Objekts für dieselbe Datensatzgruppe. Beim Erstellen eines Klons wird seine Datensatzposition auf den ersten Datensatz in der Gruppe gesetzt. Nur Datensatzgruppen, die Lesezeichen unterstützen, können geklont werden. Lesezeichen einer Datensatzgruppe sind auch für die Klons dieser Datensatzgruppe gültig, und umgekehrt. Durch das Schließen eines Klons wird die ursprüngliche Datensatzgruppe nicht geschlossen, und umgekehrt. |
|
Siehe auch | |
LockTypeEnum-Enumeration |
|
Methode Recordset.Close | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Close | |
Die Methode Close schließt ein Recordset-Objekt. |
|
Beschreibung | |
Die Methode Close schließt entweder ein Connection- oder ein Recordset-Objekt. Wenn Sie diese Methode für eines der beiden Objekttypen aufrufen, werden alle von der Verbindung bzw. der Datensatzgruppe abhängigen Objekte ebenfalls geschlossen. Die Methode Close wird beispielsweise eingesetzt, um Systemressourcen freizusetzen ohne die Ressource aus dem Speicher zu löschen. Nachdem Sie ein Connection- oder Recordset-Objekt geschlossen haben, können Sie es wieder neu öffnen. Um das Objekt vollständig aus dem Speicher zu entfernen, setzen Sie es auf Nothing. Wenn Sie die Close-Methode des Objekts Connection aufrufen, werden alle angeschlossenen Recordset-Objekte geschlossen, aber das angeschlossene Command-Objekt bleibt erhalten. Dabei wird die Eigenschaft ActiveConnection auf Nothing gesetzt und die Parameters-Kollektion des Command-Objekts wird bereinigt. Sie können weiterhin mit Hilfe der Methode Open eine Verbindung zu einer Datenquelle herstellen. Wenn Sie ein Connection-Objekt schließen, an das geöffnete Recordset-Objekte angeschlossen sind, werden etwaige anstehende Änderungen am Recordset-Objekt zurückgerollt. Wird die Methode Close des Connection-Objekts aufgerufen, während eine Transaktion gerade verarbeitet wird, wird ein Fehler erzeugt. Wenn ein Connection-Objekt die Verbindung verliert, während eine Transaktion im Gange ist, wird die Transaktion automatisch zurückgerollt. Wenn Sie die Methode Close auf das Recordset-Objekt anwenden, wird ein exklusiver Zugriff auf die Daten wieder aufgehoben und etwaige verbundene Daten werden freigegeben. Sie können die Open-Methode später wieder auf dieses Recordset-Objekt anwenden. Befindet sich Ihre Datenquelle im unmittelbaren Aktualisierungsmodus und die Close-Methode wird während eines Bearbeitungsvorgangs aufgerufen, entsteht ein Fehler. Um einen solchen Fehler zu vermeiden, rufen Sie entweder die Methode Update oder die Methode CancelUpdate auf. Wenn Sie sich im Batch-Aktualisierungsmodus befinden, gehen die Daten seit dem letzten UpdateBatch verloren. Haben Sie ein Recordset-Objekt geklont, dessen Close-Methode Sie aufgerufen haben, so wird das geklonte Recordset-Objekt nicht geschlossen, und umgekehrt. |
|
Siehe auch | |
Recordset.ActiveConnection-Eigenschaft, Recordset.CancelUpdate-Methode, Recordset.Open-Methode, Recordset.Update-Methode |
|
Methode Recordset.CompareBookmarks | (Versionen 2.0, 2.1, 2.5, 2.6) |
result = recordset.CompareBookmarks (Bookmark1, Bookmark2) | |
Die Methode CompareBookmarks bestimmt die Position von zwei Bookmarks in einer Datensatzgruppe. Die Position wird als relative Position zueinander bestimmt. |
|
Argumente | |
|
|
Rückgabewerte | |
CompareEnum |
|
Beschreibung | |
Die Methode CompareBookmark gibt einen Wert zurück, der anzeigt, welches von zwei übergebenen Lesezeichen innerhalb der Ordinalposition zuerst kommt. Lesezeichen sind eindeutig für Zeilen innerhalb einer Datensatzgruppe und ihren Klonen. Der Vergleich von Lesezeichen aus verschiedenen Datensatzgruppen (die nicht durch Klonen erzeugt wurden) liefert keine zuverlässigen Ergebnisse. Sie erhalten das Lesezeichen der aktuellen Zeile, indem Sie die Eigenschaft Bookmark lesen. |
|
Siehe auch | |
CompareEnum-Enumeration, Recordset.Bookmark-Eigenschaft, Recordset.Clone-Methode |
|
Eigenschaft Recordset.CursorLocation | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.CursorLocation = cursorlocation | |
Die Eigenschaft CursorLocation gibt die Adresse des Cursordienstes an. |
|
Datentyp | |
CursorLocationEnum (Long) |
|
Beschreibung | |
Der Wert der Eigenschaft CursorLocation kann auf einen der in Anhang E aufgeführten gültigen CursorLocationEnum-Werte gesetzt werden. Bei geschlossenen Recordset-Objekten besteht für die Eigenschaft CursorLocation Lese- und Schreibberechtigung, bei geöffneten Recorset-Objekten darf dieser Wert nur gelesen werden. Eine von der Methode Execute zurückgegebene Datensatzgruppe erbt den Wert für die Cursorposition aus dem Originalobjekt. Recordset-Objekte erben diesen Wert automatisch von dem Connection-Objekt, das sie eingerichtet hat. |
|
Siehe auch | |
Command.Object-Methode, Connection.Execute-Methode, CursorLocationEnum-Enumeration, Recordset.Open-Methode |
|
Eigenschaft Recordset.CursorType | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.CursorLocation = cursorlocation | |
Die Eigenschaft CursorType bezeichnet den für die aktuelle Datensatzgruppe zu verwendenden Cursortyp. |
|
Datentyp | |
CursorTypeEnum (Long) |
|
Beschreibung | |
Die Eigenschaft CursorType bezeichnet den Cursortyp, der verwendet werden soll, wenn die aktuelle Datensatzgruppe geöffnet wird. Für diese Eigenschaft besteht Lese- und Schreibberechtigung, wenn das Objekt Recordset geschlossen ist. In geöffnetem Zustand ist es schreibgeschützt. Als Wert für die Eigenschaft CursorType ist eine der in Anhang E aufgeführten CursorType-Enumerationen zulässig. Unterstützt der aktuelle Datenprovider den gewählten Cursortyp nicht, so ändert sich der Wert der Eigenschaft CursorType, wenn das Objekt Recordset geöffnet wird. Dieser Wert kann bei Bedarf von der Anwendung gelesen werden. Wird dann das Recordset-Objekt wieder geschlossen, wird der ursprünglich gewählte Wert wieder an die Eigenschaft CursorType übergeben. Anhand der Methode Supports des Recordset-Objekts können Sie feststellen, welche Funktionalität vom gewählten Cursortyp unterstützt wird. (Weitere Informationen über Cursortypen erhalten Sie in Kapitel 5.) Der dynamische Cursor (Dynamic) unterstützt die von der Methode Supports beschriebene adMovePrevious-Funktionalität. Der Vorwärtscursor (Forward Only) unterstützt keine der Funktionalitäten, die die Supports-Methode beschreibt. Der Schlüsselcursor (Keyset) und der statische Cursor (Static) unterstützten die von der Methode Supports beschriebenen Funktionalitäten adBookmark, adHoldRecords, adMovePrevious und adResync functionality. Der Vorwärtscursor unterstützt keine Lesezeichen, da die Funktionalität für das Zurückspringen auf einen Datensatz mit Lesezeichen fehlt. Der statische und der Schlüsselcursor unterstützen Lesezeichen über ADO, und der dynamisch Cursor unterstützt Lesezeichen über den Datenprovider (falls dieser sie unterstützt). |
|
Hinweis | |
Wurde die Eigenschaft CursorLocation auf adUseClient gesetzt, kann nur der CursorType-Wert adOpenStatic verwendet werden. |
|
Siehe auch | |
Connection.CursorLocation-Eigenschaft, CursorTypeEnum-Enumeration, Recordset.CursorLocation-Eigenschaft, Recordset.Open-Methode, Recordset.Supports-Methode |
|
Eigenschaft Recordset.DataMember | RDM-Eigenschaft (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.DataMember = datamember recordset.DataSource = datasource | |
Die Eigenschaft DataMember bezeichnet das Objekt in der von der Eigenschaft DataSource angegebenen Datenquelle, mit dem das Recordset-Objekt erstellt werden soll. |
|
Datentyp | |
|
|
Beschreibung | |
Die Eigenschaften DataMember und DataSource werden immer zusammen verwendet. Die Eigenschaft DataSource bezeichnet die Datenquelle, in der sich das durch DataMember angegebene Objekt befindet. Die Eigenschaft DataMember gibt an, welches Objekt innerhalb der Datenquelle zur Erstellung des Recordset-Objekts verwendet werden soll. Das Recordset-Objekt muss geschlossen werden, wenn die Eigenschaft DataMember gesetzt wird. Es entsteht auch ein Fehler, wenn die Eigenschaft DataSource vor der Eigenschaft DataMember gesetzt wird. |
|
Methode Recordset.Delete | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Delete AffectRecords | |
Die Methode Delete löscht bestimmte Datensätze innerhalb einer Datensatzgruppe. |
|
Argumente | |
|
|
Beschreibung | |
Die Methode Delete löscht einen Datensatz oder eine Gruppe von Datensätzen, die mit dem Recordset-Objekt verwendet werden. Die Methode Delete entfernt ein bestimmtes Parameter-Objekt aus der Parameter-Kollektion, wenn es darin verwendet wird. Wenn Sie die Methode Delete mit dem Recordset-Objekt zusammen verwenden, werden die zu löschenden Datensätze nur für das Löschen markiert. Gestattet die betreffende Datensatzgruppe keine Löschung, entsteht ein Fehler. Im unmittelbaren Aktualisierungsmodus wird die Löschung sofort durchgeführt. Im Batch-Aktualisierungsmodus jedoch werden die Datensätze für das Löschen markiert und zwischengespeichert, bis die Methode UpdateBatch aufgerufen wird. Die gelöschten Datensätze können mit Hilfe der Eigenschaft Filter angezeigt werden. Nachdem Sie einen Datensatz gelöscht haben, steht die aktuelle Datensatzposition immer noch auf diesem Datensatz. Sobald Sie den Cursor verlagern, kann auf die Datensätze nicht mehr zugegriffen werden, und beim Versuch, einen gelöschten Datensatz zu lesen, entsteht ein Fehler. Wenn Sie Transaktionsmanagement mit BeginTrans verwenden, können Sie eine Löschung von Datensätzen mit der Methode RollbackTrans rückgängig machen. Im Batch-Aktualisierungsmodus haben Sie außerdem die Möglichkeit, eine Löschung aufzuheben, indem Sie die Methode CancelBatch anwenden. Wenn Sie versuchen, einen Datensatz zu löschen, der bereits von einem anderen Anwender gelöscht worden ist, so entsteht kein Laufzeitfehler, aber die Errors-Kollektion wird mit Warnungen gefüllt. Ein Laufzeitfehler tritt nur auf, wenn alle angeforderten Datensätze, die gelöscht werden sollen, aus irgendeinem Grund einen Konflikt aufweisen. Um herauszufinden, welche Datensätze Konflikte aufweisen, verwenden Sie die Eigenschaft Filter mit dem Wert adFilterAffectedRecords und der Eigenschaft Status. Die Methode Delete ist nur für die Parameters-Kollektion des Command-Objekts zulässig. Den Namen des aus der Kollektion zu löschenden Parameters geben Sie in Form eines Strings an. |
|
Hinweis | |
Nicht alle Provider unterstützen die Methode Delete. |
|
Siehe auch | |
AffectEnum-Enumeration, Connection.RollbackTrans-Methode, CursorOptionEnum-Enumeration, Recordset.CancelBatch-Methode, Recordset.Filter-Eigenschaft, Recordset.Status-Eigenschaft, Recordset.Supports-Methode |
|
Eigenschaft Recordset.EditMode | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.EditMode = editmode | |
Die Eigenschaft EditMode bezeichnet den aktuellen Bearbeitungsstatus eines bestimmten Datensatzes. |
|
Datentyp | |
EditModeEnum (Long) |
|
Beschreibung | |
Mit der Eigenschaft EditMode legen Sie fest, ob der aktuelle Datensatz geändert wird, wenn ein Bearbeitungsvorgang unterbrochen worden ist. Anhand dieser Information können Sie bestimmen, ob Sie die Methode Update oder die Methode CancelUpdate aufrufen müssen. Als Wert für die Eigenschaft EditMode ist eine der in Anhang E aufgeführten EditModeEnum-Enumerationen zulässig. |
|
Siehe auch | |
EditModeEnum-Enumeration, Recordset.AddNew-Methode, Recordset.CancelUpdate-Methode, Recordset.Update-Methode |
|
Ereignis Recordset.EndOfRecordset | (Versionen 2.0, 2.1, 2.5, 2.6) |
EndOfRecordset(fMoreData As Boolean, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis EndOfRecordset wird aufgerufen, wenn versucht wurde, den Datensatzzeiger hinter das Ende der Datensatzgruppe zu verlagern. |
|
Argumente | |
|
|
Siehe auch | |
EventStatusEnum-Enumeration, Recordset.MoveNext-Methode |
|
Eigenschaft Recordset.EOF | (Versionen 2.0, 2.1, 2.5, 2.6) |
Siehe Recordset.BOF-Eigenschaft. |
Ereignis Recordset.FetchComplete | (Versionen 2.0, 2.1, 2.5, 2.6) |
FetchComplete(ByVal pError As ADODB.Error, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis FetchComplete wird aufgerufen, wenn eine lang andauernde asynchrone Operation (Fetch) abgeschlossen ist und alle Datensätze zurückgegeben worden sind. |
|
Argumente | |
|
|
Siehe auch | |
EventStatusEnum-Enumeration |
|
Ereignis Recordset.EndOfRecordset | (Versionen 2.0, 2.1, 2.5, 2.6) |
FetchProgress(ByVal Progress As Long, _ ByVal MaxProgress As Long, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis FetchProgress wird während einer lang andauernden asynchronen Operation (Fetch) aufgerufen, um zu berichten, wie weit die Operation fortgeschritten ist. |
|
Argumente | |
|
|
Siehe auch | |
EventStatusEnum-Enumeration, Recordset.FetchProgress-Ereignis |
|
Ereignis Recordset.FieldChangeComplete | (Versions 2.5, 2.6) |
FieldChangeComplete(ByVal cFields As Long, _ ByVal Fields As Variant, _ ByVal pError As ADODB.Error, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis FetchChangeComplete wird aufgerufen, nachdem eine Operation einen oder mehrere Werte des Objekts Field geändert hat. |
|
Argumente | |
|
|
Siehe auch | |
EventStatusEnum-Enumeration, Recordset.WillChangeField-Ereignis, Recordset.Value, Recordset.Update |
|
Kollektion Recordset.Fields | (Versionen 2.0, 2.1, 2.5, 2.6) |
record.Fields | |
Die Field-Kollektion enthält mehrere Field-Objekte für das aktuelle Recordset-Objekt, eines für jede Spalte in der Datensatzgruppe. |
|
Datentyp | |
Fields (Kollektionsobjekt) |
|
Beschreibung | |
Die Fields-Kollektion eines Recordset-Objekts kann vor dem Öffnen eines Recordset-Objekts aufgefüllt werden. Dazu rufen Sie die Methode Refresh der Fields-Kollektion auf. Field-Objekte können zur Kollektion entweder durch Aufruf der Methode Field.Append hinzugefügt werden oder durch Verweis auf ein Field-Objekt über einen Namen, der nicht bereits Teil der Kollektion ist. Durch Aufruf der Methode Field.Update wird das Feld zur Kollektion hinzugefügt; wenn möglich innerhalb der Datenquelle. Bis zu diesem Zeitpunkt gibt die Eigenschaft Field.Status den Wert adFieldPendingInsert zurück. |
|
Siehe auch | |
Field.Append-Methode, Field.Refresh-Methode, Field.Update-Methode |
|
Eigenschaft Recordset.Filter | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.CancelBatch AffectRecords | |
Die Eigenschaft Filter filtert eine Auswahl an Datensätzen innerhalb des aktuellen Recordset-Objekts. |
|
Datentyp | |
Variant |
|
Beschreibung | |
Wenn Sie die Eigenschaft Filter setzen, wird der Cursortyp auf die aktuell gefilterte Datensatzgruppe geändert. In diesem Fall sind die Eigenschaften AbsolutePosition, AbsolutePage, RecordCount und PageCount betroffen, da der Datensatz zum aktuellen Datensatz wird, der die von der Eigenschaft Filter vorgeschriebenen Anforderungen erfüllt.. Für die Eigenschaft Filter sind drei Arten von Werten zulässig:
Klauseln ähneln den WHERE-Klauseln in SQL-Anweisungen. Sie bestehen aus einem Feldnamen, einem Operator und einem Wert. Mehrere Klauseln lassen sich mit den Schlüsselwörtern AND und OR gruppieren und verbinden. Der Name eines Felds in einer Klausel muss innerhalb der aktuellen Datensatzgruppe zulässig sein, und wenn er Leerzeichen enthält, muss er in eckige Klammern gesetzt werden ([Telefon geschäftlich]). Innerhalb einer Klausel ist einer der folgenden Operatoren zulässig: <, >, <=, >=, <>, = oder LIKE. Der Wert innerhalb einer Klausel ist ähnlich wie die Daten innerhalb des angegebenen Felds. Für die Darstellung von Zahlen sind Dezimalzeichen, Dollarzeichen und die Exponentialschreibweise zulässig. Datumsangaben werden von Doppelkreuzzeichen (#) (#06/20/1973#) eingeschlossen und Strings von halben Anführungszeichen ('Jason T. Roff'). Wenn Sie das Schlüsselwort LIKE als Operator verwenden, sind als Platzhalter nur das Sternchen (*) und das Prozentzeichen (%) zulässig, wobei sich eins der beiden Zeichen am Ende des Werts befinden muss (Jason* oder *as*). Wenn Sie die Eigenschaft Filter auf ein Array aus Lesezeichen setzen, müssen die Lesezeichen innerhalb der Datensatzgruppe eindeutig sein, d. h. auf verschiedene Datensätze zeigen. Wenn Sie den Filter auf eine FilterGroupEnum-Enumeration setzen, wählen eine der in Tabelle E-25 aufgelisteten Konstanten aus. Die Filter-Eigenschaft kann wegen eines Datensatzes, der von einem anderen Anwender gelöscht worden ist, fehlschlagen. Dabei tritt kein Laufzeitfehler auf, aber die Errors-Kollektion wird mit Warnungen gefüllt. Ein Laufzeitfehler tritt nur auf, wenn alle angeforderten Datensätze, die gefiltert werden sollen, aus irgendeinem Grund einen Konflikt aufweisen. Mit Hilfe der Eigenschaft Status können Sie herausfinden, welche Datensätze Konflikte aufweisen. |
|
Siehe auch | |
AffectEnum-Enumeration, FilterGroupEnum-Enumeration, Recordset.AbsolutePage-Eigenschaft, Recordset.AbsolutePosition-Eigenschaft, Recordset.CancelBatch-Methode, Recordset.Delete-Eigenschaft, Recordset.PageCount-Eigenschaft, Recordset.RecordCount-Eigenschaft, Recordset.Resync-Methode, Recordset.UpdateBatch-Methode |
|
Methode Recordset.Find | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Find (Criteria, SkipRows, SearchDirections, Start) | |
Die Methode Find verlagert den Datensatzzeiger auf eine Zeile innerhalb der aktuellen Datensatzgruppe, die dem einspaltigen Suchkriterium entspricht. |
|
Argumente | |
|
|
Beschreibung | |
Wird vor dem Aufruf der Methode Find kein aktueller Datensatz bestimmt, so entsteht ein Fehler. Es ist eine gute Angewohnheit, zuerst die Methode MoveFirst und erst danach die Methode Find aufzurufen. Die Methode Find funktioniert nur für Suchkriterien, die sich auf eine einzige Spalte beziehen. Nicht alle Provider unterstützen Lesezeichen und können daher keine Rückwärtssuche vornehmen. Mit der Methode Supports finden Sie heraus, ob Ihr aktueller Datenprovider die Find-Operation, die Sie verwenden wollen, auch unterstützt. |
|
Siehe auch | |
CursorOptionEnum-Enumeration, Recordset.MoveFirst-Methode, Recordset.Supports-Methode, SearchDirectionEnum-Enumeration |
|
Methode Recordset.GetRows | (Versionen 2.0, 2.1, 2.5, 2.6) |
Set record_array = recordset.GetRows(Rows, Start, Fields) | |
Die GetRows-Methode des Recordset-Objekts gibt mehrere Datensätze aus einem geöffneten Recordset-Objekt zurück, und zwar in Form eines Arrays. |
|
Argumente | |
|
|
Rückgabewerte | |
|
|
Beschreibung | |
Die Methode GetRows des Recordset-Objekts schreibt mehrere Datensätze aus einer Datensatzgruppe in ein zweidimensionales Array. Die Datensätze werden in Form eines Varianten-Arrays zurückgegeben, dessen Dimensionen von ADO automatisch gesetzt werden. Der erste Index ist das Feld, der zweite die Datensatznummer. Die zurückgegebenen Daten sind schreibgeschützt. Über das erste Argument können Sie festlegen, wie viele Datensätze zurückgegeben werden sollen. Ist dieser Wert größer als die Anzahl an Datensätzen, werden nur die verbleibenden Datensätze zurückgegeben. Unterstützt das gewählte Recordset-Objekt Lesezeichen, können Sie die Startposition auch über den Wert der Eigenschaft Bookmark für den betreffenden Datensatz angeben. Nach Aufruf von GetRows wird der Datensatzzeiger auf den nächsten ungelesenen Datensatz gesetzt. Sind keine weiteren Datensätze vorhanden, nimmt die Eigenschaft EOF den Wert True an. Das letzte Argument, Fields, kann ein einzelnes Feld repräsentieren oder eine Gruppe von Feldern und bildet den Rückgabewert der Methode GetRows. Der Wert wird als Name eines einzelnen Felds, als Ordinalzahl eines einzelnen Felds, als Array an Feldnamen oder als Array an Feldordinalzahlen zurückgegeben. |
|
Hinweis | |
Nicht alle Provider unterstützen die Methode GetRows. |
|
Siehe auch | |
BookmarkEnum-Enumeration, CursorOptionEnum-Enumeration, GetRowsOptionEnum-Enumeration, Recordset.Bookmark-Eigenschaft, Recordset.EOF-Eigenschaft, Recordset.Supports-Methode |
|
Methode Recordset.GetString | (Versionen 2.0, 2.1, 2.5, 2.6) |
Set Variant = recordset.GetString(StringFormat, NumRows, ColumnDelimiter, _ RowDelimiter, NullExpr) | |
Die Methode GetString gibt das gesamte Recordset-Objekt als String zurück. |
|
Argumente | |
|
|
Rückgabewerte | |
Variant |
|
Beschreibung | |
Die Methode GetString konvertiert den Inhalt des Recordset-Objekts in einen String-Wert. |
|
Siehe auch | |
StringFormatEnum-Enumeration |
|
Eigenschaft Recordset.Index | (Versionen 2.1, 2.5, 2.6) |
recordset.Index = index | |
Die Eigenschaft Index setzt den aktuellen Index einer bestimmten Datensatzgruppe. |
|
Datentyp | |
String |
|
Beschreibung | |
Für die Eigenschaft Index besteht sowohl Lese- als auch Schreibberechtigung. Sie kann jedoch nicht innerhalb eines WillRecordsetChange- oder eines RecordsetChangeComplete-Ereignisses oder während einer asynchronen Ausführung gesetzt werden. Die Eigenschaft Index wird mit der Methode Seek zusammen verwendet, um die der Tabelle zugrunde liegende indizierte Struktur zu nutzen (im Gegensatz zur Methode Find, die sequentiell arbeitet). Es ist möglich, dass sich beim Setzen des Index die Position des Datensatzzeigers ändert (d. h. es wird der Wert der Eigenschaft AbsolutePosition geändert). Außerdem treten die folgenden Ereignisse auf: WillRecordsetChange, RecordsetChangeComplete, WillMove und MoveComplete. Ist die Eigenschaft LockType auf adLockPessimistic oder adLockOptimistic gesetzt, wird die Methode UpdateBatch aufgerufen und gegebenenfalls anzuwendende Filter werden freigegeben. Zudem wird der Datensatzzeiger auf den ersten Datensatz in der indizierten Datensatzgruppe verlagert. |
|
Hinweis | |
Nicht alle Provider unterstützten Indexe und somit auch nicht die Eigenschaft Index. |
|
Siehe auch | |
CursorOptionEnum-Enumeration, Recordset.MoveComplete-Ereignis, Recordset.RecordsetChangeComplete-Ereignis, Recordset.Seek-Methode, Recordset.UpdateBatch-Methode, Recordset.WillMove-Ereignis, Recordset.WillRecordsetChange-Ereignis, Recordset.Supports-Methode |
|
Eigenschaft Recordset.LockType | (Versionen 2.0, 2.1, 2.5, 2.6) |
locktype = recordset.LockType | |
Die Eigenschaft LockType bezeichnet die Art von Sperren, die auf Datensätze gesetzt werden, wenn sie bearbeitet werden. |
|
Datentyp | |
LockTypeEnum (Long) |
|
Beschreibung | |
Für die Eigenschaft LockType besteht Lese- und Schreibberechtigung, wenn das Recordset-Objekt geschlossen ist. Ist es geöffnet, ist LockType schreibgeschützt. Die Eigenschaft LockType kann einen der in Tabelle E-29 aufgeführten Werte annehmen. |
|
Hinweis | |
Manche Provider unterstützen bestimmte Arten der Datensatzsperre nicht. In diesem Fall ist es möglich, dass der Datenprovider automatisch einen anderen Sperrmechanismus verwendet. Welche Funktionalitäten bei Ihrem Datenprovider verfügbar sind, finden Sie anhand der Eigenschaft Supports heraus. |
|
Siehe auch | |
LockTypeEnum-Enumeration, Recordset.Open-Methode, Recordset.Supports-Methode, Recordset.Update-Methode |
|
Eigenschaft Recordset.MarshalOptions | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.MarshalOptions = marshaloptions | |
Die Eigenschaft MarshalOptions zeigt an, welche Datensätze an den Server zurückbeordert werden. |
|
Datentyp | |
MarshalOptionsEnum (Long) |
|
Beschreibung | |
Die Eigenschaft MarshalOptions nimmt einen der in Anhang E angeführten MarshalOptionsEnum-Enumerationswerte an. |
|
Siehe auch | |
MarshalOptionsEnum-Enumeration |
|
Eigenschaft Recordset.MaxRecords | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.MaxRecords = maxrecords | |
Die Eigenschaft MaxRecords gibt an, wie viele Datensätze bei einer Abfrage maximal an die Datensatzgruppe zurückzugeben sind. |
|
Datentyp | |
Long |
|
Beschreibung | |
Für die Eigenschaft MaxRecords besteht Lese- und Schreibberechtigung, wenn das Recordset-Objekt geöffnet ist. Ist es geschlossen, ist MaxRecords schreibgeschützt. Ein Wert von 0 (Standard) bedeutet, dass alle aus einer Abfrage resultierenden gültigen Datensätze zurückgegeben werden. |
|
Methode Recordset.Move | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Move NumRecords, Start | |
Die Methode Move des Recordset-Objekts verlagert die Position des Datensatzzeigers innerhalb des angegebenen Recordset-Objekts. |
|
Argumente | |
|
|
Beschreibung | |
Die Methode Move des Recordset-Objekts verlagert den Datensatzzeiger um eine bestimmte Anzahl an Datensätzen. Ist das Argument NumRecords kleiner als Null, wird der Zeiger um die gewünschte Anzahl zurückverlagert. Ist das Argument NumRecords größer als Null, so wird der Zeiger um die gewünschte Anzahl nach vorne verlagert. Unterstützt das aktuelle Recordset-Objekt Lesezeichen, so können Sie mit dem Argument Start eine Anfangsposition bestimmen, ab der der Datensatzzeiger verlagert werden soll. Das Argument Start sollte auf ein gültiges Lesezeichen innerhalb des aktuellen Recordset-Objekts gesetzt werden, so dass der Zeiger von diesem Punkt aus um die gewünschte Anzahl an Datensätzen verlagert wird. Wird kein Lesezeichen verwendet, so wird der Datensatzzeiger vom aktuellen Datensatz aus verlagert. Beim Versuch, den Zeiger auf einen Punkt vor dem ersten Datensatz zu verlagern, wird er vor den ersten Datensatz verlagert, nämlich auf die BOF-Marke. Und beim Versuch, den Zeiger hinter den letzten Datensatz zu verlagern, wird hinter den letzten Datensatz, nämlich auf die EOF-Marke, verlagert. Wird versucht, anhand der Methode Move den Zeiger jenseits der BOF- bzw. EOF-Marke zu verlagern, wird ein Fehler erzeugt. Haben Sie die Eigenschaft CacheSize so eingestellt, dass Datensätze vom Datenprovider lokal zwischengespeichert werden, und Sie geben einen NumRecords-Wert an, der außerhalb des Caches liegt, so ist ADO gezwungen, eine neue Gruppe an Datensätzen vom Provider abzurufen. Wie viele Datensätze jeweils abgerufen werden, ist abhängig von der Eigenschaft CacheSize. Dasselbe passiert, wenn Sie einen lokalen Cache verwenden und das Start-Argument angeben. Der erste der zu empfangenden Datensätze ist der gewünschte Zieldatensatz. Auch wenn das Recordset-Objekt eine Rückwärtsverlagerung nicht erlaubt, können Sie einen negativen NumRecords-Wert angeben, solange er innerhalb des aktuellen Cache liegt. Liegt die so definierte Position jedoch vor dem aktuellen Cache, entsteht ein Fehler. |
|
Hinweis | |
Nicht alle Provider unterstützen die Methode Move. |
|
Siehe auch | |
BookmarkEnum-Enumeration, Recordset.Bookmark-Eigenschaft, Recordset.CacheSize-Eigenschaft |
|
Ereignis Recordset.MoveComplete | (Versionen 2.0, 2.1, 2.5, 2.6) |
MoveComplete(ByVal adReason As ADODB.EventReasonEnum, _ ByVal pError As ADODB.Error, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis MoveComplete wird aufgerufen, nachdem eine Operation die Position des Datensatzzeigers innerhalb des Recordset-Objekts geändert hat. |
|
Argumente | |
|
|
Siehe auch | |
EventReasonEnum-Enumeration, EventStatusEnum-Enumeration, Recordset.AbsolutePage-Eigenschaft, Recordset.AbsolutePosition-Eigenschaft, Recordset.AddNew-Methode, Recordset.Bookmark-Methode, Recordset.Filter-Eigenschaft, Recordset.Index-Eigenschaft, Recordset.Open-Methode, Recordset.Move-Methode, Recordset.MoveFirst-Methode, Recordset.MoveLast-Methode, Recordset.MoveNext-Methode, Recordset.MovePrevious-Methode, Recordset.Requery-Methode, Recordset.WillMove-Ereignis |
|
Methode Recordset.MoveFirst | RMF-Methode (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.MoveFirst recordset.MoveLast recordset.MoveNext recordset.MovePrevious | |
Die Methoden MoveFirst, MoveLast, MoveNext und MovePrevious des Recordset-Objekts verlagern den Datensatzzeiger auf den ersten, letzten, nächsten bzw. vorherigen Zeiger und machen den betreffenden Datensatz zum aktuellen Datensatz. |
|
Beschreibung | |
Die Methoden MoveFirst, MoveLast, MoveNext und MovePrevious des Recordset-Objekts ermöglichen Ihnen eine freie Navigation durch das geöffnete Recordset-Objekt. Die Methode MoveFirst verlagert den Zeiger auf den ersten Datensatz in der Datensatzgruppe und macht diesen Datensatz zum aktuellen. Die Methode MoveLast verlagert den Zeiger auf den letzten Datensatz in der Datensatzgruppe und macht diesen Datensatz zum aktuellen. Diese Methode lässt sich nur einsetzen, wenn das Recordset-Objekt Lesezeichen unterstützt. Falls nicht, wird beim Versuch die Methode zu benutzen, ein Fehler erzeugt. Die Methode MoveNext verlagert den Zeiger auf den nächsten Datensatz in der Gruppe und macht diesen Datensatz zum aktuellen. Ist der vor dem Aufruf von MoveNext aktuelle Datensatz der letzte in der Datensatzgruppe, so wird der Zeiger hinter den letzten Datensatz verlagert und die Eigenschaft EOF auf True gesetzt. Beim Versuch, den Zeiger hinter die EOF-Marke zu verlagern, entsteht ein Fehler. Die Methode MovePrevious verlagert den Zeiger zu dem Datensatz, der direkt vor dem aktuellen liegt. Dieser Datensatz wird zum aktuellen Datensatz gemacht. Für diese Methode muss die Datensatzgruppe entweder Lesezeichen oder die Möglichkeit zur Rückwärtsverlagerung unterstützen, sonst wird ein Fehler erzeugt. Wenn der – vor dem Aufruf der Methode MovePrevious – aktuelle Datensatz der erste Datensatz in der Gruppe ist, so wird der Zeiger direkt davor platziert und die Eigenschaft BOF wird auf True gesetzt. Der Versuch, den Zeiger vor den Anfang der Datensatzgruppe zu verlagern, erzeugt einen Fehler. |
|
Hinweis | |
Nicht alle Provider unterstützen die Methoden MoveFirst und MovePrevious. |
|
Siehe auch | |
CursorOptionEnum-Enumeration, Recordset.BOF-Eigenschaft, Recordset.EOF-Eigenschaft, Recordset.Supports-Methode |
|
Methode Recordset.NextRecordset | (Versionen 2.0, 2.1, 2.5, 2.6) |
Set resulting_recordset = recordset.NextRecordset(RecordsAffected) | |
Die Methode NextRecordset des Recordset-Objekts gibt die jeweils nächste Datensatzgruppe zurück, wobei eine Reihe von Befehlen durchschritten werden: recordset.MoveFirst |
|
Argumente | |
|
|
Beschreibung | |
Mit der Methode NextRecordset des Recordset-Objekts rufen Sie die nächste Datensatzgruppe aus einer Anweisung ab, die sich aus mehreren Befehlen (meist SQL-Anweisungen) zusammensetzt, oder aus einer gespeicherten Prozedur, die mehrere Ergebnisse zurückgibt. Hier ein Beispiel für eine solche zusammengesetzte Anweisung: SELECT * FROM upstairs; SELECT * FROM downstairs Die ursprünglich mit der Methode Execute oder Open erstellte Datensatzgruppe gibt ein Recordset-Objekt zurück, das nur auf der ersten SQL-Anweisung in dieser zusammengesetzten Anweisung basiert. Für jede weitere Datensatzgruppe müssen Sie NextRecordset aufrufen. Wird das Recordset-Objekt geschlossen, bevor alle Befehle abgearbeitet worden sind, werden diese verbleibenden Befehle überhaupt nicht ausgeführt. Die Methode NextRecordset gibt so lange Datensatzgruppen zurück, bis keine mehr in der Liste sind. Wird eine Anweisung, die Datensätze zurückgibt, erfolgreich ausgeführt, aber das Ergebnis ist null Datensätze, so werden die Recordset-Eigenschaften EOF und BOF beide auf True gesetzt. Wird hingegen eine Anweisung, die keine Datensätze zurückgibt, erfolgreich ausgeführt, so sollte das Recordset-Objekt nicht auf Nothing gesetzt werden und die Eigenschaft EOF sollte True sein. Sind keine Befehle der zusammengesetzten Anweisung mehr übrig, wird das zurückgegebene Recordset-Objekt auf Nothing gesetzt. Wenn Sie sich im unmittelbaren Aktualisierungsmodus befinden und Datensätze bearbeiten, müssen Sie die Methode Update oder CancelUpdate aufrufen, bevor Sie die nächste Datensatzgruppe anfordern. Andernfalls wird ein Fehler erzeugt. Parameter für zusammengesetzte Anweisungen werden wie die Parameter einer regulären Anweisung übergeben. Alle Parameter müssen in der Parameter-Kollektion eingetragen sein, und zwar in der Reihenfolge der verschiedenen Befehle. Außerdem müssen Sie alle Ergebnisse einer Datensatzgruppe lesen, bevor Sie Ausgabeparameterwerte lesen. |
|
Siehe auch | |
Recordset.Update-Methode, Recordset.CancelUpdate-Methode, Recordset.BOF-Eigenschaft, Recordset.EOF-Eigenschaft |
|
Methode Recordset.Open | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Open Source, ActiveConnection, CursorType, LockType, Options | |
Die Methode Open öffnet einen Cursor innerhalb eines Recordset-Objekts. |
|
Argumente | |
|
|
Beschreibung | |
Die Argumente Source, ActiveConnection, CursorType und LockType haben übereinstimmende Eigenschaften innerhalb eines Recordset-Objekts. Werden die Argumente beim Aufruf der Methode Open weggelassen, so werden die einzelnen Werte aus den entsprechenden Eigenschaften bezogen. Wurde jedoch für ein bestimmtes Argument ein Wert angegeben, überschreibt dieser Wert den in der Eigenschaft gespeicherten. Als Quelle für ein Recordset-Objekt gibt es folgende Möglichkeiten:
Wenn etwas anderes als ein Command-Objekt verwendet wird, um eine Datensatzgruppe zu öffnen, legen Sie die Datenquelle mit Hilfe des Arguments Options fest. Wenn Sie das nicht machen, muss ADO den Datenprovider wiederholt kontaktieren, um die zu öffnende Datenart zu bestimmen. Wenn Sie als Quelle für das Recordset-Objekt eine Datei angeben, so können Sie den vollständigen Pfad, einen relativen Pfad oder sogar eine URL ( Das Argument ActiveConnection wird nur verwendet, wenn Sie nicht ein Command-Objekt angeben. Tatsächlich ist es sogar schreibgeschützt, wenn für die Eigenschaft Source ein gültiges Command-Objekt angegeben worden ist. Im Argument ActiveConnection kann entweder ein geöffnetes Connection-Objekt angegeben werden oder ein Verbindungs-String, der zum Öffnen eines neuen Connection-Objekts für das Recordset-Objekt verwendet wird. Es ist möglich, den Wert der Eigenschaft ActiveConnection auch nach dem Öffnen eines Recordset-Objekts zu ändern, wenn Sie die Aktualisierungen an der Datengruppe noch an eine andere Datenquelle senden wollen. Allerdings werden die verbleibenden Argumente und die entsprechenden Eigenschaften schreibgeschützt, nachdem das Recordset-Objekt geöffnet worden ist. Eine Datensatzgruppe lässt sich auch asynchron öffnen, indem Sie aus der Enumeration ExecuteOptionEnum den Wert adAsyncFetch hinzufügen. Wird eine Datensatzgruppe geöffnet, die leer ist, ist sowohl die Eigenschaft BOF als auch die Eigenschaft EOF auf True gesetzt. Sie schließen das Recordset-Objekt, indem Sie die Methode Close aufrufen. Dadurch wird das Recordset-Objekt nicht aus dem Speicher entfernt, da Sie ein Recordset-Objekt wieder öffnen können. Um ein Recordset-Objekt aus dem Speicher zu entfernen, setzen Sie das Objekt auf Nothing. Wenn Sie ein Recordset-Objekt mit einem Stream-Objekt öffnen, wird die Datensatzgruppe automatisch synchron geöffnet, und zwar unabhängig davon, was im ExecuteOptionEnum-Wert angegeben worden ist. Sie sollten zudem keine weiteren Argumente für die Methode Open angeben, wenn Sie ein Recordset-Objekt aus einem Stream-Objekt öffnen. |
|
Siehe auch | |
CommandTypeEnum-Enumeration, CursorTypeEnum-Enumeration, ExecuteOptionEnum, LockTypeEnum-Enumeration, Recordset.ActiveConnection-Eigenschaft, Recordset.BOF-Eigenschaft, Recordset.Close-Methode, Recordset.CursorType-Eigenschaft, Recordset.EOF-Eigenschaft, Recordset.LockType-Eigenschaft, Recordset.Source-Eigenschaft |
|
Eigenschaft Recordset.PageCount | (Versionen 2.0, 2.1, 2.5, 2.6) |
pagecount = recordset.PageCount | |
Die Eigenschaft PageCount gibt die Anzahl der logischen Seiten im aktuellen Recordset-Objekt zurück. |
|
Datentyp | |
Long |
|
Beschreibung | |
Die Eigenschaft PageCount gibt einen Wert zurück, der anzeigt, wie viele logische Seiten an Daten in der Datensatzgruppe enthalten sind. Eine Seite errechnet sich aus der Anzahl an Datensätzen in der Datensatzgruppe geteilt durch die Anzahl an Datensätzen pro Seite (die von der Eigenschaft PageSize bestimmt wird). Umfasst die letzte Seite weniger Datensätzen als in der Eigenschaft PageSize angegeben, so wird diese Seite dennoch als Seite in der Eigenschaft PageCount gezählt. |
|
Rückgabewerte | |
Unterstützt das Recordset-Objekt die Eigenschaft PageCount nicht, so ist der Rückgabewert -1. Das bedeutet, dass die Anzahl an Seiten nicht ermittelt werden konnte. |
|
Siehe auch | |
Recordset.AbsolutePage-Eigenschaft, Recordset.PageSize-Eigenschaft |
|
Eigenschaft Recordset.PageSize | (Versionen 2.0, 2.1, 2.5, 2.6) |
pagesize = recordset.PageSize | |
Die Eigenschaft PageSize bezeichnet die Anzahl an Datensätzen auf einer logischen Seite. |
|
Datentyp | |
Long |
|
Beschreibung | |
Die Eigenschaft PageSize bestimmt, wie viele Datensätze zu einer logischen Seite in der Datensatzgruppe gehören. Der Standardwert ist 10. Diese Eigenschaft kann jederzeit gesetzt werden und wird mit der Eigenschaft AbsolutePage zusammen verwendet, um den Zeiger auf den ersten Datensatz einer bestimmten Seite zu setzen. |
|
Siehe auch | |
Recordset.AbsolutePage-Eigenschaft, Recordset.PageCount-Eigenschaft |
|
Kollektion Recordset.Properties | (Versionen 2.0, 2.1, 2.5, 2.6) |
Set properties = recordset.Properties | |
Die Properties-Kollektion enthält Zeichen, die für das Objekt Recordset und den zurzeit verwendeten Provider spezifisch sind. |
|
Datentyp | |
Properties (Collection-Objekt) |
|
Beschreibung | |
Die Kollektionsklasse Properties enthält zu jeder für das Objekt Recordset des Datenproviders spezifischen Eigenschaft eine Property-Klasseninstanz. Die Properties-Kollektion des Objekts Command wird erst aufgefüllt, wenn die Eigenschaft ActiveConnection des Objekts Command auf ein geöffnetes Connection-Objekt oder einen gültigen Verbindungs-String gesetzt wird. |
|
Siehe auch | |
Command.ActiveConnection-Eigenschaft |
|
Ereignis Recordset.RecordChangeComplete | (Versionen 2.0, 2.1, 2.5, 2.6) |
RecordChangeComplete(ByVal adReason As ADODB.EventReasonEnum, _ ByVal cRecords As Long, _ ByVal pError As ADODB.Error, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis RecordChangeComplete wird aufgerufen, nachdem eine Operation einen oder mehrere Datensätze im Recordset-Objekt geändert hat. |
|
Argumente | |
|
|
Siehe auch | |
EventReasonEnum-Enumeration, EventStatusEnum-Enumeration, Recordset.AddNew-Methode, Recordset.CancelBatch-Methode, Recordset.CancelUpdate-Methode, Recordset.Delete-Methode, Recordset.WillChangeRecord-Ereignis, Recordset.Update-Methode, Recordset.UpdateBatch-Methode |
|
Ereignis Recordset.RecordsetChangeComplete | (Versionen 2.0, 2.1, 2.5, 2.6) |
RecordsetChangeComplete(ByVal adReason As ADODB.EventReasonEnum, _ ByVal pError As ADODB.Error, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis RecordsetChangeComplete wird aufgerufen, nachdem eine Operation das Recordset-Objekt geändert hat. |
|
Argumente | |
|
|
Siehe auch | |
EventReasonEnum-Enumeration, EventStatusEnum-Enumeration, Recordset.Open-Methode, Recordset.Requery-Methode, Recordset.WillChangeRecordset-Ereignis |
|
Eigenschaft Recordset.RecordCount | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordcount = recordset.RecordCount | |
Die Eigenschaft RecordCount gibt die Anzahl an Datensätzen im aktuellen Recordset-Objekt zurück. |
|
Datentyp | |
Long |
|
Beschreibung | |
Wenn der Provider oder der Cursor die Eigenschaft RecordCount nicht unterstützen oder wenn die Anzahl an Datensätzen von ADO nicht ermittelt werden kann, wird -1 zurückgegeben. Beim statischen und beim Schlüsselcursor (Static und Keyset) wird immer die tatsächliche Anzahl an Datensätzen zurückgegeben, aber beim Vorwärtscursor (Forward Only) wird immer der Wert -1 zurückgegeben. Dynamische Cursor können, je nach Datenquelle, entweder den Wert -1 oder die tatsächliche Anzahl an Datensätzen zurückgeben. Aus Effizienzgründen meldet die Eigenschaft RecordCount die Anzahl an Datensätzen in einer Datensatzgruppe nur, wenn das aktuelle Recordset-Objekt die angenäherte Positionierung (Methode Supports, adApproxPosition) oder Lesezeichen (Methode Supports, adBookmark) unterstützt. Andernfalls würde diese Eigenschaften relativ viele Systemressourcen beanspruchen, da ADO alle Datensätze laden muss, um sie zu zählen. |
|
Methode Recordset.Requery | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Requery | |
Beschreibung | |
Um eine Aktualisierung der Datensatzgruppe zu veranlassen, führt die Methode Requery des Recordset-Objekts den Befehl erneut aus, der die Datensatzgruppe ursprünglich erstellt hat. Diese Methode hat denselben Effekt wie der Aufruf der Methode Close kombiniert mit dem anschließenden Aufruf der Methode Open. Wenn Sie einen neuen Datensatz hinzufügen oder einen vorhandenen bearbeiten und die Methode Requery aufrufen, wird ein Fehler erzeugt. Wenn Sie Eigenschaften ändern wollen, die schreibgeschützt sind, solange ein Recordset-Objekt geöffnet ist (CursorType, LockType usw.), müssen Sie das Recordset-Objekt ausdrücklich schließen und erneut öffnen. Dazu rufen Sie die Methode Close auf, ändern die Eigenschaften und rufen dann erneut die Methode Open auf. |
|
Siehe auch | |
ExecuteOptionEnum |
|
Methode Recordset.Resync | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Resync AffectRecords | |
Die Methode Resync des Recordset-Objekts aktualisiert die Daten in der Datensatzgruppe aus den zugrunde liegenden Daten in der Datenquelle. |
|
Argumente | |
|
|
Beschreibung | |
Die Methode Resync des Recordset-Objekts dient der Neusynchronisierung der Datensätze in der aktuellen Datensatzgruppe anhand der Datensätze in der zugrunde liegenden Datenquelle. Dies ist sehr nützlich, wenn Sie mit einem statischen oder Vorwärtscursor arbeiten und überprüfen wollen, ob seit Ihrem Abruf jemand die Datensätze in der Datenquelle geändert hat. Dabei öffnet die Methode Resync keine Datensätze, die neu zur Datenquelle hinzugefügt worden sind, sondern aktualisiert nur diejenigen Datensätze, die Sie bereits geladen haben. Die Resync-Methode aktualisiert also nur vorhandene Datensätze und führt nicht etwa den Befehl erneut aus, der die Datensatzgruppe ursprünglich zusammengestellt hat. Wenn die Methode Resync einen Datensatz lesen will, der bereits von einem anderen Anwender gelöscht worden ist, entsteht kein Laufzeitfehler, aber die Errors-Kollektion wird mit Warnungen gefüllt. Ein Laufzeitfehler tritt nur auf, wenn alle angeforderten Datensätze, die aktualisiert werden sollen, aus irgendeinem Grund einen Konflikt aufweisen. Um herauszufinden, welche Datensätze Konflikte aufweisen, verwenden Sie die Eigenschaft Filter mit dem Wert adFilterAffectedRecords und der Eigenschaft Status. |
|
Hinweis | |
Nicht alle Provider unterstützen die Methode Resync. |
|
Siehe auch | |
ADCPROP_UPDATERESYNC_ENUM-Enumeration, AffectEnum-Enumeration, CursorOptionEnum-Enumeration, Recordset.Supports-Methode, ResyncEnum-Enumeration |
|
Methode Recordset.Save | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Save Destination, PersistFormat | |
Die Methode Save speichert das aktuelle Recordset-Objekt in eine Datei oder in ein Stream-Objekt. |
|
Argumente | |
|
|
Beschreibung | |
Die Methode Save muss für ein geöffnetes Recordset-Objekt aufgerufen werden. Beim ersten Aufruf von Save können Sie das Argument Destination (Ziel) benennen, doch sollten nachfolgende Aufrufe ohne dieses Argument ausgegeben werden. Wird für dasselbe Recordset derselbe Zielname zweimal verwendet, entsteht ein Fehler. Werden hingegen zwei verschiedenen Zielnamen verwendet, werden zwei Dateien angelegt, die beide geöffnet bleiben, bis die Methode Close aufgerufen wird. Wenn Sie beim ersten Aufruf von Save kein Ziel angeben, wird eine Datei erstellt, die den Namen der Quelle für das Recordset-Objekt trägt. Speichern Sie eine Datensatzgruppe mit einem Filter, werden nur die sichtbaren Datensätze gespeichert. Speichern Sie eine hierarchische Datensatzgruppe, werden die aktuelle (untergeordnete) Datensatzgruppe sowie deren untergeordnete Gruppen sowie die ihr übergeordnete Gruppe gespeichert. Speichern Sie eine untergeordnete Datensatzgruppe, werden nur diese Gruppe und die ihr untergeordneten Gruppen gespeichert. Wird die Methode Save aufgerufen, während eine asynchrone Operation für das Recordset-Objekt im Gange ist, wird zunächst diese Operation abgeschlossen und erst danach das Recordset-Objekt gespeichert. Nachdem ein Recordset-Objekt persistent gespeichert worden ist, zeigt der Datensatzzeiger auf den ersten Datensatz in der Gruppe. Bessere Ergebnisse erzielen Sie, indem Sie die Eigenschaft CursorLocation auf den Client setzen. Unterstützt der Datenprovider die zum Speichern des Recordset-Objekts notwendige Funktionalität nicht, so wird das der Cursordienst übernehmen. Wenn Sie den Server als Cursoradresse verwenden, können Sie normalerweise nur in einer einzigen Tabelle Datensätze hinzufügen, löschen oder aktualisieren. Außerdem ist in diesem Fall die Methode Resync nicht verfügbar. Microsoft warnt davor, hierarchische Datensatzgruppen im XML-Format zu speichern, denn man kann eine Datensatzgruppe nicht speichern, wenn sie anstehende Aktualisierungen enthält oder wenn es sich um ein parametrisiertes hierarchisches Recordset-Objekt handelt. |
|
Siehe auch | |
PersistFormatEnum-Enumeration, Recordset.Close-Methode, Recordset.CursorLocation-Eigenschaft, Recordset.Filter-Eigenschaft, Recordset.Source-Eigenschaft |
|
Methode Recordset.Seek | (Versionen 2.1, 2.5, 2.6) |
recordset.Seek KeyValues, SeekOptions | |
Die Methode Seek ändert schnell den Datensatzzeiger auf den Datensatz im Recordset-Objekt, der dem angegebenen Index entspricht. |
|
Argumente | |
|
|
Beschreibung | |
Die Methode Seek wird zusammen mit der Eigenschaft Index des Recordset-Objekts verwendet. Sie können sie nur einsetzen, wenn die aktuelle Datensatzgruppe Indexe unterstützt. Um zu überprüfen, ob das der Fall ist, rufen Sie die Methode Recordset.Supports (adSeek) auf. Die Eigenschaft Index gibt an, welcher Index mit der Methode Seek verwendet wird. Der erste Parameter, ein Varianten-Array, sollte für jede Spalte des aktuell verwendeten Index einen Wert enthalten. Wird kein Datensatz gefunden, wird der Datensatzzeiger auf die EOF-Marke gesetzt. |
|
Hinweise | |
Die Methode Seek kann nur auf serverseitigen Clients verwendet werden, die mit dem CommandTypeEnum-Enumerationswert adCmdTableDirect geöffnet werden. Nicht alle Provider unterstützen die Methode Seek. |
|
Siehe auch | |
CommandTypeEnum-Enumeration, CursorOptionEnum-Enumeration, Recordset.EOF-Eigenschaft, Recordset.Index-Eigenschaft, SeekEnum-Enumeration, Recordset.Supports-Methode |
|
Eigenschaft Recordset.Sort | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Sort = sortstring | |
Die Eigenschaft Sort sortiert eine Datensatzgruppe nach einem oder mehreren Feldern. |
|
Datentyp | |
String |
|
Beschreibung | |
Mit Hilfe der Eigenschaft Sort können Sie festlegen, dass eine Datensatzgruppe nach einem oder auch mehreren Feldern sortiert wird, und zwar in aufsteigender oder absteigender Reihenfolge. Die Eigenschaft Sort akzeptiert einen String-Wert, der eine Sortierklausel einer SQL-Anweisung darstellt. Die angegebenen Feldnamen werden durch Kommas getrennt, wobei hinter jedem Feldnamen entweder das Schlüsselwort ASC (für aufsteigende Reihenfolge) oder DESC (für absteigende Reihenfolge) steht. Ist keines dieser beiden Schlüsselwörter angegeben, wird der Standard ASC verwendet. Wenn Sie für die Eigenschaft Sort einen leeren String-Wert (") angeben, wird die Sortierung der Datensatzgruppe aufgehoben und die Standardreihenfolge wieder hergestellt. Der Sort-Wert "Firma ASC, Kontakt DESC" beispielsweise sortiert die Datensatzgruppe nach Firma, und zwar in aufsteigender Reihenfolge und dann nach Kontakt, in absteigender Reihenfolge. Die Eigenschaft Sort ordnet die Daten innerhalb der Datensatzgruppe nicht neu an, sondern erstellt einen temporären Index für jedes Feld, das noch keinen Index besitzt, wenn die Eigenschaft CursorLocation auf adUseClient gesetzt ist. |
|
Hinweis | |
Nicht alle Provider unterstützen die Eigenschaft Sort. |
|
Siehe auch | |
Recordset.CursorLocation-Eigenschaft |
|
Eigenschaft Recordset.Source | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Source source | |
Die Eigenschaft Source gibt die Datenquelle zurück, aus der das Recordset-Objekt gespeist wird. |
|
Datentyp | |
|
|
Beschreibung | |
Die Eigenschaft Source eines Recordset-Objekts gibt an, woher die Daten einer Datensatzgruppe stammen. Für diese Eigenschaft besteht bei geschlossenem Recordset-Objekt sowohl Lese- als auch Schreibberechtigung, bei geöffnetem Objekt ist sie schreibgeschützt. Für die Eigenschaft Source des Recordset-Objekts sind folgende Arten von Werten zulässig:
Ist die Eigenschaft Source auf ein Command-Objekt gesetzt, bezieht die ActiveConnection-Eigenschaft des Recordset-Objekts seinen Wert von der ActiveConnection-Eigenschaft des Command-Objekts. Allerdings wird beim Lesen der Eigenschaft Source kein Command-Objekt zurückgegeben, sondern die Eigenschaft CommandText des zugehörigen Command-Objekts, dessen Source-Eigenschaft Sie übernehmen. Ist die Eigenschaft Source auf eine SQL-Anweisung, eine gespeicherte Prozedur oder eine Tabelle gesetzt, sollten Sie dies doch besser im Argument Options der Methode Open angeben, da dadurch die Performance des Recordset-Objekts verbessert wird. |
|
Siehe auch | |
Recordset.Open-Methode |
|
Eigenschaft Recordset.State | (Versionen 2.0, 2.1, 2.5, 2.6) |
state = recordset.State | |
Die Eigenschaft State gibt den aktuellen Zustand des Recordset-Objekts an. |
|
Datentyp | |
ObjectStateEnum |
|
Beschreibung | |
Die schreibgeschützte Eigenschaft State gibt an, ob das aktuelle Recordset-Objekt geöffnet oder geschlossen ist. |
|
Siehe auch | |
ObjectStateEnum-Enumeration |
|
Eigenschaft Recordset.Status | (Versionen 2.0, 2.1, 2.5, 2.6) |
status = recordset.Status | |
Die Eigenschaft Status gibt den Status des aktuellen Datensatzes im Verhältnis zu Bulk-Operationen an. |
|
Datentyp | |
RecordStatusEnum |
|
Beschreibung | |
Die Eigenschaft Status kann auf einen oder mehrere der in Anhang E aufgeführten RecordStatusEnum-Enumerationswerte gesetzt werden. Diese Eigenschaft zeigt anstehende Änderungen an Datensätzen an, die bei einer Batch-Operation aktualisiert worden sind. Zudem zeigt diese Eigenschaft gegebenenfalls an, warum die folgenden Funktionen fehlgeschlagen sind: Resync, UpdateBatch, CancelBatch und Filter (Einstellung entspricht einem Array an Lesezeichen). |
|
Siehe auch | |
Recordset.CancelBatch-Methode, Recordset.Filter-Eigenschaft, Recordset.Resync-Methode, Recordset.UpdateBatch-Methode, RecordStatusEnum-Enumeration |
|
Eigenschaft Recordset.StayInSync | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Resync AffectRecords | |
Wird in hierarchischen Datensatzgruppen der Datensatzzeiger auf eine andere, übergeordnete Zeile verlagert, so bestimmt die Eigenschaft StayInSync, ob die Verweise auf Kapiteldatensatzgruppen sich entsprechend ändern oder ob sie erhalten bleiben. |
|
Datentyp | |
Boolean |
|
Beschreibung | |
Für die Eigenschaft StayInSync besteht sowohl Lese- als auch Schreibberechtigung. Der Standardwert für diesen Eigenschaft ist True. Die Eigenschaft StayInSync ist für hierarchische Datensatzgruppen relevant. Wird ihr Wert auf True gesetzt, ändern sich die Verweise auf Kapiteldatensatzgruppen, wenn die übergeordnete Datensatzgruppe geändert wird. Wird der Wert der Eigenschaft StayInSync hingegen auf False gesetzt, zeigen die Verweise auf Kapiteldatensatzgruppen weiterhin auf die zuvor übergeordnete Datensatzgruppe, wenn sich durch ein Verlagern des Datensatzzeigers die übergeordnete Datensatzgruppe ändert. |
|
Methode Recordset.Supports | (Versionen 2.0, 2.1, 2.5, 2.6) |
Set boolean = recordset.Supports(CursorOptions) | |
Die Methode Supports untersucht, ob der aktuelle Datenprovider die angegebene Funktionalität unterstützt. |
|
Argumente | |
|
|
Rückgabewerte | |
Boolean |
|
Beschreibung | |
Die Methode Supports des Recordset-Objekts untersucht, ob das Recordset-Objekt bestimmte Funktionalitäten unterstützt. Nachdem die CursorOptionEnum-Werte hinzugefügt und als einziges Argument an die Funktion Supports übergeben wurden, zeigt der Rückgabewert an, ob alle der abgefragten Funktionalitäten unterstützt werden. |
|
Siehe auch | |
CursorOptionEnum-Enumeration |
|
Methode Recordset.Update | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.Update Fields, Values | |
Die Methode Update des Recordset-Objekts speichert die Änderungen, die seit dem Aufruf von AddNew an Feldern des aktuellen Datensatzes vorgenommenen wurden. |
|
Argumente | |
|
|
Beschreibung | |
Der aktuelle Datensatz bleibt auch nach dem Aufruf der Methode Update der aktuelle Datensatz. Wenn Sie für das Argument Fields ein Array an Feldnamen angeben, muss an das Argument Values ein Array mit denselben Dimensionen übergeben werden. Dieses enthält die Werte für jedes im Fields-Array aufgelistete Feld. Andernfalls wird ein Fehler erzeugt. Wenn Sie den Zeiger auf einen anderen Datensatz verlagern, während Sie einen Datensatz ändern, so wird dieser gespeichert (durch einen automatischen Aufruf der Methode Update), bevor die Zeigerposition geändert wird. Auch wenn Sie zudem den aktuellen Datensatz ändern und die Methode UpdateBatch aufrufen, wird die Methode Update automatisch aufgerufen. Umgekehrt macht die Methode CancelUpdate am aktuellen Datensatz vorgenommene Änderungen wieder rückgängig. |
|
Hinweis | |
Nicht alle Provider unterstützen die Methode Update. |
|
Siehe auch | |
CursorOptionEnum-Enumeration, Recordset.Supports-Methode |
|
Methode Recordset.UpdateBatch | (Versionen 2.0, 2.1, 2.5, 2.6) |
recordset.UpdateBatch AffectRecords | |
Die Methode UpdateBatch des Recordset-Objekts speichert alle anstehenden Batch-Aktualisierungen. |
|
Argumente | |
|
|
Beschreibung | |
Die Methode UpdateBatch übermittelt alle anstehenden Batch-Aktualisierungen zur Datenquelle. Diese Methode ist nur für den Batch-Aktualisierungsmodus verfügbar, der wiederum nur mit einem statischen oder Schlüsselcursor verwendet werden sollte. Es ist möglich, zwischengespeicherte Feldwerte mehrmals zu aktualisieren, bevor die Änderungen der anstehenden Batch-Aktualisierungen festgeschrieben werden. Wird die Methode UpdateBatch aufgerufen, solange der Bearbeitungsmodus aktiviert ist, wird die Methode Update automatisch aufgerufen. Wenn Sie versuchen, einen Datensatz zu aktualisieren, der bereits von einem anderen Anwender gelöscht worden ist, so entsteht kein Laufzeitfehler, aber die Errors-Kollektion wird mit Warnungen gefüllt. Ein Laufzeitfehler tritt nur auf, wenn alle angeforderten Datensätze, die aktualisiert werden sollen, aus irgendeinem Grund einen Konflikt aufweisen. Um herauszufinden, welche Datensätze Konflikte aufweisen, verwenden Sie die Eigenschaft Filter mit dem Wert adFilterAffectedRecords und der Eigenschaft Status. Umgekehrt bricht die Methode CancelBatch alle anstehenden Batch-Aktualsierungen ab. |
|
Hinweis | |
Nicht alle Provider unterstützen die Methode UpdateBatch. |
|
Siehe auch | |
AffectEnum-Enumeration, Recordset.Supports-Methode, CursorOptionEnum-Enumeration |
|
Ereignis Recordset.WillChangeField | (Versionen 2.0, 2.1, 2.5, 2.6) |
WillChangeField(ByVal cFields As Long, _ ByVal Fields As Variant, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis WillChangeField wird aufgerufen, bevor eine Operation einen oder mehrere Werte des Objekts Field ändert. |
|
Argumente | |
|
|
Siehe auch | |
EventStatusEnum-Enumeration, Recordset.FieldChangeComplete-Ereignis, Recordset.Update-Methode, Recordset.Value-Eigenschaft |
|
Ereignis Recordset.WillChangeRecord | (Versionen 2.0, 2.1, 2.5, 2.6) |
WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, _ ByVal cRecords As Long, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis WillChangeRecord wird aufgerufen, bevor eine Operation einen oder mehrere Datensätze im Recordset-Objekt ändert. |
|
Argumente | |
|
|
Siehe auch | |
EventReasonEnum-Enumeration, EventStatusEnum-Enumeration, Recordset.AddNew-Methode, Recordset.CancelBatch-Methode, Recordset.CancelUpdate-Methode, Recordset.Delete-Methode, Recordset.RecordChangeComplete-Ereignis, Recordset.Update-Methode, Recordset.UpdateBatch-Methode |
|
Ereignis Recordset.WillChangeRecordset | (Versionen 2.0, 2.1, 2.5, 2.6) |
WillChangeRecordset(ByVal adReason As ADODB.EventReasonEnum, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis WillChangeRecordset wird aufgerufen, bevor eine Operation das Recordset-Objekt ändert. |
|
Argumente | |
|
|
Siehe auch | |
EventReasonEnum-Enumeration, EventStatusEnum-Enumeration, RecordsetChangeComplete-Ereignis, Recordset.Requery, Recordset.Open |
|
Ereignis Recordset.WillMove | (Versionen 2.0, 2.1, 2.5, 2.6) |
WillMove(ByVal adReason As ADODB.EventReasonEnum, _ adStatus As ADODB.EventStatusEnum, _ ByVal pRecordset As ADODB.Recordset) | |
Das Ereignis WillMove wird aufgerufen, bevor eine Operation die Position des Datensatzzeigers innerhalb des Recordset-Objekts ändert. |
|
Argumente | |
|
|
Siehe auch | |
EventReasonEnum-Enumeration, EventStatusEnum-Enumeration, Recordset.AbsolutePage-Eigenschaft, Recordset.AbsolutePosition-Eigenschaft, Recordset.AddNew-Methode, Recordset.Bookmark-Methode, Recordset.Filter-Eigenschaft, Recordset.Index-Eigenschaft, Recordset.Move-Methode, Recordset.MoveFirst-Methode, Recordset.MoveLast-Methode, Recordset.MoveNext-Methode, Recordset.MovePrevious-Methode, Recordset.Open-Methode, Recordset.Requery-Methode, Recordset.WillMove-Ereignis |
|