我创建了一个更新命令,但它有一个错误。我的代码是这样的。
cmd.CommandText = ("UPDATE Penalty SET [Due Date] = '"+ duedate +"' WHERE ISBN = '" + textBox4.Text + "'");
cmd.ExecuteNonQuery();
它说 Invalid column name 'ISBN' 。我无法弄清楚错误。
我创建了一个更新命令,但它有一个错误。我的代码是这样的。
cmd.CommandText = ("UPDATE Penalty SET [Due Date] = '"+ duedate +"' WHERE ISBN = '" + textBox4.Text + "'");
cmd.ExecuteNonQuery();
它说 Invalid column name 'ISBN' 。我无法弄清楚错误。
列名“ISBN”无效
检查您的表中有名为“ISBN”的Penalty
列并首先更正它。
然后你最好转向参数,如果你设置'"+ duedate +"'
日期时间,它将被视为字符串,因为''
带参数的代码
cmd.CommandText = ("UPDATE Penalty SET [Due Date] = @duedate WHERE ISBN = @ISBN");
cmd.Parameters.AddWithValue("@duedate",duedate );
cmd.Parameters.AddWithValue("@ISBN",textBox4.Text);
cmd.ExecuteNonQuery();
这通常意味着ISBN
您的表中绝对没有列名Penalty
。
检查此列的确切拼写(通常情况下很重要!)。
它告诉您 Penalty 表没有名为 ISBN 的列。如果没有看到表定义,就不可能进一步诊断。你能发帖吗?
当您对该问题进行分类后,请阅读 SQL 注入攻击。使用您发布的代码,用户很容易对您的数据库造成严重破坏。