gpt4 book ai didi

c# - 如何在ado net中使用UPDATE

转载 作者:太空狗 更新时间:2023-10-29 20:52:04 24 4
gpt4 key购买 nike

我需要在表中执行更新(家庭作业)。但这不仅仅是用新值替换旧值;对于列中已有的值,我必须添加(SUM)新值(该列的类型为 int)。这是我到目前为止所做的,但我被卡住了:

protected void subscribeButton_Click(object sender, EventArgs e)
{
string txtStudent = (selectedStudentLabel.Text.Split(' '))[0];
int studentIndex = 0;
studentIndex = Convert.ToInt32(txtStudent.Trim());

SqlConnection conn = new SqlConnection("Server=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Database.mdf;Trusted_Connection=True;User Instance=yes");
conn.Open();
string sql2 = "UPDATE student SET moneyspent = " + ?????? + " WHERE id=" + studentIndex + ";";
SqlCommand myCommand2 = new SqlCommand(sql2, conn);

try
{
conn.Open();
myCommand2.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex);
}
finally
{
conn.Close();
}
}

我应该添加什么 ??? 来实现我的目标?

这样可以吗?我想避免使用太多查询。

最佳答案

如果我对你的理解正确(我不确定我是否理解)你想要这样的东西:

string sql2 = "UPDATE student SET moneyspent = moneyspent + @spent WHERE id=@id";
SqlCommand myCommand2 = new SqlCommand(sql2, conn);
myCommand2.Parameters.AddWithValue("@spent", 50 )
myCommand2.Parameters.AddWithValue("@id", 1 )

注意我是如何使用参数而不是字符串连接的,这非常重要!!

关于c# - 如何在ado net中使用UPDATE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5772219/

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