try:
加上一句:rs.cursorlocation=3rs.Open strsql, conn, 3, 3

解决方案 »

  1.   

    rs.CursorLocation = adUseClient
    rs.CursorType = adOpenDynamic
    rs.LockType = adLockOptimistic

    rs.movelast
    rs.movefirst*****************************************************
               http://www.codeclub.net/bbs/
      

  2.   

    rs.CursorLocation = 3
    rs.CursorType = 3
    rs.LockType = 3

    rs.movelast
    rs.movefirst*****************************************************
               http://www.codeclub.net/bbs/
      

  3.   

    楼主你要指定游标的类型为客户端类型就可以搞定
    rs.CursorLocation = adUseClient'指定客户端类型游标
    rs.CursorType = adOpenDynamic
    rs.LockType = adLockOptimistic
      

  4.   

    楼上几位的方法我都试过了。不行,连记录都读出来。本来想对记录集做个循环,用记录的累加来获得记录数,结果连记录都读不出来,但是连接正常。reocrdcount不能用,一用就报错!   代码绝对无误,SQL语句也在ORACLE的ODBC TEST 里测试过啊。怎么会连记录都读不出来?大家帮忙分析分析!
       我的机器: windows 2000 vb6 oracle8 cilent
    数据库服务器 ORACLE8.15
      

  5.   

    问题终于解决了!其实楼上几位说的都对,但是其实还有一点很关键但大家都没强调,就是建立ODBC数据源的时候一定要 选择“Microsoft ODBC For oracle "驱动程序,否则无论怎么设置游标类型,得到的RECORDCOUNT 总是-1!我建立ODBC数据源的时候就是选了 ORACLE ODBC FOR microsof才一直这样的,后来一换马上就好了!