我正在使用Visual C#2010 Express Windows窗体应用程序和Mysql for 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();

最佳答案

尝试这个

string sql=string.Format("UPDATE batch SET NoOfStudents= {0}",x);
MySqlCommand cmd2 = new MySqlCommand(sql, connection);


x是在程序中声明的变量,而Mysql对此一无所知,这只是一个字符串,其内容被编译器忽略

关于c# - 使用存储在变量中的值更新数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13194804/

10-11 05:41