如何在MS Access中失败后还原ODBC连接

时间:2013-03-27 15:10:17

标签: ms-access odbc database-connection access-vba reconnect

有一个MS Access应用程序,其中MS SQL Server上的表通过ODBC链接。当连接丢失时,我收到ODBC错误3146.在物理上恢复连接后,我仍然收到ODBC 3146错误。我必须做一些像重新连接服务器。我如何在MS Access中执行此操作?

2 个答案:

答案 0 :(得分:3)

我认为您需要做的就是刷新表格链接。您是否在询问如何以编程方式重新链接表格?您是否尝试在断开链接并确认它解决了问题后刷新链接?刷新VBA中的链接类似于

Dim db as Database
Set db = Currentdb()
db.TablesDefs(1).RefreshLink

您可能必须循环遍历表以获取索引我不确定它是否会使用表名,但您可以先尝试这种方式。

答案 1 :(得分:0)

您的Access表在哪里引用您的SQL Server?如果您的Access表是本地的,并且您是唯一使用它的人,那么刷新表链接就足够了。但是,如果Access数据库位于服务器或许多人正在使用它的其他共享空间上,则在使用USER DSN时,它们将无法访问SQL表。设置系统DSN或dsn文件将为Access提供有关SQL表所在位置的信息。