我用ACCESS2003创建一个数据库,然后在VB6(英文版本)里面添加一个DATA控件,在选择好DATABASENAME以后,在选择RECORDSORCE以后发出错误信息“UNRECOGNIZED DATABASE FORMAT……”,请问这是为什么??

解决方案 »

  1.   

    DATA控件支持ACCESS2003数据库的格式吗?最好还是用ADO吧
      

  2.   

    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
      

  3.   

    你没打过 Jet4.0 补丁包吧,Jet3.51 只支持 Access97,Jet4.0 支持Access97和Access2000!
    同时,你的 VB 也应打 Sp5 或者 Sp6 补丁包!
      

  4.   

    哈哈
    老兄,不必如此麻烦
    你在Access中建好数据库后,只须将其转换为其早期的版本既可
      

  5.   

    将新版本的数据库转换为老版本的数据库,是一种解决问题的办法,支持!
    但却不是最好最优的方法,这样操作你如果要直接在数据库中修改数据库结构,需要转换回来到新的版本下,修改完后还得转回去,很不方便的,以前我就是这样操作的,况且现在的客户大都用 Access2000 或者 Access XP 了,很少有人用 Access97 ,而且这样转来转去会出错的!
      

  6.   

    data控件不能用在access2000及以上版本中,建议楼主使用ado控件
      

  7.   

    大哥,还是直接使用ADO吧,完全都是自己控件,多方便呀,不要使用什么控件了,
      

  8.   

    问题很明显:
    你的 VB 应打 Sp5 或者 Sp6 补丁包!
    我也遇见过.
      

  9.   

    是呀,用ADO吧,我前阵刚编了一个,用的就是ADO,太好用了!不懂,问我。