Foxtable(狐表)用户栏目专家坐堂 → 请教一个存储过程返回值的问题


  共有2682人关注过本帖树形打印复制链接

主题:请教一个存储过程返回值的问题

帅哥哟,离线,有人找我吗?
gskydragon
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:14 积分:151 威望:0 精华:0 注册:2016/7/31 20:46:00
请教一个存储过程返回值的问题  发帖心情 Post By:2016/8/4 19:56:00 [只看该作者]

您好!我有一个存储过程。带一个参数number_bom,用RETURN 返回值。0代表不成,1代表成功。

Cnn.Open()

Dim adoCmd As New System.Data.SqlClient.SqlCommand("select_bom", Cnn)
'Dim adoCmd As New Data.OleDB.OleDbCommand("Select_bom", Cnn)
adoCmd.CommandType = System.Data.CommandType.StoredProcedure

adoCmd.Parameters.Add("@number_bom", System.Data.SqlDbType.NVarChar,255)

adoCmd.Parameters("@number_bom").Value ="1232-2-1"

adoCmd.Parameters.Add("@result", System.Data.SqlDbType.Int)
adoCmd.Parameters("@result").Direction = System.Data.ParameterDirection.Output
adoCmd.ExecuteNonQuery()
output.show(adoCmd.Parameters("@result").Value.ToString())

 

执行后,总是提示。为存储过程提定了过多的参数。请问return 返回的值,要怎么取。



 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/8/5 1:59:00 [只看该作者]

 

[此贴子已经被作者于2016/8/5 11:06:54编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
gskydragon
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:14 积分:151 威望:0 精华:0 注册:2016/7/31 20:46:00
  发帖心情 Post By:2016/8/5 10:28:00 [只看该作者]

谢谢,你那么晚,还在为我解答问题。能否写具体点。我用这个
dim r = adoCmd.ExecuteScalar
替代
dim r = adoCmd.ExecuteScalar

,还是提示.为过程或函数 select_bom1 指定了过多的参数。,主要的问题是,我怎么能得到存储过程 RETURN的返回值。这个在存储过程中,没指定变量参数。是不是系统有默认的。foxtable可以获取。

 


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/8/5 11:09:00 [只看该作者]

Cnn.Open()

Dim adoCmd As New System.Data.SqlClient.SqlCommand("select_bom", Cnn)
'Dim adoCmd As New Data.OleDB.OleDbCommand("Select_bom", Cnn)
adoCmd.CommandType = System.Data.CommandType.StoredProcedure

adoCmd.Parameters.Add("@number_bom", System.Data.SqlDbType.NVarChar,255)

adoCmd.Parameters("@number_bom").Value ="1232-2-1"

adoCmd.Parameters.Add("@result", System.Data.SqlDbType.Int)

adoCmd.Parameters.Add("@ReturnValue", System.Data.SqlDbType.Int).Direction = System.Data.ParameterDirection.ReturnValue
adoCmd.Parameters("@result").Direction = System.Data.ParameterDirection.Output
adoCmd.ExecuteNonQuery()

output.show(adoCmd.Parameters("@ReturnValue").Value.ToString())
output.show(adoCmd.Parameters("@result").Value.ToString())


 回到顶部
帅哥哟,离线,有人找我吗?
gskydragon
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:14 积分:151 威望:0 精华:0 注册:2016/7/31 20:46:00
  发帖心情 Post By:2016/8/7 14:51:00 [只看该作者]

大红袍,谢谢你的帮助,解决了。


 回到顶部