日期:2010-7-13 浏览次数:20348次

 

  最近使用filter对象很多,也遇到了一些问题,我会在使用过程中进一步总结,然后将重要的记录下来。

一、避免空集错误

  空集错误一般在第一次filter赋值时没有匹配的情况下。例如:

do while not rr.eof
     rs.filter="user_id='" & rr("user_id") & "'"
        do while not rs.eof

                 '''''''''''''''''代码'''''''''''''''''
               rs.movenext
        loop
     rr.movenext
loop

假设rr第一条记录中  user_id='northsnow' ,第二条记录中的  user_id='塞北的雪'

如果rs记录集中没有  user_id='northnsow' 的记录,但是有  user_id='塞北的雪' 的记录。

但是我们发现根本没有输出  user_id='塞北的雪'  的相关信息。

原因就是产生了空值错误,为了避免这个错误的产生,需在每次使用完后执行这条语句:

rs.filter=""

例如:

do while not rr.eof
     rs.filter="user_id='" & rr("user_id") & "'"
        do while not rs.eof

                 '''''''''''''''''代码'''''''''''''''''
               rs.movenext
        loop

  rs.filter=""
     rr.movenext
loop