1

我有一个带有服务器的网络和许多连接到它的计算机。我在服务器上安装了一个软件,许多客户都可以访问和使用它。

现在我创建了一个使用c#/Winforms. 总之,它连接到 Access DB 并创建报告。并且网络上的每台电脑都包含一个 Access DB ,因此我们提供了该数据库的路径,它会为我们使用如下路径连接的那台电脑创建报告:

\WinPc\Tmuser\Database\users.mdb

什么时候WinPc是计算机名,Tmuser是电脑上包含数据库的共享文件夹。当我在 man 服务器上有应用程序(c#/Winform)时,它可以很好地连接到任何 PC 并生成报告。

但是,当我将工具放在任何一台电脑上并在另一台电脑上提供 Db 的路径时,它会给出如下错误:

在此处输入图像描述

而且我无法弄清楚为什么会出现此错误,因为当我在资源管理器中检查路径时,它会很好地打开访问数据库。如果您有任何建议,请告诉我。

4

2 回答 2

1

问题是权限,当它从另一台电脑而不是服务器连接时,它连接的电脑太需要凭据,所以它没有让它打开文件......将当前用户更改为domain account工作

于 2013-08-22T18:52:54.800 回答
0

正如错误所说,数据库由另一个用户独占打开。

我的建议是,因为您有很多可能尝试访问数据库的 PC,所以创建一个服务器-客户端项目,因此每个客户端都向主服务器发送写一行的请求,而主服务器中的服务器端将接受这些请求并将它们写入数据库,这样只有一台计算机将写入数据库,没有人会锁定数据库

另外,我可能看不到您的代码,但我猜您在某些时候忘记释放数据库。使用流或连接时始终使用Using语句

于 2013-08-22T08:15:12.053 回答