我用AdoConnection连接有密码的Access时,总测试不成功,怎么办?

解决方案 »

  1.   

    with ADOConnection1 do
      begin
        ConnectionString := 'Provider = MicroSoft.jet.OLEDB.4.0;'+
                            'Persist Security Info = False;'+
                            'Data Source=D:\*.mdb;'+//数据库本地目录
                            'Mode = ReadWrite;'+
                            'Jet OLEDB:Database Password=*****;'// 加入密码
        Connected := True;//Open DataBase
      end;
      

  2.   

    with ADOConnection1 do
      begin
        ConnectionString := 'Provider = MicroSoft.jet.OLEDB.4.0;'+
                            'Persist Security Info = False;'+
                            'Data Source=D:\*.mdb;'+//数据库本地目录
                            'Mode = ReadWrite;'+
                            'Jet OLEDB:Database Password=*****;'// 加入密码
        Connected := True;//Open DataBase
      end;
      

  3.   

    ADOConnection1.Close;
      ADOConnection1.ConnectionString := Format('Provider=Microsoft.Jet.OLEDB.4.0;'
      + 'Data Source = %s;Persist Security Info=True;Jet OLEDB:Database Password=%s '
      ,[
       ExtractFilePath(Application.ExeName) + 'JiLei.mdb'
      ,'[email protected]'
      ]);
      ADOConnection1.LoginPrompt := False;
      ADOConnection1.Connected := True;;
      

  4.   

    var
      M_STR_CON,M_STR_Dname,M_S_MM:string;
    begin
      M_STR_Dname:=ExtractFilePath(Application.ExeName)+XXX.mdb';
      M_S_MM:='XXX';
      try
        M_STR_CON:='Provider=Microsoft.Jet.OLEDB.4.0;'+
               'User ID=Admin;Data Source='+M_STR_Dname+';'+
               'Mode=Share Deny None;Extended Properties="";'+
               'Locale Identifier=2052;Persist Security Info=False;'+
               'Jet OLEDB:System database="";Jet OLEDB:Registry Path="";'+
               'Jet OLEDB:Database Password='+M_S_MM+';'+
               'Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;'+
               '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';
        if M_ADOC_CONN1.Connected = True then M_ADOC_CONN1.Connected:=False;
        M_ADOC_CONN1.ConnectionString:=M_STR_CON;
        M_ADOC_CONN1.Connected:=True;
      except
        Application.MessageBox('无法连接数据库!','错误',MB_OK+MB_ICONSTOP);
        Halt;
      end;
    end;
      

  5.   

    1、双击Adoconnection直接设置。2、ADOConnection1.ConnectionString := 'Provider = MicroSoft.jet.OLEDB.4.0;'+
                            'Persist Security Info = False;'+
                           'Data Source=D:\Data\*.mdb;'+//数据库存放的路径
                            'Mode = ReadWrite;'+
                            'Jet OLEDB:Database Password=*;'// Access密码
    Adoconceciton1.Open;
      

  6.   

    转载!解决ADO连接带密码的ACCESS数据库问题  
                         解决ADO连接带密码的ACCESS数据库问题
                     高红岩(ghyghost)  笔者近日在写ADO连接带密码的ACCESS数据库时,当connected:=true;时,总是出现密码不对的对话框,最终
    在研究了TADOConnection.ConnectionString的内容创建过程时得到灵感,现与大家分享。
      1,新建Project。
      2,在FORM中放入ADOConnection,ADOQuery,DataSource,Datagrid控件。
      3,双击ADOConnection控件,然后点击Build...按钮,在“提供者”页中选择“Microsoft Jet 4.0 OLE DB 
      Provider”,然后点击“下一步”按钮,在“连接”页中选择要连接的Access数据库的路径和数据库的文件
    名,这时如果点“测试连接”按钮时,出现“初始化提供者时发生错误,测试连接失败,密码无效”的错误提示。
      4,这时点“所有”页,然后双击“Jet OLEDB:Database Password”,出现对话框,添入密码后,选择“连
    接”页中的“测试连接”按钮,出现“测试连接成功”的对话框。把ADOConnection控件的LoginPromtp设为false.
      5,设置连接完成。 
      
      

  7.   

    ADO连接有密码的Access数据库(采用代码方式): 
    ADOConn.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+'Data.mdb;Persist Security Info=False;Jet OLEDB:Database Password=12345';