如何从调用存储过程后,返回的recordset中得到返回值?

hh2000 2001-07-24 04:28:33
我的存储过程返回字符串,在asp页面中调用后返回的是个recordset对象,怎么才能得到我想要的返回值呢?
...全文
196 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lul 2001-09-05
  • 打赏
  • 举报
回复
freezwy(网络自由人):还有一事不明,我不能得出>@intIDOut 和Return value 的值。如果我在存储过程中去掉SELECT *
FROM authors
WHERE au_lname LIKE @au_lname + '%' 就可以得到>@intIDOut 和Return value 的值。为什么???????
hh2000 2001-07-24
  • 打赏
  • 举报
回复
多谢大侠执教
freezwy 2001-07-24
  • 打赏
  • 举报
回复
对于return的值可以使用
Comm.Parameters("RETURN_VALUE").Value
下面给你一个很好的例子
-------------------------------------------
-- 建立存储过程
create procedure sp_PubsTest
-- 定义三个参数变量,注意第三个,特别标记是用于输出
@au_lname varchar (20),
@intID int,
@intIDOut int OUTPUT
AS
SELECT @intIDOut = @intID + 1
SELECT *
FROM authors
WHERE au_lname LIKE @au_lname + '%'
--直接返回一个值
RETURN @intID + 2
调用是这样的。
。。。。
CmdSP.Parameters.Append CmdSP.CreateParameter("RETURN_VALUE", adInteger, adParamReturnValue, 4)
'定义一个字符型输入参数
CmdSP.Parameters.Append CmdSP.CreateParameter("@au_lname", adVarChar, adParaminput, 20, "M")
'定义一个整型输入参数
CmdSP.Parameters.Append CmdSP.CreateParameter("@intID", adInteger, adParamInput, , iVal)
'定义一个整型输出参数
CmdSP.Parameters.Append CmdSP.CreateParameter("@intIDOut", adInteger, adParamOutput, oVal)
'运行存储过程,并得到返回记录集
Set adoRS = CmdSP.Execute

'把每个记录打印出来,其中的字段是虚拟的,可以不用管
While Not adoRS.EOF

for each adoField in adoRS.Fields
Response.Write adoField.Name & "=" & adoField.Value & "<br>" & vbCRLF
Next
Response.Write "<br>"
adoRS.MoveNext
Wend

'打印两个输出值:
Response.Write "<p>@intIDOut = “ & CmdSP.Parameters("@intIDOut").Value & "</p>"
Response.Write "<p>Return value = " & CmdSP.Parameters("RETURN_VALUE").Value & "</p>"
---------------------
自己看看,是不是很经典的一个例子
hh2000 2001-07-24
  • 打赏
  • 举报
回复
freezwy:
非常感谢您对哈哈的执教。
假如我在存储过程中用return返回值,例如:
if @@rowcount<>0
return -1
else
return 0
那么我用
set rs=comm.execute
中的rs能得到返回的是-1还是0吗?
多谢!!!!!!!!!
freezwy 2001-07-24
  • 打赏
  • 举报
回复
create procedure xx
@uname varchar(15),
@vtitle varchar(15) output
as
select @vtitle=vtitle from tablename where uname=@uname
go
调用后使用
vtitle=comm.parameters("@vtitle").value

28,409

社区成员

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

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