ここでやろうとしているのは、ストアド プロシージャを使用して Status フィールドを "Complete" に設定することですが、何らかの理由で、ストアド プロシージャを実行した後にテーブルが更新されません。誰かがここで私を助けて、私が間違っていることを教えてもらえますか? ありがとう //ストアド プロシージャはこちら
CREATE PROCEDURE sp_Update
@ID varchar
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
if exists (select Post_ID from MyTable WHERE Post_ID = @ID)
BEGIN
UPDATE MyTable
SET Status = 'Complete'
WHERE Post_ID = @ID
END
END
//and here is the code behind
foreach (GridViewRow gr in GV_Action.Rows)
{
//string strID = gr.Cells[1].Text;
string ID = gr.Cells[1].Text;
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand("sp_Update", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@ID", SqlDbType.VarChar).Value = ID;
cmd.Connection = con;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}