ストアド プロシージャで出力変数を使用して、データベースから VB.NET に値を渡します。
Public Sub VALUEONE()
Dim conn As New SqlConnection("Data Source=XXX\SQLEXPRESS;Initial Catalog=DB;Integrated Security=TRUE")
Dim cmd As SqlCommand = New SqlCommand("dbo.test", conn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add("@test", SqlDbType.Decimal)
cmd.Parameters("@test").Direction = ParameterDirection.Output
conn.Open()
cmd.ExecuteNonQuery()
lbl.Text = cmd.Parameters("@test").Value.ToString
conn.Close()
End Sub
ここで、lbl.Text に "800" があり、別のストアド プロシージャ (dbo.test2) にまったく同じコードがあり、lbl.text2 値 "120" に outputparameter @test2 があるとします。「800」と「120」を合計して lbltest3 で視覚化したいのですが、その方法がわかりません。私はすでに次のようなことを試しました:
dim a as decimal
dim b as decimal
a = cmd.Parameters("@test").Value
b = cmd.Parameters("@test2").Value
lbl3 = (a+b).tostring
それはうまくいきません。