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.
Gilt für: Access 2013, Office 2013
Erstellt ein doppeltes Recordset -Objekt, das auf das ursprüngliche Recordset2-Objekt verweist.
Syntax
Ausdruck .Clone
Ausdruck Eine Variable, die ein Recordset2-Objekt darstellt.
Rückgabewert
Recordset
Hinweise
Verwenden Sie die Clone-Methode zum Erstellen mehrerer Recordset-Objektduplikate. Jede Datensatzgruppe kann über einen eigenen aktuellen Datensatz verfügen. Die Verwendung von Clone führt noch nicht dazu, dass Daten in den Objekten oder in ihren zugrunde liegenden Strukturen geändert werden. Mit der Clone-Methode können Sie Lesezeichen in mehreren Recordset2-Objekten gemeinsam verwenden, da ihre Lesezeichen austauschbar sind.
Die Clone-Methode können Sie verwenden, um eine Operation für eine Datensatzgruppe auszuführen, die mehrere aktuelle Datensätze erfordert. Das geht schneller und ist effizienter, als eine zweite Datensatzgruppe zu öffnen. Wenn Sie eine Datensatzgruppe mit der Clone-Methode erstellen, fehlt zunächst ein aktueller Datensatz. Legen Sie zuerst die Bookmark -Eigenschaft fest, oder verwenden Sie eine der Move -Methoden, eine der Find -Methoden oder die Seek -Methode, um einen Datensatz zum aktuellen Datensatz zu machen, bevor Sie den Klon der Datensatzgruppe verwenden.
Das Anwenden der Close -Methode auf das ursprüngliche oder das duplizierte Objekt wirkt sich nicht auf das jeweils andere Objekt aus. Angenommen, Sie verwenden Close für die ursprüngliche Datensatzgruppe, so wird der Klon nicht geschlossen.
Hinweis
- Wird ein Klonrecordset in einer ausstehenden Transaktion geschlossen, führt dies zu einem impliziten Rollback-Vorgang.
- When you clone a table-type Recordset object in a Microsoft Access workspace, the Index property setting is not cloned on the new copy of the recordset. Sie müssen die Index-Eigenschafteneinstellung manuell kopieren.
Beispiel
In diesem Beispiel wird die Clone-Methode zum Erstellen von Kopien einer Datensatzgruppe verwendet. Dann kann der Benutzer den Datensatzzeiger für jede Kopie unabhängig positionieren.
Sub CloneX()
Dim dbsNorthwind As Database
Dim arstProducts(1 To 3) As Recordset2
Dim intLoop As Integer
Dim strMessage As String
Dim strFind As String
Set dbsNorthwind = OpenDatabase("Northwind.mdb")
' If the following SQL statement will be used often,
' creating a permanent QueryDef will result in better
' performance.
Set arstProducts(1) = dbsNorthwind.OpenRecordset( _
"SELECT ProductName FROM Products " & _
"ORDER BY ProductName", dbOpenSnapshot)
' Create two clones of the original Recordset.
Set arstProducts(2) = arstProducts(1).Clone
Set arstProducts(3) = arstProducts(1).Clone
Do While True
' Loop through the array so that on each pass, the
' user is searching a different copy of the same
' Recordset.
For intLoop = 1 To 3
' Ask for search string while showing where the
' current record pointer is for each Recordset.
strMessage = _
"Recordsets from Products table:" & vbCr & _
" 1 - Original - Record pointer at " & _
arstProducts(1)!ProductName & vbCr & _
" 2 - Clone - Record pointer at " & _
arstProducts(2)!ProductName & vbCr & _
" 3 - Clone - Record pointer at " & _
arstProducts(3)!ProductName & vbCr & _
"Enter search string for #" & intLoop & ":"
strFind = Trim(InputBox(strMessage))
If strFind = "" Then Exit Do
' Find the search string; if there's no match, jump
' to the last record.
With arstProducts(intLoop)
.FindFirst "ProductName >= '" & strFind & "'"
If .NoMatch Then .MoveLast
End With
Next intLoop
Loop
arstProducts(1).Close
arstProducts(2).Close
arstProducts(3).Close
dbsNorthwind.Close
End Sub