我们如何在路径尚不存在的情况下设置链接表?
我们需要在 Access 中设置一个链接表,以便最终在没有安装 MS Access 的客户环境中使用(Access 数据库只是通过 Jet 用作后端)。
我们可以在客户站点上使用 Jet & DDL 在他们的 .mdb 中创建/编辑/删除表,但据我所知,您无法使用 DDL 创建链接表。
理论上,我们可以在这里创建链接表(我们可以访问)并使用 VBA 指定“无效”路径,如下所示(假设乞力马扎罗山是我们网络上不存在的客户服务器):
Function SetLinkedTablePath(tableName As String)
Dim cdb As DAO.Database
Set cdb = CurrentDb
cdb.TableDefs(tableName).Connect = ";DATABASE=\\Kilimanjaro\Foo-Data.mdb"
cdb.TableDefs(tableName).RefreshLink
Set cdb = Nothing
End Function
但是,该.RefreshLink
线路尝试验证路径,因此在我们的网络上失败。
如果我们注释掉该.RefreshLink
行并运行它,它会执行得很好,但是在 Access 中检查 Linked Table Manager 并没有采用新路径。
有什么解决办法吗?我们不希望使用映射驱动器。