我用Office中的Acess建了一个数据库,用了加密。密码为123,
于是在Delphi中用ADO连接组件连接。但在测试连接时,总说我连接失败。
我在对话框中填了密码。可是不行。我在Acess中设置密码只有设置密码没有用户名。而在Ado连接控件中连接数据库时,它怎么有用用名,于密码。请问设置密码的数据库怎样在Delphi6的Ado的控件中正确连接呢?
菜鸟请老师指教。

解决方案 »

  1.   

    在ADO连接属性的“所有”页里有一个Jet OLEDB:Database Password属性,在那里输入你的Access密码。“连接”页里的用户名和密码都不要动(也就是空白密码),就可以连上了。
      

  2.   

    请不要在属性中设置(把ConnectionString的属性值清空),用程式链接,以下码一定能解决!procedure TForm1.FormShow(Sender: TObject);
    var
       j:string;
     begin
     j:='provider=Microsoft.Jet.OLEDB.4.0;user ID=Admin;Data Source='
         +'d:\Database\Database.mdb;'
         +'Mode=Share Deny None;Extended Properties="";'  
         +'Jet OLEDB:System database="";' 
         +'Jet OLEDB:Registry Path="";'   
         +'Jet OLEDB:Database Password="123";'//密码123  
         +'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';  
     
     ADOConnection1.LoginPrompt:=false;
     ADOConnection1.ConnectionString:=j;
    end;
      

  3.   

    在连接字串加入一句:  Jet OLEDB:Database Password = 你的密码 就可以的
      

  4.   

    看看我的连接公函
    function adocnnclothes():tadoconnection;
    var adocnn:tadoconnection;
    begin
        adocnn:=tadoconnection.Create(nil);
        adocnn.ConnectionString:='Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DBQ=.\db\clothes.mdb;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;PWD=clothesmis;";' ;
        adocnn.LoginPrompt :=false;
        adocnn.Open;
        adocnnclothes:=adocnn; 
    end;