2

我有一个 C# 程序,它使用以下命令连接到 MS-Access 本地文件:

dbConnection = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + sPath);
dbConnection.Open();

其中 sPath 是本地文件路径。

该程序确实选择、插入和更新 sql 操作。我想将 C# 程序部署到另一台位于 WiFi LAN 上的计算机以访问相同的数据库。我假设我只需要提供正确的路径?还是别的什么?数据库是否允许读写操作?

4

1 回答 1

3

RE:通过网络共享数据库

是的,基本上您真正需要做的就是将 .accdb(或 .mdb)文件放在一个共享文件夹中,然后告诉您的 C# 程序在哪里可以找到它。

笔记:

  1. 每台计算机都需要安装自己的 Access 数据库引擎副本。如果计算机上尚未安装 Access,则可以在此处下载 Access 数据库引擎安装程序。

  2. 要让多个并发用户访问数据库,所有用户都必须具有足够的权限来创建和修改数据库文件所在文件夹中关联的 .laccdb(或 .ldb)锁定文件。也就是说,所有用户需要的不仅仅是对该文件夹的读取权限。(这是人们首次为多个并发用户部署 Access 后端时常犯的错误。)

回复:WiFi

ACE/Jet 数据库引擎依赖于与数据库文件的稳固网络连接,因此任何由 WiFi 信号较弱导致的间歇性网络故障都会导致问题。在 WiFi 的早期,这是许多数据库应用程序(包括但不限于 Access 数据库)中错误的常见原因。WiFi 技术多年来一直在改进,因此问题比以前少了,但请注意,不稳定的 WiFi可能会导致错误(如果运气不好,甚至会损坏数据库文件)。

于 2013-06-22T11:08:41.630 回答