Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
VB.NETでのストアドプロシージャの戻り値取得について。
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=284#CommentId1940
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
まる
 (社会人)
投稿日時
2009/2/5 20:40:00
すみません。また投稿させていただきました。
今VB.NET(ver.2005)でADO.NETをやっています。
全然やったことがなかったのでほとんどわかりません・・・。
今自分が悩んでいるところは「ストアドプロシージャからの戻り値の取得」です。
一応プログラムを作成してみたのはいいものの、ストアドプロシージャの結果とVBの渡された値に違いがあって意味がわかりません・・・。
わかる方がいましたら、ご教授お願いいたします。
今の状態ですと、レコード数が「32」あるのに、VB.NETだと「6」と表示されます・・・。
ストアドプロシージャ
----------------------------------------------
ALTER PROCEDURE dbo.SpMsTokuisakiCount
/*
(
@count int output
)
*/
AS
SET NOCOUNT ON
declare @count int
select count (*) from MSTokuisaki
RETURN @count
---------------------------------------------
VB.NET
---------------------------------------------
Public Function test() As Decimal
Dim cn As SqlClient.SqlConnection
Dim max As New SqlClient.SqlParameter
'SQLに対してコマンドを入れるための変数
Dim command As New SqlClient.SqlCommand
'コネクションの指定
command.Connection = cn
'コマンドの種類をストアドプロシージャに
command.CommandType = CommandType.StoredProcedure
'実行するストアドプロシージャの名前を指定
command.CommandText = "SpMsTokuisakiCount"
command.Parameters.Clear()
command.Parameters.Add("RETURN_VALUE", SqlDbType.Decimal)
max.Direction = ParameterDirection.ReturnValue
Return max.Direction
End Function
---------------------------------------------