SQL,更新其中id,Code正确无错误但不更新

时间:2014-06-02 09:14:43

标签: c# sql update-statement

我有一个数据库。

我想使用文本框的输入更新我的表格“Personen”。 当我点击按钮时,它表示已更新。但是当我查询数据库时它没有更新。

这是我的代码。

private void button1_Click(object sender, EventArgs e)
    {
        string sqlIns = @"UPDATE Personen SET Voornaam=@VN, Tussenvoegsel=@TN, Achternaam=@AN WHERE (ID=@ID) ;";

        //Maak commando object
        OleDbCommand command = new OleDbCommand(sqlIns, Connectie);
        command.Parameters.AddWithValue("@ID", Convert.ToInt32(TextBoxVerwijderen.Text));
        command.Parameters.AddWithValue("@VN", Convert.ToString(textBox1.Text));
        command.Parameters.AddWithValue("@TN", Convert.ToString(textBox2.Text));
        command.Parameters.AddWithValue("@AN", Convert.ToString(textBox3.Text));
        Connectie.Close();
        try
        {
            //Open de connectie
            Connectie.Open();
            //Voer commando uit
            command.ExecuteReader();
            Connectie.Close();
            //Meldingen succes op het scherm
            LabelSucces.Text = "Persoon is succesvol Geupdate " + sqlIns;
        }
        catch (OleDbException ex)
        {
            MessageBox.Show(ex.Message + ex.StackTrace, "Exception details");
        }
        finally
        {
            //Sluiten van de connectie
            Connectie.Close();
        }
    }

问候。 亚历

2 个答案:

答案 0 :(得分:0)

使用  的 command.ExecuteNonQuery(); 取代 command.ExecuteReader();

使用像这样的查询

    command.Parameters.AddWithValue("ID", Convert.ToInt32(TextBoxVerwijderen.Text));
    command.Parameters.AddWithValue("VN", Convert.ToString(textBox1.Text));
    command.Parameters.AddWithValue("TN", Convert.ToString(textBox2.Text));
    command.Parameters.AddWithValue("AN", Convert.ToString(textBox3.Text));

答案 1 :(得分:0)

Connectie.Close();

看起来这就是问题所在。删除它并尝试在开始和结束时打开连接。之间没有做任何事情。