将相关表从一个 Microsoft Access Web App 迁移到另一个的有效方法?
Posted
技术标签:
【中文标题】将相关表从一个 Microsoft Access Web App 迁移到另一个的有效方法?【英文标题】:Effecient way to migrate related tables from one Microsoft Access Web App to another? 【发布时间】:2013-08-28 17:04:00 【问题描述】:我有两个 Microsoft Access 2013 Web 应用程序,作为 Microsoft Office365 的一部分托管在 SharePoint 2013 中。两个数据库包含大致相同的表和结构(有一些小的调整)。
我们有两个数据库,因为我们的特定 SharePoint 服务器遇到了侥幸错误,并且无法修复地损坏了第一个 Access Web 应用程序的 UI。最后,从头开始构建第二个 Access Web 应用程序比尝试扭转原来的损坏情况更具成本效益。
所以现在我已经创建了副本并且可以正常工作,但是我需要迁移数据。原始 Web 应用程序的 SQL 后端仍然可以正常工作,Microsoft Access 中的 UI 也可以正常工作(损坏的是 SharePoint 端)。因此,使用 Microsoft Access 2013 和 SQL Management Studio 作为我的工具,将数据从一个数据库移动到另一个数据库的最有效方法是什么? (据我所知,Excel 可以连接和提取数据,但不能在新数据库中插入记录,这使得它相对没用。如果我在这里遗漏了什么,请告诉我。)
我遇到的一些问题是,我没有对 SQL 的所有者、DBA 或系统管理员的访问权限——只有数据读取和数据写入。我无法运行任何更改表的 SQL 查询,例如重命名列或设置 Identity_Insert 等。(我正在修改设置标识列的想法,作为保留记录之间现有关系的一种方式。)此外,Access 2013 没有为 Web 应用程序提供完整的功能区,而是只提供了极其有限的功能(下面的屏幕截图)。此外,查询和宏按钮不允许您直接通过代码(SQL、VBA 等)创建查询或宏,而是强制您仅使用查询向导 GUI 和宏 GUI,并且它们不允许您连接到另一个数据库以提取数据。
有了这些限制,将现有数据从第一个数据库迁移到第二个数据库的最佳方法是什么?
【问题讨论】:
SSDT有数据对比:blogs.msdn.com/b/ssdt/archive/2013/06/24/… 【参考方案1】:如果您创建一个新的空 Access 2013 数据库/应用程序(不是 Web 应用程序),您可以链接到 Sharepoint 列表,就好像它们是链接表一样。我认为这是将数据从一个 Sharepoint 实例移动到另一个实例的一种方法,假设两个实例仍然运行良好,您可以通过这种方式连接到它们。您实际上应该能够编写 DAO 代码来传输数据,因为非 Web 访问应用程序没有禁用代码。复制/粘贴也可能有用,尽管我不敢打赌。
【讨论】:
以上是关于将相关表从一个 Microsoft Access Web App 迁移到另一个的有效方法?的主要内容,如果未能解决你的问题,请参考以下文章
导入 Microsoft Access 数据库时保留自动编号列的值
如何使用 pyodbc 将表从 MS Access 迁移到 Postgres?