首页 > 解决方案 > 更新查询 C# SQL 服务器单选按钮

问题描述

单击按钮时,此更新查询不起作用。这里 Group 是单选按钮,但程序抛出异常

private void editAll_Click(object sender, EventArgs e)
{
    string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\DELL\source\repos\phoneBookwin\phoneBookwin\Database1.mdf;Integrated Security=True";

    string value;
    bool friendCheck = newFriends.Checked;
    bool familyCheck = newFamily.Checked;
    bool emergencyCheck = newEmergency.Checked;
    bool collCheck = newColl.Checked;
    if (friendCheck)
        value = newFriends.Text;
    else if (familyCheck)
        value = newFamily.Text;
    else if (emergencyCheck)
        value = newEmergency.Text;
    else if (collCheck)
        value = newColl.Text;
    else
        value = "";
    using (SqlConnection con = new SqlConnection(connectionString))
    using (SqlCommand Command = con.CreateCommand())
    {
        con.Open();
        Command.CommandText = " update Contacts set Name =@newName, Contacts = @newNumber, Email = @newEmail, Group = @newGroup where Name = @changeName"; 
        Command.Parameters.AddWithValue("@newName",newName.Text);
        Command.Parameters.AddWithValue("@newNumber", newNumber.Text);
        Command.Parameters.AddWithValue("@newEmail", newEmail.Text);
        Command.Parameters.AddWithValue("@newGroup", value);
        Command.Parameters.AddWithValue("@changeName", changeName.Text);
        Command.ExecuteNonQuery();
        con.Close();
    }
    this.Hide();
    
    Form1 save = new Form1();
    save.ShowDialog();
}

抛出异常

'关键字'组'附近的语法不正确。'

标签: c#sql-server

解决方案


在 SQL 查询中将关键字“Group”用方括号括起来:

update Contacts 
set Name =@newName, Contacts = @newNumber, Email = @newEmail, [Group] = @newGroup 
where Name = @changeName

推荐阅读