3

由于我们的基础设施,我遇到了一个有点独特的问题。我有两个离线平板电脑正在执行调查并在 Access 数据库中输入信息。这些平板电脑有自己的数据库前端和后端副本。

我需要在每天结束时使用两个平板电脑数据库中的值更新后端的主副本(在办公室计算机上)。然后将这个主数据库上传到每个平板电脑,替换它们不完整的版本,然后第二天就可以离开了。

我以前从未做过这种合并,也不知道从哪里开始。基本上,我需要一个查询,它将:

  • 删除主数据库中的当前值
  • 添加来自 tablet1 的值,与 tablet2 的值合并到主数据库中

我可以删除主数据库中的当前值,因为平板电脑也将包含前几天的值(因为有时需要参考等)。基本上,平板电脑将始终包含entire database + today's survey. 只是+ today's survey每个平板电脑都不同。

有可能吗?我如何保留 ID 字段,因为使用 KeyID 存在关系?

我需要MERGE,但没有找到任何关于它是否适用于 MS Access 的文档...... MS 似乎可以随意使用这些标准。或者也许 MSA2010 还没有更新以支持合并?

4

1 回答 1

1

我找到了一种对我有用的解决方法,可以作为创可贴解决方案。我先清空现有的 Master 表。然后我使用:

SELECT * FROM myTable IN "LocationToTablet1/backend_tablet1.mdb"
UNION
SELECT * FROM myTable IN "LocationToTablet2/backend_tablet2.mdb"

并将该查询命名为“myQuery”。然后

INSERT INTO myTable IN "LocationToOffice/master_backend.mdb"
SELECT * FROM [myQuery]

然而,对于任何有同样问题的人来说,HansUp 与 SharePoint 集成的解决方案似乎是一个好主意(请参阅问题的评论)。它不需要最终用户干预,而我需要在平板电脑返回办公室时手动调用这些查询。

于 2012-07-09T15:29:17.560 回答