我正在使用Visual C#2010 express窗体应用程序& Mysql for DB。 我想从DB获取一个值(当前没有学生)并将其增加1并更新该值。因为我使用下面的代码,但我在'字段列表'中收到一个名为“未知列'x'的错误。
connection.Open();
MySqlCommand cmd1 = new MySqlCommand("SELECT NoOfStudents FROM batch", connection);
MySqlDataReader dr = null;
dr = cmd1.ExecuteReader();
int x;
while (dr.Read())
{
x = Convert.ToInt32(dr[0]);
x = x + 1;
}
dr.Close();
MySqlCommand cmd2 = new MySqlCommand("UPDATE batch SET NoOfStudents= x", connection);
cmd2.ExecuteNonQuery();
connection.Close();
答案 0 :(得分:1)
更改为
MySqlCommand cmd2 = new MySqlCommand(string.Format("UPDATE batch SET NoOfStudents= {0}",x), connection);
答案 1 :(得分:0)
试试这个
string sql=string.Format("UPDATE batch SET NoOfStudents= {0}",x);
MySqlCommand cmd2 = new MySqlCommand(sql, connection);
x是程序中声明的变量,Mysql不知道任何关于它的事情,这只是一个字符串,其内容被编译器忽略