在Access中,我有rs1
和rs2
,都为As ADODB.Recordset
,它们具有相同的字段。我想将记录/行从rs1
移至rs2
。
[我知道如何使用SQL
或rs2.AddNew
并在Fields
上进行迭代,但是我想通过使用ADODB.Record
-对象来完成此操作。
Dim rs1 As ADODB.Recordset
Dim rs2 As ADODB.Recordset
...
Private Sub MoveRecord (id As Long)
Dim r As ADODB.Record
rs1.filter = "id=" & id
Set r = rs1(0)
' And now??? rs2.Addnew r is rubbish...
End Sub
我尝试了Record.MoveRecord
方法,但是看来这是用于移动文件的?
Record.MoveRecord (Source, Destination, UserName, Password, Options, Async)
[Source
和Destination
是Strings
,不是RecordSet
s。
可以这样做,如果可以,怎么做?
如果您觉得有必要使用此功能,则可以自己编写...
Public Sub MoveCurrentRecord(rsSource, rsTarget)
rsTarget.AddNew
Dim fld
For Each fld In rsSource.Fields
rsTarget.Fields(fld.Name).Value = fld.Value
Next
rsTarget.Update
End If
与ADO和DAO一起使用,并同时将记录和记录集作为源对象。请注意,您可能希望实现其他逻辑以跳过自动编号字段。