我需要打开与远程访问数据库的连接。 在本地环境中远程访问db工作得很好。 当我从生产服务器(其他服务器)运行此应用程序时,它失败并显示消息
” 它已由其他用户专门打开,或者您需要获得查看其数据的权限。 “
我的代码:
conString =
@"Provider=Microsoft.JET.OLEDB.4.0;"
+ @"data source=" \\150.248.248.38\d$\TestApp\vending.mdb;Jet OLEDB:Database Password=1234;";
OleDbConnection connAccess = new OleDbConnection(conString);
try
{
connAccess.Open();
objDiningRoom.Connection = connAccess;
....
}
catch (Exception ex)
{
}
finally
{
connAccess.Close();
connAccess.Dispose();
}
*它在其他地方不开放 感谢
答案 0 :(得分:0)
这看起来像是权限问题。 确保您将IUSR帐户(或ASP.NET运行的任何帐户)授予您的数据库读/写权限。
答案 1 :(得分:0)
你可以尝试:here 从那里复制:
- 当您的数据库文件以独占方式打开时,通常会发生这种情况 通过另一个申请(通常是MS
访问)。关闭所有应用程序 使用此数据库,然后重试。- 如果Internet信息正在使用该帐户,则可能会发生此错误 服务器(IIS),(通常是IUSR),确实 没有正确的Windows NT
基于文件的数据库的权限 或者包含
的文件夹 文件。- 检查文件和文件夹的权限。请确保你 有能力创造和/或 销毁任何临时文件。 通常会创建临时文件 在与数据库相同的文件夹中, 但也可以在中创建文件 其他文件夹,如/ Winnt。如果 你使用网络路径 数据库(UNC或映射驱动器), 检查共享的权限, 文件和文件夹。
- 检查以确保文件和数据源名称(DSN)是 没有标记为独家。
- 简化。使用使用本地驱动器号的系统DSN。移动 数据库到本地驱动器如果
必须进行测试。- “其他用户”可能是Visual InterDev。关闭任何Visual InterDev
包含数据的项目
连接到数据库。- 访问本地Microsoft Access时也可能出现此错误 数据库链接到一个表所在的表 table位于一个Access数据库中 网络服务器。在这种情况下,
请参阅以下文章 在Microsoft知识库中 解决方法:Q189408 PRB:ASP失败 访问IIS 4.0下的网络文件