私のストアド プロシージャでは、最初に INSERT クエリを実行してから、次のように SELECT ステートメントを使用します。
INSERT ()
SELECT * FROM preferences WHERE ID=@ID
ADO.NET では、datareader を使用してこの手順を実行しました。
ただし、SELECT 値は返されず、INSERT ステートメントも実行されません。
ここで何が間違っているのか教えてもらえますか???
コード:
strSPROC = "sproc_SaveAndRetrieve"
Using cmd As New Data.SqlClient.SqlCommand
cmd.CommandText = strSPROC
cmd.CommandType = Data.CommandType.StoredProcedure
cmd.Parameters.Clear()
cmd.Parameters.AddWithValue("@tvp", CreateDatatableFromCollection(s, isValueOn))
cmd.Parameters.AddWithValue("@GroupID", syGroupID)
Using myReader As SqlDataReader = DBManager.GetDataReader(cmd)
If myReader.HasRows Then
NotFoundRecords= New List(Of String)
While myReader.Read()
NotFoundRecords.Add(DataHelper.GetString(myReader, "Student"))
End While
End If
Return NotFoundRecords
myReader.Close()
End Using
End Using
ありがとうございました
プロシージャは、SQL SERVER から手動で実行中にファイルを作業しています。