我正在创建一个 Windows 窗体应用程序,现在在某个时刻我需要建立数据库连接,我已轻松地将值插入到数据库中,但现在它没有更新我的数据,我为此目的使用以下查询:
MySqlCommand sda = new MySqlCommand(@"Update shedulling.tablelayout1 set date = '"
+ date + "',line = " + line + ",col1 = '" + first_textbox.text + "', col2 = '"
+ sec_textbox.text + "',col3_textbox.text = '" + thi_textbox.text
+ "',col4_textbox.text = '" + four + "' where date = '" + date + "' AND line = '"
+ line.ToString() + "' ", conn);
conn
是一个写得很好的连接字符串,date
和 line
是作为参数发送给该函数的字符串和整数值。
最佳答案
您在 line
部分错过了单引号。像这样更改它 line = '"+ line + "'
。
您的代码中还有一件更值得注意的事情:您试图在表中查找 where
子句中尚不存在的记录 where date = '"+ date + "' AND line = '"+ line.ToString() + "'
注意此行 date
和 line
是新值而不是旧值,所以没有更新查询中受影响的行。您应该在 where
子句中使用 date
和 line
的旧值。
此外,您应该始终使用 parameterized queries
。这种字符串连接对SQL Injection
开放。 .
关于c# - 更新MySql数据库表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32657038/