首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

存储过程为什么不能返回记录集?该怎么解决

2012-03-09 
存储过程为什么不能返回记录集???sql execpageget_zhaoshang , id , id,company,names,bigkind,kind,url

存储过程为什么不能返回记录集???
sql= "   exec   page   'get_zhaoshang ', 'id ', 'id,company,names,bigkind,kind,url,times,dcount ',20, "&page& ", '1=1 "&SearchChar& " ', ' ', 'id   desc ' "

set   objrs=objconn.execute(sql)

do   while   not   objrs.eof   and   i <10
response.Write   objrs( "names ")& " <br> "
objrs.movenext
i=i+1
loop
response.End()
这样打印不出结果。
但是把sql打印后得到有真实参数的存储过程,放到查询分析器中可以查询出结果


[解决办法]
paoluo的马甲?

[解决办法]
暈,怎麼是我的馬甲。

應該是你代碼的問題吧,建議去你相應的編程語言區去問。
[解决办法]
如果存储过程没问题,那应该就是你ASP代码的问题.
可俺不会ASP. 帮顶:(
[解决办法]
ASP調用存儲過程的方法和查詢普通的SQL語句的方法,會不會有些區別,才會出現你這樣的情況?

你隨便測試一個別的存儲過程看看。

Create ProceDure SP_TEST
AS
Select 1 As ID
Union All
Select 2
GO

你在數據庫中建立一個這麼簡單的存儲過程

然後在ASP中運行這段代碼

sql= "EXEC SP_TEST "

set objrs=objconn.execute(sql)

do while not objrs.eof and i <10
response.Write objrs( "ID ")& " <br/> "
objrs.movenext
i=i+1
loop
response.End()


看看有沒有問題,如果還有問題,說明還是ASP語句的問題。
[解决办法]
这个写法不能返回纪录集的???
objrs 是recordset 8
要不
还是老实的写command
加 parameter
然后type AdCmdStoredProc
名称
然后填充

以前都这么写
[解决办法]
sql= " exec page 'get_zhaoshang ', 'id ', 'id,company,names,bigkind,kind,url,times,dcount ',20, "&page& ", '1=1 "&SearchChar& " ', ' ', 'id desc ' "

set objrs=objconn.execute(sql)

你在這句代碼設置斷點,運行這裡時,將sql中的內容復制到查詢分析器中執行,可以得到正確的結果嗎?
[解决办法]
------------------------
do while not objrs.eof and i <10
response.Write objrs( "names ")& " <br/> "
objrs.movenext
i=i+1
loop
response.End()

I的值有没有 <10 ? 先objrs.movefirst 试试看

热点排行