我开始设计数据的时候使用的ACCESS是没有加数据库密码的,后来为了数据的安全,在数据库上加了密码,
我是用TADOConnection来连接数据库的,加上密码以后就不行了,用户名Admin不变,密码是我设定的数据库密码,在测试连接的时候报出这样的错误对话框
“初始化提供者时发生错误,测试连接失败,无法启动应用程序,工作组信息文件丢失,或者已被其他用户以独占的方式打开。”
我没有使用独占的方打开,什么原因呢?
请各位大侠帮忙解决,实在是感激不尽

解决方案 »

  1.   

    d7的连接access的自动生成connectString是错误的,
    参照
    "Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Exclusive=1;Uid=admin;Pwd="
      

  2.   

    错了,是
    "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Jet OLEDB:Database Password=MyDbPassword;"
      

  3.   

    delphi生成的是形如
    "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Database Password=MyDbPassword;"
    这样的,在password前面缺少了Jet OLEDB:
      

  4.   

    var
    exepath:string;
    connstr:string;
    begin
      exepath:=ExtractFilePath(application.ExeName);//取得现在数据库文件的路径
      connstr:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+exepath+'sal.mdb'+';Persist Security Info=False;Jet OLEDB:Database Password=123456';//和数据密码一致
      DM.AdoConnection1.ConnectionString :=connstr;
      DM.AdoConnection1.Connected :=true;
      

  5.   

    Driver={Microsoft Access Driver (*.mdb)};Dbq=2004-07.mdb;Uid=Admin;Pwd=200407;
      

  6.   


    建議建立個DSN數據源連接你的.mdb數據庫.
    然後將BDE別名的ODBC DSN設有新建的DSN.
      

  7.   

    我也习惯用ODBC来连接数据库。