更新的Access链接的表使用UNC路径(Update an Access linked table

2019-07-21 21:14发布

我有一个表的列表,其中之一是链接表,从另一个Access数据库B.mdb在同一台服务器上连接一个Access 2010数据库A.mdb。 这些数据库在开发机器xxx.xxx.xxx.xxx ,这是我的计算机上映射为R:// ,他们后来在网上发表了对yyy.yyy.yyy.yyy服务器。

如果我想在数据库中本地工作,我需要改变的链接表。 但是,如果我通过文件系统来修改它(使用“链接表管理器”),链接变成R://....而当我看着这些请求的数据在ASP页,它被打破,因为路径是错误的。 另外,如果我改变本地的链接,它不会在网络服务器上运行。

有没有办法来改变链接“编程”? 也就是说,在不使用链接表管理器?

我寻找一个答案,但我不是专家,我只是明白,我必须写一个“模块”? “宏”?

Answer 1:

表链接可以是UNC路径。 例如,假设我有一个链接表指向数据库\\192.168.1.2\Public\被映射到驱动器P: 如果我启动VBA编辑器(ALT + F11),打开立即窗口(Ctrl + G)和类型...

?CurrentDB.TableDefs("remoteTable").Connect

...它会返回...

;DATABASE=P:\B.accdb

......因为我指出来驱动P:当我创建的链接。

现在,如果我创建并运行VBA函数...

Function linkToUnc()
Dim cdb As DAO.Database
Set cdb = CurrentDb
cdb.TableDefs("remoteTable").Connect = ";DATABASE=\\192.168.1.2\Public\B.accdb"
cdb.TableDefs("remoteTable").RefreshLink
Set cdb = Nothing
End Function

...该链接现在是一个UNC路径。

顺便说一句,你可以创建链接表管理UNC链接,如果你浏览到“网络”,“计算机名”,“共享名”,但是,这将使你的机器名(在我的情况\\PICO\Public\B.accdb )。



Answer 2:

你可以右键点击一个链接表并选择连接表管理 。 选择您要在工作和TiC的复选框波纹管它说始终提示输入新位置 ,然后单击确定按钮窗口中的链接表。

你将被要求提供新的位置。 浏览并选择该文件,然后单击确定。



Answer 3:

我想建立一个文件DSN与只读访问整个网络访问的共享文件夹,然后使用一个连接表管理的UNC路径。 要做到这一点,我用的是链接表管理器和设置文件DSN我的桌面上。 然后我复制和移动的DSN文件复制到共享目录的UNC。 然后,我进入访问和删除链接的表并重新创建链接表。 要做到这一点,删除链接的表后,我做到以下几点:

  1. 通过创建一个链接表>链接到数据源 - - 我点击ODBC数据库>确定。
  2. 单击文件数据源选项卡中选择数据源窗口。 在对话框的底部,你会看到“DSN名称:”后面的文本框和一个新的按钮。 您将进入整个UNC路径和文件名到该文本框(所以这是指向你复制出来的UNC路径的文件)。 例如,我输入,\ ATD-SERVER1 \ AccessShare \ ContactsApp.accdb.dsn。 然后点击确定。

假设你有访问权限要链接到,将显示链接表对话框服务器,然后您可以从中选择您的链接表! 微软不能让他们是否尝试过任何这不太直观。



文章来源: Update an Access linked table to use a UNC path