我有一个客户需要我们将联系表单记录插入其Access 2013数据库,该数据库在其办公室本地托管,具有静态IP地址。数据库文件在所有员工之间的网络驱动器上共享。
我知道这是可能的,我只是不知道最简单的方法。所以,我的问题是:建立这种数据库连接的最不痛苦的方法是什么?
我还希望不将其网络驱动器设置为我们服务器上的网络驱动器,以确保其驱动器安全。我认为最好的办法是通过网络上的计算机连接,然后通过那里访问共享数据库。
答案 0 :(得分:-1)
您没有连接到电源点文件,而是打开它。
您没有连接到word文件,而是打开它。
您没有连接到文本文件,而是打开它。
奇迹的奇迹,就像办公室的其余部分一样,同样适用于坐在某个文件夹中的accDB文件。您永远不会连接到Windows文件,您需要权限+权限才能打开该文件。实际上,您需要WINDOWS网络系统来打开这样的文件。
此处的目标是您需要对Windows计算机上的该Windows文件具有读取/写入权限。
您无法连接到一台计算机以在另一台计算机上打开文件。 (除非您采用类似远程桌面的东西 - 但这是一个100%不同的问题)。
所以你不要建立一些数据库连接,也不能建立一些数据库连接。
您必须能够打开文件,并且技术层必须与Windows操作系统兼容。因此,例如,如果文件放在Linux机器上,那么您必须安装Windows网络系统(Samba)并且还要设置映射驱动器,或者至少设置VPN(虚拟专用网络)。因此,文件夹需要显示为映射驱动器,或者在网络邻居中显示,然后浏览到该远程网络上的计算机,然后打开该计算机上的文件夹,然后才能打开该文件。
我再说一遍:
您没有连接到文件,您需要Windows文件系统来打开文件。使用术语“连接”代替打开word文件,Excel文件,或者在这种情况下使用accDB文件是没有意义的。
您当然可以使用基于套接字的技术(如TC / IP)连接到Web服务器或数据库服务器。但是在这种情况下,您需要打开一个平面Jane窗口文件,并且目标计算机上的该文件必须具有允许您使用Windows文件系统打开该文件的Windows网络系统。这里没有“连接”的概念。
当然,另一个问题是这种连接速度很慢 - 比典型的办公网络慢大约100倍。你真的需要阅读我的以下文章来实现这个限制和速度问题:
http://www.kallal.ca//Wan/Wans.html
现在我们已经清除您没有连接到数据库,但所有用户必须能够打开该文件。
假设它们与您声明的网络位于同一网络,那么只需让用户浏览到数据库所在的文件夹,然后双击它即可。
如果您使用PHP,那么ANY和ALL连接字符串实际上将解析为STANDARD Windows文件位置。假设网络上的所有用户都直接使用该文件,那么打开此文件的PHP字符串中的路径名将为:
\\IP-address\folderName\myDatabase.accDB
如上所述,用户将需要上述文件和文件夹的完全权限。如果PHP通过网站运行,那么运行该网站的计算机将需要网络上文件夹的完全权限,并且如上所述,它们必须是同一个Windows网络的一部分。当然,如果他们使用网站,那么只有网站才需要直接的Windows网络和文件打开功能(但同样需要通过该网络服务器的Windows网络直接文件位置和打开功能)。