我们现在软件给多个企业用户使用,数据库用的Accesss 数据库,但现在在webconfig文件中使用连接字符串的时候,连接不上数据库。总是出现的问题是:
      ”Microsoft JET 无法打开指定的数据库,因为 .mdb 文件已经被其它用户使用“。
 求教,急等!!

解决方案 »

  1.   

    ding,同样问题
    string connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+System.Web.HttpContext.Current.Request.PhysicalApplicationPath+"\\NewMDB580.mdb"+";Mode=3";
    OleDbConnection conn=new OleDbConnection(connstr);
    conn.Open();不加Mode就可以,但是不加Mode就只能只读了吧。反正插入和删除都不行。
      

  2.   

    帮忙定,我也经常碰到这样的情况,可能是你对数据库操作的太贫乏,比如,你可以能没读取一个数据表信息就会用到.Open,.Close其实没必要的,在pageLoad()一开始的时候可以用个.Open,在结束的时候用个.Close()就行了,没有必要中间重复使用
      

  3.   

    我对Access数据库的连接字符串,一直用得好好的。    <appSettings>
            <add key="Access_ConnectionStr"  value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\test.mdb;Jet OLEDB:DataBase Password='sa'"/>
        </appSettings>你需要在运行你的程序时把Access关闭。
      

  4.   

    有几种可能:
    1,你正在用access打开了数据库
    2,重复open
    3,不知道access支不支持并发访问,可能有别的进程在访问数据库,自己试一下
      

  5.   

    1.检查在运行程序的时候,是否同时在桌面打开了access数据库
    2.检查该access数据库文件相同目录中,有无*.ldb后缀名的文件,如果有删除它,并且重新启动机器.
    3.上述检查之后,问题还存在,则在桌面中打开该数据库,运行"工具-数据库实用工具-压缩和修复数据库"功能,修复此数据库.