我是编码新手,我需要学校项目的帮助。 我想使用 MySQL 更新数据库,但我不知道如何让更新工作。 我用谷歌搜索了一下,但没能找到解决方案,所以我想我应该在这个网站上问这个问题。
我已成功连接到数据库并在数据网格中显示内容。连接有一个名称:“conn”。如果有人知道如何让更新生效,我很高兴收到您的来信!
这是我的 XAML.CS 代码:
public void Click_btnBewerk(object sender, RoutedEventArgs e)
{
string vzitter2 = txtVZitter.Text;
string info2 = txtInfo.Text;
string zetels2 = txtZetels.Text;
string stroming2 = txtStroming.Text;
string partij = cmPartijen.Text;
conn.Updateinfo();
}
这是我的 DBconn 代码:
public DataView Updateinfo()
{
conn.Open();
MySqlCommand command = conn.CreateCommand();
command.CommandText = "UPDATE partijen SET fvzitter='vzitter2', info='info2', zetels='zetels2', stroming='stroming2' WHERE partij='partij'";
MySqlDataReader reader = command.ExecuteReader();
DataTable dtData = new DataTable();
dtData.Load(reader);
conn.Close();
return dtData.DefaultView;
}
最佳答案
您正在数据库上执行读取操作而不是更新。 只需用此替换您的代码
public void Updateinfo()
{
conn.Open();
MySqlCommand command = conn.CreateCommand();
command.CommandText = "UPDATE partijen SET fvzitter='vzitter2', info='info2', zetels='zetels2', stroming='stroming2' WHERE partij='partij'";
command.ExecuteNonQuery();
conn.Close();
}
如果你想将变量传递给 updateinfo 方法,就这样做
private void Updateinfo(string fvzitter, string info, string zetels, string stroming, string partij)
{
string query = "UPDATE partijen SET fvzitter=@fvzitter, info=@info, zetels=@zetels, stroming=@stroming WHERE partij=@partij"
conn.Open();
MySqlCommand command = conn.CreateCommand();
command.CommandText = query;
command.Parameters.AddWithValue("@fvzitter", fvzitter);
command.Parameters.AddWithValue("@info", info);
command.Parameters.AddWithValue("@zetels", zetels);
command.Parameters.AddWithValue("@stroming", stroming);
command.Parameters.AddWithValue("@partij", partij);
command.ExecuteNonQuery();
conn.Close();
}
关于c# - 使用 WPF 应用程序更新数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54922016/