我尝试使用MySQL的参数化查询。该理论看起来非常简单,您可以像这样创建 MySqlCommand 类的新实例:
MySqlCommand command = new MySqlCommand();
将此对象的 CommandText 属性设置为带有占位符的MySQL查询,如下所示:
command.CommandText = "INSERT INTO `myTable` (`myField`) VALUES('@bar');
使用 AddWithValue 方法将占位符文本替换为实际值:
command.Parameters.AddWithValue("@bar", "HelloWorld");
这就是我认为它的工作方式,但实际上“@bar”这个词最后会被追加,而不是“HelloWorld”。
我做错了什么?
答案 0 :(得分:7)
尝试不用单引号
包装command.CommandText = "INSERT INTO `myTable` (`myField`) VALUES(@bar);