如何通过互联网将Delphi连接到远程MS Access数据库?

时间:2012-08-09 16:04:30

标签: delphi ms-access web-sql

  

可能重复:
  How to connect to an Access 2003 database located on a web server via HTTP?

我有一个工作的Delphi程序,它使用MS Access数据库来获取报告等。 现在我想将数据库迁移到运行我的网站的网络服务器。该网站也必须能够连接到数据库,以更新数据(用户插入联系人详细信息作为示例)。

现在如何将我的Delphi程序连接到现在位于Web服务器上的数据库,而不会丢失任何功能?这可能吗?

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

其中一种情况是在ADOConnection.Connectionstring:

中提供数据库计算机IP地址
Data Source=X.X.X.X,Port

答案 1 :(得分:0)

如果您将Access数据库迁移到Web,那么您是否在谈论使用Access的新Web发布功能?例如,在中间点的以下视频中,我切换到在浏览器中100%运行Access数据库。

http://www.youtube.com/watch?v=AU4mH0jPntI

请注意,不需要Silverlight或ActiveX下载,这些已发布的Access应用程序适用于任何符合Web标准的浏览器 - 包括iPad上的Safari。

但是,现在,如果您使用Delphi打开该mdb文件,请记住您没有连接到该文件,只是打开文件。

我的意思是说我们连接到word文件或连接到Power point文件是愚蠢的。所以在办公套件和那些文件的情况下,我们谈论的是平面简Windows文件。

马是马是马。

文件是文件是文件。

所以你没有连接到硬盘上的jpg文件,你打开文件。因此,如果您谈论当前的设置,最好在此处使用正确的术语。您没有连接到该访问文件,但实际上是打开一个平面Jane Windows文件。 (如果您仔细查看连接字符串,它将始终具有完全限定的Windows路径名称,该名称将解析为位于文件夹上的文件)。

如果您将此类文件放在Web服务器上(而不是使用Access的Web发布功能),那么您仍然需要打开该Windows文件。这意味着你需要某种VPN,你也需要Windows文件和网络系统(所以这意味着如果这是Linux,你必须运行samba)。

所以你不能通过网络界面打开文件,甚至当你使用FTP或http时,这些都不是真正的" windows"网络系统,允许您打开+使用平面简Windows文件。

虽然理论上你可以通过VPN将Windows网络扩展到服务器,但它不是常见的设置,并且通过互联网使用VPN很慢。

因此,请记住,您没有真正连接到某个文件的概念,如电源点或位于文件夹中的某个mdb文件 - 您需要能够打开文件,并且您需要使用Windows网络系统在Access的情况下执行此打开文件。访问实际上更需要这种开放能力,因为使用Excel或Word,文件可以从服务器整体下载 - 使用Access,文件不会完整下载,但需要一个真正的工作Windows文件打开命令使用

因此,这里的一个选择是考虑使用Access的Web发布功能,但是在服务器上生成的已发布应用程序将不再存储在accDB或mdb文件中 - 而且从Delphi中您可以使用一组为已发布的Access站点公开的Web服务允许您更新数据 - 没有oleDB提供程序,但有Web服务,您还可以使用桌面Access客户端中的链接表来连接和编辑发布了Access Web应用程序。