数据集set rs=conn.execute(sql)条件判断异常

数据集set rs=conn.execute(sql)条件判断错误
set rs=conn.execute(sql)
if not (rs.bof or rs.eof) then
  conn.execute("update huiyuan set jifen=jifen+"&int(totalprice/50)*2&"-"&nowdel&" where id="&nowhuiyuan)
  else
  conn.execute("update huiyuan set jifen=jifen+"&int(totalprice/50)*2&"-"&nowdel&" where id="&nowhuiyuan)
  end if
这段代码上面定义了SQL查询语句,将查询到的数据集保存在RS中进行条件判断,如果数据集不为空则执行第一个UPDATE,反之执行第二个。但是总是出错,直至把IF条件判断去掉,只留一个UPDATE就不出错了,求大侠指教!!!不胜感激!
------解决思路----------------------
set rs=conn.execute(sql)你的这个和sql是什么,不会是select count吧。。这样永远执行if分支,不会执行else分支,
------解决思路----------------------
1 判断有没有记录应该这样写 if not (rs.bof And rs.eof) then
2 既然直接用了update ,那就都直接用sql语句去做更有效点  if not exists ( select ....)  update ...