gpt4 book ai didi

c# - ASP C# |使用 SQL 和存储过程更新数据库

转载 作者:行者123 更新时间:2023-11-30 14:41:12 25 4
gpt4 key购买 nike

这是我的 OnClick 事件:

protected void Submit_Click(object sender, EventArgs e)
{
try
{
using (SqlConnection con = new SqlConnection(conString))
{
using (SqlCommand cmd = new SqlCommand("administratorUpdate", con))
{
cmd.Parameters.Add("@originalID", SqlDbType.VarChar).Value = IDHF.Value;
cmd.Parameters.Add("@firstName", SqlDbType.VarChar).Value = firstNameTB.Text;
cmd.Parameters.Add("@lastName", SqlDbType.VarChar).Value = lastNameTB.Text;
cmd.Parameters.Add("@userName", SqlDbType.VarChar).Value = userNameTB.Text;
cmd.Parameters.Add("@emailAddress", SqlDbType.VarChar).Value = emailAddressTB.Text;
cmd.CommandType = CommandType.StoredProcedure;
}
}
GetAllRPT.DataBind();
Label ErrorMessageLabel = (Label)Master.FindControl("ErrorMessageLabel");
new myFunctions().DisplayUserMessage("success", "Administrator Updated!", ErrorMessageLabel);
AdminForm.Visible = false;
}
catch (Exception ex)
{
Label ErrorMessageLabel = (Label)Master.FindControl("ErrorMessageLabel");
new myFunctions().DisplayUserMessage("error", ex.Message, ErrorMessageLabel);
}
}

这是我的存储过程 [administratorUpdate]:

ALTER PROCEDURE [dbo].[administratorUpdate]
@originalID UNIQUEIDENTIFIER,
@firstName varchar (100),
@lastName varchar (100),
@userName varchar (100),
@emailAddress varchar (100),
@password varchar (100),
@isActive bit
AS

UPDATE administrator
SET userName = @userName,
emailAddress = @emailAddress,
password = @password,
firstName = @firstName,
lastName = @lastName,
isActive = @isActive
WHERE
ID = @originalID

代码执行并显示成功消息,但数据表未更新。谁知道为什么?我不熟悉在 ASP 中使用存储过程。

最佳答案

你在执行命令吗?

    using (SqlConnection con = new SqlConnection(conString))
{
conn.Open(); //this was missing

using (SqlCommand cmd = new SqlCommand("administratorUpdate", con))
{
cmd.Parameters.Add("@originalID", SqlDbType.VarChar).Value = IDHF.Value;
cmd.Parameters.Add("@firstName", SqlDbType.VarChar).Value = firstNameTB.Text;
cmd.Parameters.Add("@lastName", SqlDbType.VarChar).Value = lastNameTB.Text;
cmd.Parameters.Add("@userName", SqlDbType.VarChar).Value = userNameTB.Text;
cmd.Parameters.Add("@emailAddress", SqlDbType.VarChar).Value = emailAddressTB.Text;
cmd.CommandType = CommandType.StoredProcedure;
cmd.ExecuteNonQuery(); //this was missing.
}

conn.Close();
}

关于c# - ASP C# |使用 SQL 和存储过程更新数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4456149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com