日期:2014-05-16  浏览次数:20870 次

求助:关于ASP执行带参数存储过程并返回记录集的问题。

CREATE PROCEDURE pCqtjHzRy --存储过程名
--变量定义
@sql1 varchar(8000),
@subt varchar(8000),
@c_cqrq1 varchar(8),
@c_cqrq2 varchar(8)

AS
BEGIN
--变量赋值
set @sql1 = 'select c_name '
set @subt =' (select * from cqtj_data where ( c_cqrq between '+@c_cqrq1+' and '+@c_cqrq2+' )) '

--SQL语句
select @sql1 = @sql1 + ' , sum(case c_cqlb when ''' + c_cqlb + ''' then c_cqsl else 0 end) [' + c_cqlb + ']'
from (select distinct c_cqlb from cqtj_data) as a
set @sql1 = @sql1 + ' from '+@subt +' t'+' group by c_name ' 

END
GO



上面是存储过程,请问,我要在ASP代码中,想获取这个存储过程返回的一个表格。改如何调用这个存储过程?并且我要将记录集fill 到一个table中。也就是想在页面上以表格的形式显示出来。

跪求高手帮忙。我真的晕了。
------解决方案--------------------
’**通过Command对象调用存储过程** 
DIM MyComm,MyRst 
Set MyComm = Server.CreateObject("ADODB.Command") 
MyComm.ActiveConnection = MyConStr ’MyConStr是数据库连接字串 
MyComm.CommandText = "getUserList" ’指定存储过程名 
MyComm.CommandType = 4 ’表明这是一个存储过程 
MyComm.Prepared = true ’要求将SQL命令先行编译 
Set MyRst = MyComm.Execute 
Set MyComm = Nothing