日期:2014-05-17  浏览次数:20853 次

依然是取字段中不存在的项的问题,请高手帮忙
表A
===============================   数字7在最后
ID                 Aid
1                     1
2                     2
3                     3
4                     6
5                     7
...                 ...
===============================
可见,字段AID中   4,5   不存在
for   i   =   1   to   7
if   i=rs( "Aid ")   then
response.write(i& "有 ")& " <br   /> "
rs.movenext
else
response.write(i& "无 ")& " <br   /> "
end   if
next
可正确得到   4和5没有出现

但是如果表中结构改变:最大的数不是排在最后
===============================   数字7不在最后
ID                 Aid
1                     1
2                     2
3                     3
4                     7
5                     6
...                 ...
===============================
则用上面的方法得不出正确结果,请高人帮忙




------解决方案--------------------
这是当然的,你的外层循环是有序的,记录集的内容无序。
应该是
while(not rs.EOF)
for i = 1 to 7
if i=rs( "Aid ") then
response.write(i& "有 ")& " <br /> "
else
response.write(i& "无 ")& " <br /> "
end if
next
rs.MoveNext
wend
------解决方案--------------------
现在仔细看了一下, woolhoo 同学的程序可以改进:
Dim flag


while not rs.eof

flag=0

for i = 1 to 7
if i=rs( "Aid ") then
flag=1
end if
next

if flag=1 then
response.write rs( "Aid ")& "有 "& " <br> "
else
response.write rs( "Aid ")& "无 "& " <br> "
end if

rs.MoveNext
wend