高手请进:存储过程参数传递问题!已经很久没有解决了......

flashygw 2004-04-12 06:08:07
我在sql中定义了一个存储过程,带有两个输入参数,一个输出参数。在asp.net中执行以后,我想把输出参数的值传递出来。请问:应该怎样把输出参数的值传递给c#里面的一个变量?其中,输出参数是自定义的一个变量,他的值随存储过程执行的不同条件而改变,他的取值不是数据表中的值。
注:存储过程定义如下:
create procedure admin_cursor
@number varchar(50),@name varchar(50),@tt char(5) output
as
--使用游标遍历表,查询满足条件的记录
set @tt='wrong'
declare admin_cursor cursor
for select IID,CODE from admin
declare @number1 char(50),@name1 char(50)
open admin_cursor
fetch next from admin_cursor into @number1, @name1
while @@fetch_status=0
begin
if @number1=@number and @name1=@name
begin
print '合法'
print @number1+@name1
set @tt='right'
break
end
fetch next from admin_cursor into @number1,@name1
end


close admin_cursor
deallocate admin_cursor
...全文
39 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
vme 2004-04-13
  • 打赏
  • 举报
回复
一端提取返回值的代码

myCmd=new SqlCommand(spname,Connection)
myCmd.CommandType=CommandType.StoredProcedure;
myParam=myCmd.Parameters.Add("@Param1",SqlDbType.Int);
myParam.Value=temp1;
myParam=myCmd.Parameters.Add("RETURN_VALUE",SqlDbType.Int);
myParam.Direction=ParameterDirection.ReturnValue;
myCmd.ExecuteNonQuery();
TotalCount=(int)myCmd.Parameters["RETURN_VALUE"].Value;
flashygw 2004-04-12
  • 打赏
  • 举报
回复
楼上的兄弟先生,好像还是不行啊。
运行时提示出错:“System.Data.SqlClient.SqlParameter”表示“类”,此处应为“变量”
这到底是怎么回事啊,急死了!
erist 2004-04-12
  • 打赏
  • 举报
回复
SqlParameter["@tt"] 在写的时候需要提明方法向OutPut

SqlParameter["@tt"].Direction=Direction.OutPut
Mybeautiful 2004-04-12
  • 打赏
  • 举报
回复
今天才知道原来存储过程可以有输出参数的。
谢谢楼主,也谢谢楼上的兄弟
Seeko0 2004-04-12
  • 打赏
  • 举报
回复
...
comm.ExecuteNoQuery();//先执行了数据库操作;
string outvalue=SqlParameter["@tt"].value; //然后取output参数值

62,072

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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