Vba 同步两个Access数据库-我可以';看不到主数据库上的数据
我有一个主数据库和从数据库。我想同步那些数据库,但两个表会带来很多麻烦 通过使用SQL查询,我得到了一个错误,因为我使用了多值字段。我无法更改数据结构,因此我决定“手动”循环记录集并同步表。我的代码如下所示:Vba 同步两个Access数据库-我可以';看不到主数据库上的数据,vba,ms-access,dao,Vba,Ms Access,Dao,我有一个主数据库和从数据库。我想同步那些数据库,但两个表会带来很多麻烦 通过使用SQL查询,我得到了一个错误,因为我使用了多值字段。我无法更改数据结构,因此我决定“手动”循环记录集并同步表。我的代码如下所示: sub UpdateTable()... ..... Dim rstSlave, rstMaster as DAO.Recordset Dim fld as DAO.Field Set dbSlave = currentDB Set dbM
sub UpdateTable()...
.....
Dim rstSlave, rstMaster as DAO.Recordset
Dim fld as DAO.Field
Set dbSlave = currentDB
Set dbMaster = OpenDatabse("C:\Users\MyFile\Master_DB.accdb")
Set rstSlave = dbSlave.OpenRecordset("tbl_Candidate")
Set rstMaster = dbMaster.OpenRecordset("tbl_Candidate")
Set rstSlave = dbSlave.OpenRecordset("tbl_Candidate")
rstSlave.MoveFirst
While Not rstSlave.EOF
rstMaster.MoveFirst
Do While Not rstMaster.EOF
If rstMaster![ID] = rstSlave![ID] Then GoTo nextRecord
rstMaster.MoveNext
Loop
With rstMaster
.AddNew
For Each fld in .Fields
strFieldName = fld.Name
fld.Value = rstSlave.Fields(strFieldName).Value
Next fld
.Update
End With
nextRecord:
rstSlave.MoveNext
Wend
rstSlave.Close
rstMaster.Close
Set rstSlave = Nothing
Set rstMaster = Nothing
我无法在主数据库中看到该记录。调试时,我看到应该传输到主数据库的记录的ID已经存在。当我打开文件时,仍然无法在主数据库中找到它
奇怪的是,情况正好相反。如果我在主数据库上更改了某些内容并将其同步,我可以在slavedb上看到更改。您需要更多的代码,您的
转到标签至少不包括在内。它在我的代码中,不知怎的,它已经消失在这里了……我将只是更新它:-/检查是否有任何字段不允许重复,或者有其他禁止插入的验证规则。使用SQL查询时,我会得到一个错误,因为我使用多值字段意味着什么?我在你的VB中没有看到任何东西不能在t中以十倍的速度和更可靠地完成-SQL@Nick.McDermaid:这是Access,不是SQL Server。