【发布时间】:2013-07-01 13:08:21
【问题描述】:
using (MySqlCommand bb = new MySqlCommand("UPDATE members SET Begin = 1 WHERE id ='" + uid + "';"))
{
bb.Connection = con;
con.Open();
using (MySqlCommand fff = new MySqlCommand("UPDATE members SET b = 1 WHERE id ='" + uid + "';"))
{
fff.Connection = con;
}
this.Hide();
Main main = new Main();
main.Show();
}
我正在尝试将两个表 B 和 Begin to 1 更新为当前登录的用户(我的 uid 命令:
using (MySqlCommand id = new MySqlCommand("SELECT id FROM members WHERE username='" + textBox1.Text + "';"))
{
id.Connection = con;
MySqlDataReader read3 = cmd.ExecuteReader();
read3.Dispose();
int idd = (int)id.ExecuteScalar();
uid = idd;
Begin.uid = idd;
MySqlDataReader read4 = id.ExecuteReader();
read4.Dispose();
id.Dispose();
}
我不知道为什么,但它没有更新数据库。
【问题讨论】:
-
你永远不会执行更新命令。
-
正如@GrantThomas 所说的那样,这个命令容易受到“SQL 注入”的攻击。更好的是,它是 2013 年,停止使用直接 SQL!使用实体框架,所有这些问题都会消失......
-
不仅如此,您还需要使用参数化更新。
标签: c# mysql .net sql database