javascript - 使用变量处理字符串sql查询中的单引号

标签 javascript sql sql-server sql-injection

我试图使该语句免受插入特殊字符的影响。我如何重新格式化查询来处理这个问题,例如变量类型的值为“Women’s”?然而,我知道参数化查询是可行的方法;现在这不是一个选择。

var sqlStatement = "SELECT DISTINCT DN FROM tbl1 WHERE Media LIKE "+ media + "% AND Type = " + type + "";

最佳答案

这里最好的资源是 OWASP(查看 SQL Injection Prevention 备忘单)。我觉得有必要重申,您最好的选择是按以下顺序尝试解决方案:

  1. 准备好的声明
  2. 存储过程
  3. 转义用户提供的输入

如果您绝对要转义 SQL Server 查询,您可以引用 This MSDN Article ,特别是转义输入部分。如果您可以通过实现 White List 进一步验证用户输入,一切都更好!

关于javascript - 使用变量处理字符串sql查询中的单引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12783144/

相关文章:

php - PDO更改查询

sql - 使用随机生成的数字创建临时表名

Javascript smoothscroll 由于某种原因不起作用

javascript - core-js 包很大(使用 62kB)

javascript - 每次在 jquery 中单击按钮时如何使输入添加值?

c# - 我们如何在C#中将access数据库(.mdb)导入到sql server 2008中

javascript - 如何向引导框对话框添加滚动条?

mysql - 链接 SQL 查询

sql - 如何在 SQL 中以随机顺序从表中选择列

sql - 关键字 'ORDER' 附近的语法不正确