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