装完VB6.0后想连接一个access mdb,有如下错误,谁帮我看看;
unrecongnized database format 'c:\db\test.mdb'

解决方案 »

  1.   

    引用ADO2.5和加入DataGrid
    Option ExplicitPrivate adocnn  As connection
    Private rs As RecordsetPrivate Function AdoCon(ByRef Con As connection, ByVal strPath As String) As Boolean
        Dim strCon As String
        If strPath = "" Then
            Exit Function
        End If
        If Con Is Nothing = False Then
            Set Con = New connection
        End If
        strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strPath + ";Persist Security Info=False"
        Con.Open strCon
        If Con.State = adStateClosed Then
            AdoCon = False
        ElseIf Con.State = adStateOpen Then
               AdoCon = True
        End If
    End FunctionPrivate Function GetRS(ByRef Ado As connection, ByVal strSQL As String) As Recordset
        Dim NewRs As New Recordset
        'Set GetRS = New Recordset
        'NewRs.CursorType = adOpenStatic
        NewRs.CursorLocation = adUseClient
        If Not Ado.State = adStateClosed Then
           Set GetRS = Nothing
        End If
        NewRs.Open strSQL, Ado, adOpenStatic, adLockOptimistic
        If NewRs Is Nothing = False Then
           Set GetRS = NewRs
        Else
            Set GetRS = Nothing
        End If
    End FunctionPrivate Sub Form_Load()
        Dim adocnn As New connection
        Dim rs As New Recordset
        Dim strSQL As String
        strPath = "数据库文件名.mdb"
        AdoCon adocnn, strPath
        strSQL = "select * from 表"
        Set rs = GetRS(adocnn, strSQL)
        Set datagrid1.DataSource = rs
    End Sub
      

  2.   

    我在属性里选择"recordsource"报的错.unrecongnized database format 'c:\db\test.mdb'
      

  3.   

    97版access的数据库文件吧,把文件转换一下
      

  4.   

    把access转成以前版本,就可以了
      

  5.   

    用ADODB
    在工程文件里引用一下ADO就可以了!
      

  6.   

    我有一个ADO帮助文件,里面说得很清楚,要的话给我联系!
    只有UC   76371954
      

  7.   

    To bigbrid,是吗?非常感激! [email protected]
      

  8.   

    VB工具栏上面的菜单:工程-引用-Mircrosoft ActiveX Objects 2.6 Library
      

  9.   

    Private Sub Form_Load()
        Dim adocnn As New connection
        Dim rs As New Recordset
        Dim strSQL As String
        strPath = "数据库文件名.mdb"
        AdoCon adocnn, strPath
        strSQL = "select * from 表"
        Set rs = GetRS(adocnn, strSQL)
        Set datagrid1.DataSource = rs
    End Sub
    strPath="数据库文件名.mdb"不只是写文件名,要写出完整的路径和文件名比如:strpath="c:\kaka.mdb"
    希望我的意见对你有帮助!
      

  10.   

    Option ExplicitPrivate Rs As New ADODB.Recordset
    Private Conn As New ADODB.ConnectionPrivate Sub Form_Load()
     Dim strConn As String
     
     ' 连接数据库的字符串
     ' 连接带密码的数据库,直接在连接符后面加上Jet OLEDB:DataBase Password='您的密码'
     ' 连接Access97数据库需要使用Jet.OLEDB.3.5,Access2K和以上数据库使用Jet.OLEDB.4.0
     strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\test.mdb;Persist Security Info=False"
     
     ' 使用客户端数据游标
     Conn.CursorLocation = adUseClient
     ' 打开Access的连接
     Conn.Open strConn
     
     ' 如果RecordSet的状态不是关闭状态,则关闭Recordset
     If Rs.State <> adStateClosed Then Rs.Close
     
     ' Recordser打开表People
     Rs.Open "Select * from People", Conn, adOpenKeyset, adLockOptimistic
     
     ' 报告出 一共多少笔数据,测试是否存在数据
     ' MsgBox Rs.RecordCount
     
     ' 绑定进DataGrid
     Set DataGrid1.DataSource = Rs
     
    End Sub