我正在编写一个搜索功能,并考虑使用参数来防止或至少限制SQL注入攻击的查询。但是,当我通过程序运行它时,它不会返回任何内容:
SELECT * FROM compliance_corner WHERE (body LIKE '%@query%') OR (title LIKE '%@query%')
可以像这样使用参数吗?还是仅在以下情况下才有效:
SELECT * FROM compliance_corner WHERE body LIKE '%<string>%'
(<string>
搜索对象在哪里)。
编辑:我正在用VB.NET构造此函数,这对你们贡献的语法有影响吗?
另外,我在SQL Server中运行了以下语句:SELECT * FROM compliance_corner WHERE (body LIKE '%max%') OR (title LIKE
%max%')`,并返回结果。