各位高手:           今天突然遇到这种情况
                     if  条件1 and 条件2  then 
                     endif           第一个条件为假时,条件2应该不执行呀!
                   set rs=cn.excute("select * from table")
                   if rs.recordcount=1 and rs.fields(0)>数 then       '出错语句
                   endif           怎么当rs.RecordCount=0 时  就会有语句错误?请高手解答!!

解决方案 »

  1.   

    //第一个条件为假时,条件2应该不执行呀!vb不做短路判断。。即使条件1为假。还是会做条件2 的。。
    vb.net 就不是这样了。
      

  2.   

    在VB中只能用两个IF了
    ===========
    ??VB中好象可以嵌套32层IF,
    关于楼主的问题建议去看《VB编程标准》
      

  3.   

    当rs.RecordCount=0 时,数据库中没有记录,rs.fields(0)就不存在了,就不能比较。
    可以这样:
    set rs=cn.excute("select * from table")
                       if rs.recordcount=1 then
                            if rs.fields(0)>数 then
                            
                            end if    
                       else                   endif