如何调用输出参数的存储过程
在数据库中调用
在数据库中调用
解决方案 »
- asp.net 二级域名配置
- asp.net网站,现在要做5国语言?是放在一个项目里复制5个国家语言的页面,用一个库建5种表哪, 还是再重新拉4个项目,建4sql数据库?
- URL重写和ajax.net同时使用产生的问题?
- lucene.net 分词 多关键字 高亮 索引
- 棘手问题!
- 急晕了, 关于Jmail的问题,用过的朋友请进!在线等!
- C#弹出小页面,我这样写的哪里不对
- 一个刷新按钮的问题~
- 为什么存储过程在查询分析器中运行不到1秒钟,而在页面运行却超时?
- DataGrid分页后“上一页”“下一页”重叠在一起,怎么办?
- 向用过UML高手们请教
- asp.net 中WebBrowser.ExecWB(7,1)疑问
看看对你有用没。
string sConnectionString =User ID=zdp;pwd=zdp;Initial Catalog=aaa;Data Source=(local);
SqlConnection conn=new SqlConnection(sConnectionString);
conn.Open();
SqlCommand cm=new SqlCommand(aaaa,conn);
cm.CommandType=CommandType.StoredProcedure;
cm.Parameters.Add(@id,SqlDbType.Int,4);
cm.Parameters.Add(@test,SqlDbType.Int,4);
cm.Parameters.Add(@ouid,SqlDbType.Int,4);
cm.Parameters[@id].Value=Convert.ToInt32(newid.Text.ToString());
cm.Parameters[@test].Direction=System.Data.ParameterDirection.ReturnValue;
cm.Parameters[@ouid].Direction=System.Data.ParameterDirection.Output;
cm.ExecuteNonQuery();
//OUTRET为存储过程中输出参数给变量outret赋予的值
string outret=cm.Parameters[@ouid].Value.ToString();
//returnvalue为存储过程给返回值变量returnvalue赋予的值
string returnvalue=cm.Parameters[@test].Value.ToString();
//mes,ret是两个LABEL的ID
mes.Text=outret.ToString();
ret.Text=returnvalue.ToString();//-----------------------------------存储过程CREATE PROCEDURE aaaa
@id INT,
@ouid int output
AS
SET NOCOUNT ON
begin
if exists(select * from yg where id=@id)
BEGIN
set @ouid=@id
return 0
END
set @ouid=@id
RETURN 1
end
GO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
create procedure sp_output
@out int=1 output
as
set @out=22
SqlConnection conn=new SqlConnection(@"server=blackant\db;database=master;uid=sa;pwd=不告诉你");
SqlCommand comm=new SqlCommand("sp_output",conn);
comm.CommandType=CommandType.StoredProcedure;
SqlParameter param=new SqlParameter("@out",SqlDbType.Int);param.Direction=ParameterDirection.Output;
comm.Parameters.Add(param);
conn.Open();comm.ExecuteNonQuery();
conn.Close();
Console.WriteLine("Value:{0}",param.Value);
在sql 中怎么调用..
还是 PL/SQL中的一个存储想要调用 另一个有输出参数的存储过程
exec functionName 参数
exec xxxx 20,1,'0','', total
total 哪个接受的是输出参数
上面的 哪个是错误的 该怎么改?
我说的是在sql中的调用 跟程序没一点关系
declare total int
exec xxxx 20,1,'0','', total output
'int' 不是可以识别的 CURSOR 选项。
消息 179,级别 15,状态 1,第 2 行
向存储过程传递常量时不能使用 OUTPUT 选项。
declare total int
exec SqlDataPaging 'Module','*','ModuleID',20,1,'0','', total output
消息 155,级别 15,状态 2,第 1 行
'int' 不是可以识别的 CURSOR 选项。
消息 179,级别 15,状态 1,第 2 行
向存储过程传递常量时不能使用 OUTPUT 选项。
exec xxxx 20,1,'0','', total
select total
as
--...........declare @i int
exec pro @i output
select @i
消息 155,级别 15,状态 2,第 1 行
'int' 不是可以识别的 CURSOR 选项。
还是有这个错误 到底是什么错啊