dim db as database
set db=DBEngine.Workspaces(0).OpenDatabase(dbPath)
这样打不开带有密码的access数据库

解决方案 »

  1.   

    dim objConn as new ADODB.Connection
    objConn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=文件名;PWD=密码"
      

  2.   

    在建立ADO连接时,你可以指定用户名和密码,这种方式适合与SQL Server等数据库。对于Access数据库不能使用这样的方式。你可以在通常的连接字符串后面添加: 
        Jet OLEDB:Database Password=password 
        这里password是你的密码。如: 
         Conn1.Open "Provider=Microsoft.JET.OLEDB.3.51;" & _ 
         "Data Source=G:\ComponentSource\DBFiles\CSMain\CSMain.mdb;" & 
         "Jet OLEDB:Database Password=outlook" 
        对于ADO控件,你应该把这个字符串添加在ConnectionString属性后面。 vc:
    http://dev.csdn.net/article/26/26842.shtm
      

  3.   

    dim conn as new ADODB.Connection
    conn.open "Provider=Microsoft.Jet.Oledb.4.0;Jet OLEDB:DataBase Password=1234;Data Sourc=F:\db.mdb"
      

  4.   

    建议使用ADO来访问数据库Option Explicit'工程->引用->Microsoft ActiveX Data Objects 2.0 Library (后面为版本号)
    Dim cn As New ADODB.Connection
    Dim rs As New ADODB.RecordsetPrivate Sub Command1_Click()
        rs.Open "SELECT * FROM TABLENAME WHERE NAME = '" & txtName.Text & "'", cn, adOpenDynamic, adLockOptimistic
            If Not rs.EOF Then
                Label1.Caption = rs!ID
                Label2.Caption = rs!Memo
            End If
           
            rs.AddNew
            rs!ID = "编号"
            rs!Memo = "备注"
        rs.Update
    End SubPrivate Sub Form_Load()
        cn.ConnectionString = "DBQ=" & App.Path & "\TelePhone.mdb;DefaultDir=" & _
            App.Path & ";Driver={Microsoft Access Driver (*.mdb)};" & _
            "DriverId=25;FIL=MS Access;ImplicitCommitSync=Yes;" & _
            "MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;" & _
        "Threads=3;UID=ADMIN;UserCommitSync=Yes;PWD=admind1234;"
        cn.Open
        '查询字符串可以上这里查
        'http://www.connectionstrings.com/
    End SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    On Error Resume Next
        rs.Close
        Set rs = Nothing
        cn.Close
        Set cn = Nothing
    End Sub
      

  5.   

    dim objcnn as new adodb.recordsetobjCnn.ConnectionString = "Driver={Microsoft Access Driver (*.mdb)};" + _
                        "DBQ=" + str + ";pwd=111;DriverId=25;FIL=MS access;ImplicitCommitSync=Yes;" & _
            "MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;" & _
        "Threads=3;UID=ADMIN;UserCommitSync=Yes;"实时错误,自动化错误!
    怎么回事
      

  6.   

    1.使用ADODC数据控件,在属性页的general页面点击"build... "按钮.
    2.选择JET3.51 那个选项,单击下一步
    3.选择要打开的数据库文件
    4.不要关闭,继续点击"所有"这个选项卡
    5.编辑password 这个属性为你的密码.
    6.测试连接应该可以通过了,呵呵.将生成的串复制到你的程序中,不用一个个输入啦!!
      

  7.   

    DAO是这样
    dim db as database
    set db=DBEngine.Workspaces(0).OpenDatabase(dbPath , ,"ms access;pwd=xxxxx")ADO可以这样
    dim objConn as new ADODB.Connection
    objConn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=文件名", ,"密码"