遇到问题如下:在访问access数据库时,我设定了access的访问用户和密码。
 MDBDataModule.MDBData.SjADO.ConnectionString        :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+AGCHPath+';Jet OLEDB:Database Password=111;User ID=hello;Persist Security Info=false';
上面的通不过,显示的错误是数据库不存在或者其他用户以排他方式打开中。
但是我把用户名和密码去掉,可以正确连接。
    MDBDataModule.MDBData.BaseADO.ConnectionString      :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+AbasePath+';Persist Security Info=False';该怎么设定access的用户名和密码阿?

解决方案 »

  1.   

    可以;
    Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;//用户名
    Data Source=E:\lsh\软件汇编\text\data\da_jj.mdb;Mode=Share Deny None;Jet OLEDB:Database Password=zxr;//密码
    JetOLEDB: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
      

  2.   

    用户名和密码是access的用户名和密码。因为我要限制用户对数据库中表的访问。
      

  3.   

    Persist Security Info=false

    Persist Security Info=true
      

  4.   

    你是用的ADO 吧,只要设置连接字符串就好了:
    ADOConnection1.ConnectionString := 
    Provider=Microsoft.Jet.OLEDB.4.0; User ID= sa;Password=11; Data Source=data.mdb;Persist Security Info=True  这里的  User ID 和 Password就是你要的用户名和密码的设置了
      

  5.   

    'Provider=MSDASQL.1;Password=xxx;Persist Security Info=True;' +
    'Data Source=MS Access Database;Extended Properties="DSN=MS Access Database;'+'DBQ='+ExtractFilePath(Application.ExeName)+'Estimate.mdb' +
    ';DriverId=281;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;PWD=xxx;"';
    试试这个,我这样用可以。
      

  6.   

    在说明一下,我不是对access数据库加的密码,是通过设置access的用户组,然后给与不同的权限。
    这个用户名和密码就是属于那些不同用户组的用户名和密码。怪的很我不加用户名和密码能正常连接,加上了用户名和密码就完蛋了