我正在使用 Visual C# Express 和 MySQL 创建一个数据库应用程序。问题是,如果数据实际上已经更改,我只想将数据从 C# 表单存储到数据库,我现在这样做的方式是,当单击“保存”按钮时,表单中的所有字段都是保存到数据库中,无论它们是否已更改。
我想出的解决方案是检查表单中的每个字段是否已更改,然后相应地更改 SQL 命令,即
//when the details are loaded into the form
String strOriginalName = txtFirstname.Text;
//when the save button is checked
if(strOriginalName != txtFirstname.Text)
{
String strUpdate = "UPDATE table SET firstName = txtFirstname.Text";
MySqlCommand cmdUpdate = new MySqlCommand(strUpdate, connection);
cmdUpdate.ExecuteNonQuery();
}
还有其他人有更好或替代的解决方案吗?感谢您的帮助,如果我在任何部分含糊不清,请告诉我,我可以尝试进一步解释。
最佳答案
例如,我建议使用一些 OR Mapper (NHibernate)。它会为你做这一切。此外,这将免费为您提供缓存和其他很酷的东西:)
为 future 吸取的教训是无价的,您的下一个应用程序将增长得越来越快。 :)
关于c# - 仅当值已更改时才将值存储到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4564167/