关于ASP和SQL的循环

我想实现下面的循环,应该可以输出一组值,但现在只能返回一个值.请各位大虾帮忙改一下,让它能返回一组值(注:SQL读库的这一段没有问题,我认为问题是出在循环上)dimwen... 我想实现下面的循环,应该可以输出一组值,但现在只能返回一个值.请各位大虾帮忙改一下,让它能返回一组值
(注:SQL读库的这一段没有问题,我认为问题是出在循环上)
dim wendu_02(999)
n=0
do while n<999
%>
<%
set table05=server.CreateObject("adodb.connection")
table05.open "dsn=zdz;UID=ybywb;PWD=zyt029;Database=elementinfo;"
set rs05=table05.execute("select * from tabTimeData where ObservTimes like '%0202' and StationNum='57036'")
while not rs05.eof
%>
<%
wendu_02(n)=rs05("DryBulTemp")
rs05.movenext
wend
%>
<%
n=n+1
loop
现在不是返回一个值,而是返回一组相同的值,给我的感觉是把同一个值返回了很多次.按说应该返回一组不相同的值
展开
 我来答
偶有疑问
2006-06-14 · TA获得超过107个赞
知道小有建树答主
回答量:335
采纳率:0%
帮助的人:402万
展开全部
while not rs05.eof
%>
<%
wendu_02(n)=rs05("DryBulTemp")
rs05.movenext

循环这个的时候 N的值没有发生变化 所以wendu_02(n)的值为该次循环最后一个rs05("DryBulTemp")的值

而且 当你N发生变化后 SQL语句并没有变化,所以返回的结果都是
select * from tabTimeData where ObservTimes like '%0202' and StationNum='57036'
这条SQL语句查询结果的最后一条记录

所以所有值都一样

改成这样试试
dim wendu_02(999)
n=0
set table05=server.CreateObject("adodb.connection")
table05.open "dsn=zdz;UID=ybywb;PWD=zyt029;Database=elementinfo;"
set rs05=table05.execute("select * from tabTimeData where ObservTimes like '%0202' and StationNum='57036'")
while (not rs05.eof) and (n<999)
%>
<%
wendu_02(n)=rs05("DryBulTemp")
n=n+1
rs05.movenext
wend
abingpow
2006-06-14 · TA获得超过2206个赞
知道大有可为答主
回答量:2830
采纳率:0%
帮助的人:2272万
展开全部
把创建连接的语句放到循环外面(外循环的外面)
改成用rs.open来运行SQL语句

补充:这是当然了,每次外层的n值被修改后,你都是一次性把整个数据集装到同一个下标里面,当然只会显示最后一个。就是说比如外层循环到n=3时,内层循环就把表的所有数据猪个存放到wendu_02(3)里了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式