我在build连接字符串(connection string)的时候,只要是连接带密码的access数据库,在选中要连接的数据库的时候,测试连接的时候,总是提示“测试连接失败,因为初始化提供程序时发生错误。无法启动应用程序。工作组信息文件丢失,或是以被其他用户以独占方式打开。”
我在测试连接的时候,密码输入的为access数据库的密码,用户名我试过了不输入,输入我的系统登陆密码,以及机器名,都不行,不知道,应该是怎么解决这个问题,delphi的ado应该可以连接带密码的access数据库的阿,有谁知道请告诉我原因和解决方法,谢谢

解决方案 »

  1.   

    补充一句,我在测试连接的时候用的是“microsoft jet 4.0 ole db provider”
      

  2.   

    用adoconnection的connectionstring属性中加一句'Jet OLEDB:Database Password=密码'即可
      

  3.   

    self.ADOConnection1.ConnectionString:=
       'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\drgwer.mdb'+
       ';User ID=admin;password=;Persist Security Info=False';
      

  4.   

    我在使用中的
    procedure Tfrm_main.FormCreate(Sender: TObject);
    var
      str_con:string;
    begin
      str_con:='Provider=Microsoft.Jet.OLEDB.4.0; '+
          'User ID=Admin;'+                         //这是用户工作组(*.mdw)用户名
          'Data Source=mydata.mdb;'+
          'Mode=ReadWrite;Extended Properties="";Persist Security Info=True; '+
          'Jet OLEDB:System database="";'+             //这是用户工作组文件
          'Jet OLEDB:Registry Path="";'+
          'Jet OLEDB:Database Password=1234; '+        //这里才是数据库密码
          'Jet OLEDB:Engine Type=5; '+
          'Jet OLEDB:Database Locking Mode=1; '+
          'Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;'+
          'Jet OLEDB:New Database Password=""; '+
          'Jet OLEDB:Create System Database=False;  '+
          'Jet OLEDB:Encrypt Database=False;  '+
          'Jet OLEDB:Don''t Copy Locale on Compact=False;  '+
          'Jet OLEDB:Compact Without Replica Repair=False;'+
          'Jet OLEDB:SFP=False  ';
      DM_adocon.adocon_1.ConnectionString:=str_con;
      DM_adocon.adocon_1.Connected:=True;
      DM_adocon.adocon_1.LoginPrompt:=False;
      DM_adocon.adoqry_search.Active:=True;
    end;
      

  5.   

    给你个数据库连接字符串串:
    Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\Test\TestDB.mdb;Persist Security Info=False;Jet OLEDB:Database Password=123  //就是这里!!!
      

  6.   

    在connectionstring的最后加上这个Jet OLEDB:Database Password=密码 在测试一下就ok了