如何将C#项目与服务器非本地网络上放置的Access数据库连接以进行编辑和查看?

问题描述

我有一些内置于Access中的数据库,并且我希望在未连接到本地服务器\网络时能够查看和编辑它们。

如何使用C#访问以查看和编辑放置在没有VPN或SMB的服务器上的Access数据库(这意味着创建本地网络)。可以在服务器上实时编辑它吗?

这需要一个以上的人访问,因此,例如,如果一个人已经在编辑一个表(例如,FTP协议-在PC上下载和编辑并重新上传),我也想阻止它。

我希望我足够清楚并提供足够的信息,感谢所有帮助者!!请启发我:)

解决方法

我们首先必须询问最终用户如何运行和使用C#程序?

桌面:用户需要与服务器的网络连接。 (最可能是VPN)。

基于Web:用户将需要网络连接到WEB SERVER。这也可以是VPN,也可以是面向公众的Web服务器。这将要求登录以确保安全。

如果用户没有网络连接,那么这是oracle,MySQL,SQL Server还是Access都没有关系。实际上,如果这是基于Web的,则用户需要能够连接到该Web服务器。

因此,如果没有到数据所驻留的服务器或计算机的某种网络连接,并且您取消了VPN,那么您的选择将受到限制。

您可以构建网站并将其放置在服务器上。但是,如果即使在网站情况下用户也没有任何类型的网络连接,那么我看不到如何建议使用FTP,更不用说其他任何类型的连接了。

此功能需要一个以上的人访问,

好的,您需要多用户。但是,在sql服务器上锁定整个表以仅允许一个用户实际上是非常困难的。

但是,我们可以让您一次在一个给定表中保留一个用户。 (但是Access和网站实际上都可以允许多个用户-甚至可以编辑同一张表。)

总而言之? 然后,这建议了最明显的解决方案:运行Web服务器,这将允许任何用户连接到该网站,然后该网站可以读取/交谈/使用驻留在该服务器上的访问数据库。这再一次意味着您不需要安装任何客户端软件。

FTP并非实用的解决方案-因为它仅适用于整个文件。

因此,用户将需要某种方式才能连接到某些服务器。在这种情况下,然后将您的C#应用​​程序编写为基于Web的应用程序,这样就不需要客户端软件,并且与该服务器上的访问文件进行交互的唯一软件就是该网站。

因此,在该服务器上运行网站似乎是最佳选择。 因此,我们朝着Web解决方案前进。

因此,软件将保留并在服务器端100%运行,因此除了浏览器外,零客户端软件将是必需的。

,

我开发了一个简单的Python Web服务器,可通过HTTP与Access DB一起使用:

https://github.com/vikilpet/MS-Access-HTTP-Server

对于您的情况,这可能不是理想的解决方案,但这可能是一个很好的起点。