在 SQL 查询中使用带有 LIKE 语句的参数,防止 SQL 注入
在数据库查询中,使用参数是防止恶意 SQL 的关键实践注入攻击。但是,在使用 LIKE 语句时,会出现某些语法注意事项。
问题:是否可以在 LIKE 语句中使用参数,如果可以,如何使用?
答案: 是的,可以在 LIKE 语句中使用参数。但是,正确处理字符串连接非常重要。
参数化 LIKE 语句的语法:
SELECT * FROM table_name WHERE (column_name LIKE @parameter)
在中使用参数VB.NET:
Dim cmd As New SqlCommand( "SELECT * FROM compliance_corner "_ + " WHERE (body LIKE @query ) "_ + " OR (title LIKE @query)") cmd.Parameters.Add("@query", "%" + searchString + "%")
说明:
示例查询:
SELECT * FROM compliance_corner WHERE (body LIKE '%max%') OR (title LIKE '%max%')
此查询将检索正文或标题列包含子字符串的所有记录“最大”。
以上是如何安全地在SQL中的LIKE语句中使用参数来防止注入攻击?的详细内容。更多信息请关注PHP中文网其他相关文章!