关于一个ASP循环查询问题

来源:百度知道 编辑:UC知道 时间:2024/06/07 23:15:38
Set rst = Server.CreateObject("ADODB.RecordSet")
sqlt="select * from wtsp order by id desc"
rst.Open sqlt,conn,3,3
do while not rst.eof

sql="select * from mainall where shangpinmingcheng='"&rst("shangpinmingcheng")&"' order by id desc"
Set rs = Server.CreateObject("ADODB.RecordSet")
rs.Open sql,conn,3,3
rst.movenext
loop
rst.close
set rst=nothing

以上代码只能查询 wtsp 表的第一条记录
请问怎么修改才是完美的呢?

后面那句声明游标放错位置了
因为同一个游标在没有释放的时候不能重新声明
应该这样写
Set rst = Server.CreateObject("ADODB.RecordSet")
sqlt="select * from wtsp order by id desc"
rst.Open sqlt,conn,3,3

Set rs = Server.CreateObject("ADODB.RecordSet") '声明游标
do while not rst.eof
sql="select * from mainall where shangpinmingcheng='"&rst("shangpinmingcheng")&"' order by id desc"
rs.Open sql,conn,3,3 '打开游标
'你需要的操作
Rs.Close'关闭游标
rst.movenext
loop
Set Rs=Nothing'释放游标
rst.close
set rst=nothing

do while not rst.eof
改成
do while rst.eof