存储过程为什么不能返回记录集???
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 试试看