C# Windows窗体应用程序更新查询未保存数据

C# Windows窗体应用程序更新查询未保存数据,c#,mysql,winforms,C#,Mysql,Winforms,我尝试在我的C windows窗体应用程序中使用更新查询。我没有得到任何错误,只是似乎没有保存我试图更新的数据。看看代码: private void button2_Click(object sender, EventArgs e) { try { string myConnection = connection; MySqlConnection myConn = new MySqlConnection(myConnection);

我尝试在我的C windows窗体应用程序中使用更新查询。我没有得到任何错误,只是似乎没有保存我试图更新的数据。看看代码:

private void button2_Click(object sender, EventArgs e)
{
    try
    {
        string myConnection = connection;

        MySqlConnection myConn = new MySqlConnection(myConnection);
        myConn.Open();

        MySqlDataAdapter myDataAdapter = new MySqlDataAdapter();
        myDataAdapter.UpdateCommand = new MySqlCommand(" update users set username=" + textBox1.Text + " where username=" + username + " ", myConn);

        MySqlCommandBuilder cb = new MySqlCommandBuilder(myDataAdapter);
        DataSet ds = new DataSet();
        myConn.Close();

        MessageBox.Show("Changes has been saved.");
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}
    }

用户名是从另一个表单gridview传递的字符串

我在互联网上找到了解决方案。我想到的是:

    private void button2_Click(object sender, EventArgs e)
    {

        string myConnection = connection;
        MySqlConnection myConn = new MySqlConnection(myConnection);
        MySqlCommand cmdDataBase = new MySqlCommand("UPDATE `users` SET username='Test' WHERE username='CurrentName' ", myConn);
        MySqlDataReader myReader;

        try
        {

            myConn.Open();
            myReader = cmdDataBase.ExecuteReader();
            myConn.Close();
            MessageBox.Show("Changes has been saved!");
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }

    }

在哪里执行查询?感觉这里不需要MySqlDataAdapter和ds。您是否在数据库管理器上尝试过您的命令?它在那里工作吗?请使用。这种类型的字符串连接对攻击是开放的。还可以使用using语句来处理数据库连接。在my phpmyadmin中尝试过,但查询不起作用!谢谢你告诉我在那里试试。将解决查询问题并再次尝试使用工作查询,但似乎仍无法保存该查询。marc_s,连接字符串为:datasource=localhost;数据库=TESTDB;端口=3306;用户名=根;密码=根