Connection.OpenRecordset-Methode (DAO)
Gilt für: Access 2013, Office 2013
Erstellt ein neues Recordset-Objekt und fügt es an die Recordsets-Auflistung an.
Syntax
Ausdruck. OpenRecordset(Name, Typ, Optionen, LockEdit)
Ausdruck Eine Variable, die ein Connection -Objekt darstellt.
Parameter
Name |
Erforderlich/optional |
Datentyp |
Beschreibung |
---|---|---|---|
Name |
Erforderlich |
String |
Die Quelle der Datensätze für das neue Recordset. Die Quelle kann ein Tabellenname, ein Abfragename oder eine SQL-Anweisung sein, die Datensätze zurückgibt. Für Recordset -Objekte vom "table"-Typ in Microsoft Access-Datenbankmodul-Datenbanken kann die Quelle nur ein Tabellenname sein. |
Type |
Optional |
Variant |
Eine RecordsetTypeEnum-Konstante gibt den Typ des zu öffnenden Recordset an. Hinweis: Wenn Sie ein Recordset in einem Microsoft Access-Arbeitsbereich öffnen und keinen Typ angeben, erstellt OpenRecordset, wenn möglich, ein tabellenartiges Recordset. If you specify a linked table or query, OpenRecordset creates a dynaset-type Recordset. |
Optionen |
Optional |
Variant |
Eine Kombination aus RecordsetOptionEnum-Konstanten, die Merkmale des neuen Recordset angeben. Hinweis: Die Konstanten dbConsistent und dbInconsistent schließen sich gegenseitig aus, und die Verwendung beider verursacht einen Fehler. Die Angabe eines lockedits-Arguments, wenn Optionen die dbReadOnly-Konstante verwenden, verursacht ebenfalls einen Fehler. |
LockEdit |
Optional |
Variant |
Eine LockTypeEnum-Konstante, die die Sperre für das Recordset bestimmt. HINWEIS:Sie können dbReadOnly entweder im options-Argument oder im lockedits-Argument verwenden, aber nicht in beiden. Wenn Sie es für beide Argumente verwenden, tritt ein Laufzeitfehler auf. |
Rückgabewert
Recordset
Hinweise
Wenn der Benutzer beim Aktualisieren eines Datensatzes diesen Fehler erhält, sollte der Code den Inhalt des Felds aktualisieren und die geänderten Werte abrufen. Tritt der Fehler beim Löschen eines Datensatzes auf, sollte der Code die Daten des neuen Datensatzes anzeigen und eine Meldung darüber ausgeben, dass die Daten kürzlich geändert wurden. An dieser Stelle könnte der Code bestätigen lassen, dass der Benutzer den Datensatz wirklich löschen möchte.
Sie sollten auch die dbSeeChanges-Konstante verwenden, wenn Sie ein Recordset in einem ODBC-Arbeitsbereich mit verbundenem Microsoft Access-Datenbankmodul für eine Microsoft SQL Server 6.0-Tabelle (oder neuer) öffnen, die über eine IDENTITY-Spalte verfügt. Andernfalls kann ein Fehler auftreten.
Das Öffnen mehrerer Recordset-Objekte in einer ODBC-Datenquelle kann fehlschlagen, wenn die Verbindung durch einen vorherigen OpenRecordset-Aufruf ausgelastet ist. Das könnten Sie beispielsweise dadurch verhindern, dass Sie das Recordset-Objekt mithilfe der MoveLast-Methode vollständig auffüllen, sobald das Recordset-Objekt geöffnet wird.
Durch das Schließen eines Recordset mit der Close-Methode wird es automatisch aus der Recordsets-Auflistung gelöscht.
Hinweis
Wenn source auf eine SQL-Anweisung verweist, die aus einer Zeichenfolge besteht, die mit einem nicht ganzzahligen Wert verkettet ist, und die Systemparameter eine Nicht-US-Anweisung angeben. Dezimalzeichen wie ein Komma (z. B. strSQL = "PRICE > " & lngPrice und lngPrice = 125,50) tritt ein Fehler auf, wenn Sie versuchen, das Recordset zu öffnen. Der Grund ist, dass die Zahl bei der Verkettung mithilfe des Standarddezimalzeichens des Systems in eine Zeichenfolge umgewandelt wird und SQL nur für die USA gültige Dezimalzeichen akzeptiert.