1

dissumbioというストアドプロシージャがあり、これは何らかの値を返します

今、私は自分のasp.netプログラムでこれを呼び出したいと思っています。戻り値はテキストボックスに表示されます

私のコードは次のとおりです

Dim admdate As String

admdate = Mid(txtadmdate.Text, 4, 2) + "/" + Left(txtadmdate.Text, 2) + "/20" + Right(txtadmdate.Text, 2)

Dim cmd As New SqlCommand
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@strId", txthospno.Text)
cmd.Parameters.AddWithValue("@strfromdate", admdate)

cmd.Connection = sqlConn2
cmd.CommandType = CommandType.Text
cmd.ExecuteNonQuery()

これはarjentです。助けてください

前もって感謝します

シュバ

4

2 に答える 2

1

ExecuteNonQuery は、影響を受ける行数のみを再実行します...したがって、ストアドプロシージャが値を返す場合は、`を使用する必要があります

Dim cmd As New SqlCommand
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@strId", txthospno.Text)
cmd.Parameters.AddWithValue("@strfromdate", admdate)

cmd.Connection = sqlConn2
sqlConn2.Open()
value= Convert.ToInt32(cmd.ExecuteScalar())

`

于 2012-10-26T10:00:02.870 に答える
0

データを取得する必要がある場合は、代わりにExecuteReaderを使用する必要がありますExecuteNonQuery

行を返すストアド プロシージャの実行に関するこの記事をご覧ください 。

Dim sqlConnection1 As New SqlConnection("Your Connection String")
Dim cmd As New SqlCommand
Dim reader As SqlDataReader

cmd.CommandText = "StoredProcedureName"
cmd.CommandType = CommandType.StoredProcedure
cmd.Connection = sqlConnection1

sqlConnection1.Open()

reader = cmd.ExecuteReader()
' Data is accessible through the DataReader object here.

sqlConnection1.Close()
于 2012-10-26T09:59:30.560 に答える