帮MM用VB6做毕业设计,发现实在是晕啊
本人没学过VB6,直接学的VB.NET,原来以为两者差不太多的,所以慨然应允,没想到,555我的系统原本就是为了VB.net准备的Winxp 标准版
分区是NTFS
Office 2002
同时装有MDAC2.8,2.7,2.1等等
运行VB.net,做数据库也毫无问题可是一运行VB6的数据库绑定就会出错
还要说明的是我从mdac2.1引用到2.8都没用,也打了SP5信息如下
实时错误'713'
类没有注册
查找具有CLSID的对象
我的代码如下(这代码是教材上的,应该不会错的吧)Option ExplicitPrivate cnnBook As New ADODB.Connection
Private cmmboolitems As New ADODB.Connection
Private rsbook As New ADODB.Recordset
Private Sub Form_Load()
cnnBook.Provider = "Microsoft.Jet.OLEDB.3.51"
cnnBook.ConnectionString = "User ID=admin;Data Source=c:\StudentList.mdb"
cnnBook.Open
rsbook.LockType = adLockOptimistic
rsbook.CursorType = adOpenKeyset
Set rsbook.ActiveConnection = cnnBook
rsbook.Open "select * from student"Set Text1.DataSource = rsbook'就是这句出错End Sub

解决方案 »

  1.   

    代码应该没错啊,有没有引用ADO?
    在Set Text1.DataSource = rsbook之前加一句调试语句看看有没有问题,如加一句rsbook.recordcount 看看有几条记录
      

  2.   

    "Microsoft.Jet.OLEDB.3.51"
    该为
    "Microsoft.Jet.OLEDB.4.0"
    看看
    我建议你 text1.text=rs.filds(字段)
      

  3.   

    介绍你一个生成连接字符串的 方法在控件中引用adodc,利用它生成连接字符串Provider=Microsoft.Jet.OLEDB.4.0;Password=123;Data Source=C:\Documents and Settings\Administrator\My Documents\db1.mdb;Persist Security Info=True你用vb.net还使用ado,郁闷怎么不使用ado.net!!!!
      

  4.   

    晕,我题目都每看清楚应该是你的vb或者access装的有问题,重新装一下!!嘿嘿!
      

  5.   

    要先引用ado控件到表单。VB.net也是这样的吧。
      

  6.   

    如果实在没头绪, 重装系统, 再装VB6 , 打SP5  现在都出SP6了
      

  7.   

    谢了,各位我用rsbook.recordcount可以得到正确的返回结果
    用text1.text=rs.fileds(字段)文本框中也能显示出第一条记录
    可是我不能用addnew添加记录,只会添加一些空行,这是为什么?
    用text1.text=rs.fileds(字段)和Set Text1.DataSource = rsbook有区别吗?
      

  8.   

    我发现象DataGrid这样的就能正确显示,而text和Label就不行
      

  9.   

    有区别 text.text=rs.fileds(字段) 这是绑定到某个字段 text只能绑定到字段。
    而Set Text1.DataSource = rsbook 是绑定到集合(表)
    你还是用mshflexgrid 控件吧
    set mshflexgrid.datasource=rsbook 就可以显示整张表。
      

  10.   

    datagrid很多时候不能正确显示的
    比如有时候设置了某列不可见,然后datagrid就真的什么都见不到了
    不知道是不是它的bug
    即使后来你把那列再改回可见也没用
      

  11.   

    这里的人气比VB.net高多了:)),这恐怕就能为什么只学VB的理由吧:)