procedure TMainFrm.FormShow(Sender: TObject);
var
  strAdo: String;
begin
  strAdo:='provider=Microsoft.Jet.OLEDB.4.0;user ID=Admin;Data Source='
   +ExtractFilePath(Application.ExeName)+'Database\Database.mdb;'
   +'Mode=Share Deny None;Extended Properties="";'  
   +'Jet OLEDB:System database="";' 
   +'Jet OLEDB:Registry Path="";'   
   +'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';    adoConnection.LoginPrompt := False;
  adoConnection.ConnectionString := strAdo;
end;F9,提示:验证失败,请问这是怎么回事呀?

解决方案 »

  1.   

    你得数据库是不是设置密码了你用adoconnection设置连接试试,能不能连上
      

  2.   

    我直接用adoconnection连接可以的,后来我换了用手工设置TAdoConnection的ConnectionString就报验证失败了
      

  3.   

    你把adoconnection里的连接字符串拷贝下来,然后替换一下data source就行了
      

  4.   

    问题解决了!procedure TMainFrm.FormShow(Sender: TObject);
    var
      strAdo: String;
    begin
      strAdo := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='
        + ExtractFilePath(Application.ExeName)+'Database\Database.mdb;'
        + 'Persist Security Info=False';  adoConnection.Close;
      adoConnection.LoginPrompt := False;
      adoConnection.ConnectionString := strAdo;
      adoConnection.Open;
    end;
      

  5.   

    哈哈哈哈,问题解决了,我把连接放到窗口的Creat函数就OK了