我从一个SQL Server表里面中取数,一共84条数据,但是取出来是81条。查询语句是select * from table1,没有加任何where限制条件,而且通过select count(*) from table1 的查询结果也是84条。我用于取数的循环如下:           
 Do Until rstRambo.EOF
   rstRambo.MoveNext
   aa = aa + 1
 Loop
请各位师傅帮帮忙吧,加班中...

解决方案 »

  1.   

    if not (rstRambo.BOF=true and rstRambo.EOF=true) then
    rstRambo.MoveFirst
    do
    if rstRambo.EOF=true then exit do
    aa = aa + 1
    rstRambo.MoveNext
    loop
    end if
      

  2.   

    aa=0
    while not rstrambo.eof
        aa=aa+1
    wend
      

  3.   

    Hassle() :我用你的代码运行了,只有78条数据。
    Lailuboy() :aa=0 我在程序中已经加了。怎么回事呢?15条的时候就没有问题,为什么到了84条取出来确是81条呢?
      

  4.   

    rstRambo.movefirst
    aa=0
    Do whilt not rstRambo.EOf
       aa = aa + 1
       rstRambo.MoveNext   
    Loop
      

  5.   

    select 主键 from 表
    ====================
    用自带工具导出到Access和Excel对比
    ====================
    换ADODB版本(2.5)
      

  6.   

    msgbox rstRambo.recordCount显示的也是84条阿?为什么循环只有81次呢?我看结果纪录最后三条没有查询出来。
      

  7.   

    谢谢各位大哥。
    我加了一行rstRambo.CursorLocation = adUseClient就可以了,可是为什么呢? 为什么记录少的时候可以全部查询出来而纪录多的时候不可以呢?
      

  8.   

    你是不是  sql server  表开在那里    经你折腾了几下后   没有刷新
      

  9.   

    原因是你的字段中有些可能不符合既定条件,例如当中有几条的内容全部是NULL.
    加一个主键吧。