小弟有个很简单,但很棘手的问题需要解决,
请各位大虾帮帮忙,谢谢!用TADOConnection连接加过口令的Access数据库(Access自带的安全方法,加口令),连接时输入密码正确,却报错,无法连接。
但是,
用BDE连接这个数据库时,可以连接成功 ; 
或用ADO连接设置用户和密码的SQL Server数据库时,也可以连接成功。谢谢!!

解决方案 »

  1.   

    试试下面的
         if ADOConnection1.Connected then
             ADOConnection1.Connected := False;
         ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+ExtractFilePath(Application.ExeName)+'Data.mdb;Jet OLEDB:Database Password=密码;';
         ADOConnection1.Connected := True;
      

  2.   

    Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=数据库;Jet OLEDB:Database Password=密码;
      

  3.   

    你何以试一下以下的方法
    当出现‘初始化提供者发生错误,测试失败’时点“所有”页。然后双击“jet oledb database password”然后添入密码,再选择“连接”中的“测试连接”当出现‘测试连接成功’时,把adoconnection的loginpromtp改为false即可。
      

  4.   

    谢谢,谢谢各位!
    等周一机房开门了,我一定在照着试试(我还没有自己的电脑呢)我记得当时1:在测试连接的时候,
    输入密码错误时,提示“初始化提供者发生错误”
    可是输入密码错误时,提示“可能已经被其他程序以独占方式打开”
    也在“所有”页编辑“用户名”和“密码”了,但还是失败。
    (连接SQL Server时就成功了)2:我试过手工写入用户名和密码 
    ADOConnection1.ConnectionString:="..."
    同样失败。3:我也试过添加属性写入用户名和密码 
    ADOConnection1.property.add[]还是不行。我明天再试试吧,看是不是一时疏忽。谢谢大家了!