Private Sub btnMerge_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMerge.Click
Dim ds_source, ds_destin As DataSet
Dim da_source, da_destin As OleDbDataAdapter
Dim stSourcePath As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:/A.mdb"
Dim stDestinPath As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:/B.mdb"
ds_source = New DataSet
ds_destin = New DataSet
da_source = New OleDbDataAdapter("Select * from GL;", stSourcePath)
da_destin = New OleDbDataAdapter("Select * from GL;", stDestinPath)
da_destin.Fill(ds_destin)
da_source.AcceptChangesDuringFill = False
da_source.Fill(ds_source)
MsgBox("Destination records(before): " & ds_destin.Tables(0).Rows.Count & vbCrLf & "Table Count:" & ds_destin.Tables.Count)
MsgBox("Source records: " & ds_source.Tables(0).Rows.Count)
ds_destin.Merge(ds_source)
Dim objBuilder As OleDbCommandBuilder = New OleDbCommandBuilder(da_destin)
da_destin.UpdateCommand = objBuilder.GetUpdateCommand()
da_destin.InsertCommand = objBuilder.GetInsertCommand()
da_destin.DeleteCommand = objBuilder.GetDeleteCommand()
Dim updTable As DataTable = ds_destin.Tables(0)
da_destin.Update(updTable.Select(Nothing, Nothing, DataViewRowState.Added))
MsgBox("Destination records(after): " & ds_destin.Tables(0).Rows.Count & vbCrLf & "Table Count:" & ds_destin.Tables.Count)
ds_destin.AcceptChanges() 'THE CODE TO MEGRE DON'T WORK TO UPDATE OR SAVE DATA TO B.MDB
End Sub
合并两个Access数据库
本文介绍了一种使用Visual Basic .NET代码来合并两个Microsoft Access数据库的方法。通过创建数据适配器并利用DataSet对象进行数据填充,然后使用Merge方法将源数据库的数据合并到目标数据库中,并更新了目标数据库。
11万+

被折叠的 条评论
为什么被折叠?



