怎样在VB客户端调用带输出参数的存储过程?存储过程已经写在了SQL服务器中

谢谢高手!... 谢谢高手! 展开
 我来答
ireray5
2011-10-29 · TA获得超过396个赞
知道小有建树答主
回答量:557
采纳率:0%
帮助的人:358万
展开全部
这是我工作中写过的代码,贴出来分享。
是VB.NET2008,不知可用否。
VB6的就没有现成的,不过将这些代码稍改一下,就可用。

'执行储存过程procCheckStock,来校验盘点数据的正确性。
Dim cmd As SqlClient.SqlCommand
Dim Errcode As Integer
Dim ErrMsg As String

cmd = New SqlClient.SqlCommand("procCheckStock", dsisComFun.GetDBConnction)
cmd.CommandType = CommandType.StoredProcedure

cmd.Parameters.Add(New SqlClient.SqlParameter("@plantno", SqlDbType.VarChar, 7))
cmd.Parameters("@plantno").Value = invPlant

cmd.Parameters.Add(New SqlClient.SqlParameter("@host", SqlDbType.VarChar, 255))
cmd.Parameters("@host").Value = My.Computer.Name

cmd.Parameters.Add(New SqlClient.SqlParameter("@ip", SqlDbType.VarChar, 255))
cmd.Parameters("@ip").Value = dsisComFun.HostIPAddress

cmd.Parameters.Add(New SqlClient.SqlParameter("@userid", SqlDbType.VarChar, 7))
cmd.Parameters("@userid").Value = dsisComFun.LoginUserID

cmd.Parameters.Add(New SqlClient.SqlParameter("@entdt", SqlDbType.VarChar, 20))
cmd.Parameters("@entdt").Value = dsisComFun.ServerDate.ToShortDateString

cmd.Parameters.Add(New SqlClient.SqlParameter("@option", SqlDbType.Int))
cmd.Parameters("@option").Value = 1 '1=校验盘点数据选项

cmd.Parameters.Add(New SqlClient.SqlParameter("@errmsg", SqlDbType.VarChar, 200))
cmd.Parameters("@errmsg").Direction = ParameterDirection.Output

cmd.Parameters.Add(New SqlClient.SqlParameter("@r", SqlDbType.Int))
cmd.Parameters("@r").Direction = ParameterDirection.ReturnValue

cmd.ExecuteNonQuery()

Errcode = cmd.Parameters("@r").Value '处理的错误代码
ErrMsg = cmd.Parameters("@errmsg").Value '处理的错误
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式