参数化查询是否删除保留的关键字和符号

时间:2017-04-26 11:41:44

标签: c# wpf parameterized-query sql-server-2016-express

如果是,如果我的varchar包含;或[或将自动删除的键控“创建”?我不认为这很简单,避免sql注入的参数化机制是什么?

1 个答案:

答案 0 :(得分:4)

不,它不会删除任何字符。相反,它将这些字符视为值而不是代码。如果传入带有分号或引号或任何其他有意义的字符/关键字的字符串,那么您最终会得到一个字符串值,其中包含分号或引号或关键字。

如果您将查询构造为原始字符串,而不是使用参数化查询,那么您需要确保对字符进行适当的转义以便具有相同的行为,这是一项非常重要的任务(如果您需要)支持所有可能性)这就是为什么存在参数化查询来为你处理它。