存储过程返回值asp
㈠ ASP取得存储过程记录集+返回值
把pp=MyComm.Parameters.Item("@pp").Value移到while语句前面呢?
㈡ asp调用存储过程返回值的问题
你这是sql数据库吧?我只会access的,看不太懂你的sql语句,不过我觉得应该是 set rec =conn.execute(sql) 而不是 rec =conn.execute(sql) 吧?
如果不对 ,别骂我啊 ,我也是想帮你 :-D
㈢ asp 如何返回存储过程中的某个变量值
你可以使用 ADODB.Command 来调用存储过程,如:
Dim adoComm
'// 创建一个对象,我们用来调用存储过程
Set adoComm = CreateObject("ADODB.Command")
With adoComm
'// 设置连接,设 adoConn 为已经连接的 ADODB.Connection 对象
.ActiveConnection = adoConn
'// 类型为存储过程,adCmdStoredProc = 4
.CommandType = 4
'// 存储过程名称
.CommandText = "你的存储过程名称"
'// 设置输入参数
.Parameters.Item("@输入参数").Value = "值"
'// 执行存储过程
.Execute
If .Parameters.Item("@返回参数名称").Value = True Then
Else
End If
End With
'// 释放对象
Set adoComm = Nothing
详细参考我原来写的文章
http://bbs.51js.com/viewthread.php?tid=51505&fpage=2
㈣ asp sql存储过程返回值
你返回的不是两个结果集,而是一个结果集,一个返回值。
set rs=MyComm.Execute
response.Write(MyComm(0))
打印出来的是返回值,rs中是结果集
㈤ asp中获取存储过程返回值
在CmdSP.Execute这个语句运行过之后,outnum里就会有值了,直接使用就可以
㈥ 求高手解决asp存储过程返回值
调用方法不对,你这样调用是没有返回值的。正确的作法是:
DIM MyComm : Set MyComm = Server.CreateObject("ADODB.Command")
with MyComm
.ActiveConnection = Conn
.CommandText = "addnews"
.CommandType = 4
.Prepared = true
.Parameters.append MyComm.CreateParameter("RETURN",2,4)
.Parameters.append MyComm.CreateParameter("@id",3,2,4,id)
.Parameters.append MyComm.CreateParameter("@oNEWS_Title",200,1,60,Otitle)
.Parameters.append MyComm.CreateParameter("),@oType",3,1,4,ONews_class)
.Parameters.append MyComm.CreateParameter("@oNEWS_Content",200,1,5000,Ocontent)
.Parameters.append MyComm.CreateParameter("@oHot",3,1,4,Ohot)
.Execute
end with
if MyComm(0)=1 then
A_ID=MyComm(1)
B_ID=MD5(A_ID)
sql="UPDATE WK_NEWS Set MD5_NEWS_ID='"&B_ID&"' WHERE News_id="&A_ID
conn.execute(Sql)'这一步其实也可以放到存储过程里面,或者用触发器更简单
end if
Set MyComm = Nothing
另外存储过程里面还要增加一个输出参数,修改如下:
CREATE PROCEDURE addnews
@id int output,
@oNEWS_Title char(60),
@oType int,
@oNEWS_Content ntext,
@oHot int
AS
insert WK_News (NEWS_Title,Type,NEWS_Date,NEWS_Content,Hot) values (@oNEWS_Title,@oType,getdate(),@oNEWS_Content,@oHot)
if @@error <> 0
begin
return -1
end
Select @id=@@identity
return 1
GO
㈦ asp 读取存储过程的返回值
select id from
id = rs(0) '在查询中的id值
如果是 select News,id from 或 select * from 的话,id不可能或不一定 = rs(0)
㈧ asp.net调用存储过程返回值问题
你的用法不对,存储过程的返回值不是用来返回数据的,存储过程只能返回int,而且这个int的目的是用来表示存储过程执行状态的,比如执行成功,执行错误等等。你这种情况要用output parameter,比较符合标准。
但其实这不是重点,重点是ExecuteScalar是返回结果集第一行第一列的值,不是return value,你搞错了。
㈨ asp.net 如何执行有返回值的存储过程 通用类
asp.net 执行有返回值的存储过程:
1、用ParameterDirection.ReturnValue; 返回值
ALTER PROCEDURE [dbo].[CountNumber]
AS
declare @num int
select @num=count(*) from news
return @num
GO
2、用ParameterDirection.Output; 参数返回值
ALTER PROCEDURE [dbo].[CountNumber]
@num int output
AS
select @num=count(*) from news
return @num
GO
3、调用处代码:
#region 计算出数据表的记录数
/// <summary>
/// 计算出数据表的记录数
/// </summary>
/// <returns>记录数</returns>
public string CountNumber()
{
cmd = new SqlCommand("CountNumber", GetConn());
cmd.CommandType = CommandType.StoredProcere;
SqlParameter i= new SqlParameter("@num", SqlDbType.Int);
//i.Direction = ParameterDirection.Output;
i.Direction = ParameterDirection.ReturnValue;
cmd.Parameters.Add(i);
cmd.ExecuteNonQuery();
//int strReturn = i.Value.ToString(); //返回值--方法1
string num = cmd.Parameters["@num"].Value.ToString();
//返回值--方法2
conn.Close();
return num;
}
#endregion
㈩ asp.net 获取存储过程返回值(急)
//增加输出参数,多了个Direction少了个Value
SqlParameter paramout = scd.CreateParameter();
paramout.ParameterName = "@flag";
paramout.DbType = DbType.Int32;
paramout.Size = 4;
paramout.Direction = ParameterDirection.Output;
参考:http://blog.csdn.net/greatverve/archive/2008/12/05/3442254.aspx