求救!!!!!ASP怎么这样不好搞

asphp 2004-09-15 10:16:03
做了一段时间的java,又做会了asp,欲哭不能
现有这样一个问题
ls_sql="declare @tmp table(id int identity,value varchar(50))" & _
"insert into @tmp(value) values('test') " & _
"select * from @tmp"

这样一个sql竟然执行过了以后,查不到结果,运行不报错,取数据时说己经关闭了记录集
sql语句在 查询分析器中执行没有问题,能出结果
救我!救我!!!!!!!!!!!!!!!!!!
...全文
70 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
asphp 2004-09-25
  • 打赏
  • 举报
回复
结果搞定了,在语句前后要加 set nocount off
set nocount on
asphp 2004-09-15
  • 打赏
  • 举报
回复
sub query_info
dim ls_sql,lr_rs,lr_rscontent,ls_comid,lc_cmd
ls_comid=checkstr(request("txt_comid"))
call init_table("查询结果")
'应该分品种月份排行
ls_sql="select distinct commodity_id as commodity_id from trd_tradeamt where commodity_id like '"&ls_comid&"%' and trade_date='"&checkstr(request("txt_date"))&"' order by commodity_id "
executesql lr_rs,ls_sql
'set lr_rscontent=server.createobject("adodb.recordset")
while not lr_rs.eof
ls_sql="declare @tmp1 table(id int identity,simple_name varchar(40),qty numeric(10))"&chr(13)& _
"declare @tmp2 table(id int identity,simple_name varchar(40),qty numeric(10))"&chr(13)& _
"declare @tmp3 table(id int identity,simple_name varchar(40),qty numeric(10))"&chr(13)& _
"declare @querydate datetime,@comid varchar(5) "&chr(13)& _
"set @querydate='"&checkstr(request("txt_date"))&"'" & chr(13) &_
"set @comid='"&lr_rs("commodity_id")&"'" & chr(13) &_
"insert into @tmp1(simple_name,qty)(select top 40 simple_name,sum(trade_val) from trd_tradeamt t,bas_firminfo b where b.firm_id=t.firm_id and commodity_id=@comid and trade_date=@querydate group by simple_name)"& chr(13)& _
"insert into @tmp2(simple_name,qty)(select top 40 simple_name,sum(hold_qty) from trd_tradeamt t,bas_firminfo b where b.firm_id=t.firm_id and bs_flag='B' and commodity_id=@comid and trade_date=@querydate group by simple_name)"& chr(13)& _
"insert into @tmp3(simple_name,qty)(select top 40 simple_name,sum(hold_qty) from trd_tradeamt t,bas_firminfo b where b.firm_id=t.firm_id and bs_flag='S' and commodity_id=@comid and trade_date=@querydate group by simple_name)"& chr(13)& _
"select tmp1.id,tmp1.simple_name s1,tmp1.qty q1,tmp2.simple_name s2,tmp2.qty q2,tmp3.simple_name s3,tmp3.qty q3 into #tmp from @tmp1 tmp1,@tmp2 tmp2,@tmp3 tmp3 where tmp1.id*=tmp3.id and tmp1.id*=tmp2.id "&chr(13)& _
"select * from #tmp"
set lc_cmd=server.createobject("adodb.command")
lc_cmd.commandtext=ls_sql
lc_cmd.activeconnection=conn
set lr_rscontent=lc_cmd.execute
response.write("<br><br>")
call init_datatableheader("CZCE交易所持仓量排名 "&request.form("txt_date")&" 合约号:"&lr_rs("commodity_id"))
set lr_rscontent=lr_rscontent.nextrecordset
call init_datatablecolumn("名 次|会员简称|成交量|会员简称|多方持仓|会员简称|空方持仓)")
call fill_data(lr_rscontent,"id,s1,q1,s2,q2,s3,q3")
call end_datatable
'lr_rscontent.close

lr_rs.movenext
wend
call end_table("")
end sub
阿泰 2004-09-15
  • 打赏
  • 举报
回复
>>取数据时说己经关闭了记录集

可能是你自己数据集操作的问题,你可以贴代码出来看看 :)

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧