以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  存储过程输出参数问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=79121)

--  作者:jialihaha
--  发布时间:2015/12/24 16:00:00
--  存储过程输出参数问题
存储过程有个输出参数,想得到这个参数值,代码如何写?
--  作者:大红袍
--  发布时间:2015/12/24 16:21:00
--  

直接在表里面取值

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=42263&skin=0

 


--  作者:jialihaha
--  发布时间:2015/12/24 16:33:00
--  
你可否写个例子
--  作者:大红袍
--  发布时间:2015/12/24 16:33:00
--  

如果,要直接获取,你就要改sqlcommand了。

 

Dim Cnn As New System.Data.SqlClient.SqlConnection("连接字符串")

Cnn.Open()

Dim adoCmd As New System.Data.SqlClient.SqlCommand("存储过程", Cnn)

adoCmd.CommandType = System.Data.CommandType.StoredProcedure

adoCmd.Parameters.Add("@参数1", System.Data.SqlDbType.NVarChar, 20)

adoCmd.Parameters("@参数1").Value = "Frances"

adoCmd.Parameters.Add("@参数2", System.Data.SqlDbType.Int)
adoCmd.Parameters("@参数2").Direction = System.Data.ParameterDirection.Output
adoCmd.ExecuteNonQuery()

output.show(adoCmd.Parameters("@参数2").Value.ToString())


--  作者:jialihaha
--  发布时间:2015/12/24 16:47:00
--  
你说的用表,怎么用?给个例子看看
--  作者:jialihaha
--  发布时间:2015/12/24 16:52:00
--  
我刚刚试了你这个改sqlcommand的,报错了
--  作者:大红袍
--  发布时间:2015/12/24 17:06:00
--  
以下是引用jialihaha在2015/12/24 16:52:00的发言:
我刚刚试了你这个改sqlcommand的,报错了

 

报什么错?连接字符串、名字、参数名都要写正确。


--  作者:大红袍
--  发布时间:2015/12/24 17:07:00
--  
以下是引用jialihaha在2015/12/24 16:47:00的发言:
你说的用表,怎么用?给个例子看看

 

意思是,叫你直接返回一个表,不要用参数的方式。


--  作者:jialihaha
--  发布时间:2015/12/24 17:08:00
--  
我返回的只是存储执行成功与否
[此贴子已经被作者于2015/12/24 17:08:38编辑过]

--  作者:jialihaha
--  发布时间:2015/12/24 17:13:00
--  
错误截图

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20151224170124.jpg
图片点击可在新窗口打开查看

代码如下:
Dim Cnn As New System.Data.SqlClient.SqlConnection("财务")
Cnn.Open()
Dim adoCmd As New System.Data.SqlClient.SqlCommand("dbo.Pl_YingFuHuoKuan", Cnn)
adoCmd.CommandType = System.Data.CommandType.StoredProcedure
adoCmd.Parameters.Add("@HuoGuiID", System.Data.SqlDbType.Int)
adoCmd.Parameters("@HuoGuiID").Value = 58
adoCmd.Parameters.Add("@result", System.Data.SqlDbType.NVarChar, 20)
adoCmd.Parameters("@result").Direction = System.Data.ParameterDirection.Output
adoCmd.ExecuteNonQuery()
output.show(adoCmd.Parameters("@result").Value.ToString())