1

我已经看到很多关于将数据从 Access 移动到 SQL Server 的问题,但我想走另一条路。原因如下:

我一直在从事一个具有 SQL Server 2008 后端和 Access 2007 前端的大型项目。我希望能够在周末在家中做一些前端工作,但我无法从那里访问(VPN 或其他方式)SQL Server。我想将我的链接表从 SQL Server 更改为另一个 Access 数据库文件,我在其中导入了 SQL Server 数据的快照。然后,在星期一早上,将链接切换回 SQL Server。

我的问题是当我转到链接表管理器并尝试更改链接时,我得到的只是 ODBC 选择数据源对话框。如果我尝试链接到 Access 数据库,它会告诉我 ODBC 不能用于链接、导入或导出到另一个 Access 文件。

我想到了一个想法,但我还没有尝试过;也许有人可以告诉我这是一个好主意还是坏主意:我能否删除链接,将它们重新创建到另一个 Access 文件,并且不会丢失我的查询/表单/报告中的任何功能?

4

2 回答 2

1

我的建议是在您的计算机上安装 SQLExpress(免费)。然后,您可以在机器上获得所有可用数据。在您的主服务器上创建一个发布,并让您的本地计算机订阅此复制(如果您不需要保存/同步在您的计算机上完成的数据更改,您可以坚持基本的“快照”复制。)

然后,您只需将连接字符串从您的网络 MSSQLSERVER 更改为您的 localhost SQLEXPRESS 服务器实例即可让您的应用程序正常工作。

如果出于任何原因,您必须在离线时更改数据库模型,那么您必须在本地服务器上进行更改之前取消订阅主服务器。当您回到办公室时,请确保在主服务器上进行相同的更改。我的建议是在 T-SQL 中编写您的更改,将它们保存在一个文件中,并在您恢复工作后针对主服务器启动该文件。

我的意见:周末不要工作太多,或者确保您的客户为此付费。

于 2009-03-28T17:23:32.727 回答
0

对于链接表,您需要完全删除它们并重新创建它们。当您仍在使用 ODBC 时,使用链接表管理器刷新 ODBC 链接甚至无法可靠地工作,因为表链接定义中缓存的数据不会被刷新(例如,如果您更改了SQL Server 视图,使用链接表管理器刷新表链接将更新列数,但您不一定会获得可更新的视图(假设原始视图是可更新的)。

但尚不清楚您是否会失去功能。这一切都取决于您的应用程序的逻辑有多少是服务器端的,在 SQL Server 视图和存储过程中。如果您链接到 Jet 后端,这些都不起作用。

于 2009-03-28T05:13:46.163 回答