我正在尝试对 MySQL 使用参数化查询。这个理论看起来很简单,您可以像这样创建一个 MySqlCommand 类的新实例:
MySqlCommand command = new MySqlCommand();
将此对象的 CommandText 属性设置为带有占位符的 MySQL 查询,如下所示:
command.CommandText = "INSERT INTO `myTable` (`myField`) VALUES('@bar');
使用 AddWithValue 方法将我的占位符文本替换为实际值:
command.Parameters.AddWithValue("@bar", "HelloWorld");
这就是我认为它的工作方式,但实际上“@bar”这个词最终被附加,而不是“HelloWorld”。
我做错了什么?
最佳答案
尝试不用单引号引起来
command.CommandText = "INSERT INTO `myTable` (`myField`) VALUES(@bar);
关于c# - Parameters.AddWithValue 不将占位符文本替换为实际值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13580941/