如何将SQL中的存储过程的值(局部变量)取出了。

johnbbs 2003-07-22 10:49:26
我定义了一个存储过程中返回了信息,现在想在VS。net中获得显示出来。
...全文
46 7 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
pbfan 2003-07-23
  • 打赏
  • 举报
回复
create proc test @vary1 decimal output
as ....

然后再用cmd.parameters取到返回的值就可以啦。。。
chenhigh 2003-07-23
  • 打赏
  • 举报
回复
1.假设存储过程定义了@ret 来保存你想返回的值,然后return @ret
2.
string ret;//假设用ret来接受返回值
cnn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cnn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "你的存储过程名称";
cmd.Parameters.Add("@ret" , SqlDbType.VarChar , 50);
cmd.Parameters[0].Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
ret = cmd.Parameters[0].Value.ToString() ;
cnn.Close();
batisituta 2003-07-23
  • 打赏
  • 举报
回复
将参数定义为output类型
johnbbs 2003-07-22
  • 打赏
  • 举报
回复
是定义了局部变量的值,谢谢!
wtadminxjeri 2003-07-22
  • 打赏
  • 举报
回复
是return值吗?
可以
privateParameterObject = privateCommandObject.Parameters.Add("RETURN VALUE", SqlDbType.Int) 'Used as Retur Value
privateParameterObject.Direction = ParameterDirection.ReturnValue
ruyedian 2003-07-22
  • 打赏
  • 举报
回复
不知道你所需要的是不是下面这种:
如果你在存储过程中定义了 BookID 为返回值,则:
conn.Open()
comm.ExecuteNonQuery()
Dim BookID As Integer
BookID = comm.Parameters("@BookID").Value
conn.Close()
loulanlouzhu 2003-07-22
  • 打赏
  • 举报
回复
用参数接受!
相关推荐
发帖
.NET社区

6.1w+

社区成员

.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
帖子事件
创建了帖子
2003-07-22 10:49
社区公告

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

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