Dim cnn1 As ADODB.Connection
Dim rst As ADODB.Recordset
Dim cnnstr As String
Set cnn1 = New ADODB.Connectioncnnstr = " provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\test.mdb;"
cnn1.Open cnnstrSet rst = New ADODB.Recordset
rst.CursorType = adOpenKeyset
rst.LockType = adLockOptimistic
rst.Open "select * from stu", cnn1Set Form1.MSHFlexGrid1.DataSource = rstrst.Close
cnn1.Close是不是你没有用jet 4.0

解决方案 »

  1.   

    点VB中的帮助-》关于可以看到版本是Visual Basic 6.0(sp5)
      

  2.   

    用ADO的话,首先引用ADO2.0以上版本,写连接代码:con.open = "driver{Microsoft Access Driver(*.mdb)};Dbq=FULLPATH;pwd=PASSWORD"这样写一定可以正确连接,而且非常容易记,其它的细节实际上是系统自己完成的,完整的ConnectionString可以在连接成功后查看。“海军少校”的写法,因为指定了要使用JET引擎,编程过程中会有很多细节问题出现,除非是小程序,否则不应这样使用
      

  3.   

    发贴者的意思应该是装了SP5后用
    data控件还是不能连接access2000数据库,对吗?如果用ADO连接数据库,不管有没有SP5,只要保证有ADO 2.0 Libaray以上就可
    连接access97用jet.oledb.3.51;access2000用jet.oledb.4.0
      

  4.   

    jet 4.0 是什么? vb6.0中有,还是要下载?
    vb6.0中的ado是几点零,不是2.0以上就不行吗?
      

  5.   

    要连接ACCESS2000必须用ADO(控件用ADODC)连接。
    数据提供者:provider=Microsoft.Jet.OLEDB.4.0连接ACCESS2000和有没有安装Sp5没有关系。如果无法连接到数据库,请检查你的CONNECTIONSTRING 是否正确。(最简单的方法就是用控件ADODC连接到数据库,测试一下是否可以正确连接。再把连接字符串拷贝到程序中。