我正在制作一个包含下列存储过程的SSRS报告。我的用户需要一个搜索工具,可以返回所有可能的名称字段结果,如名称为“AD”时,应返回“ADAM”和“MADELYN”。
我担心,由于我在where子句中使用字符串连接,这个存储过程可能会遭受SQL注入攻击:
BEGIN
@location varchar(20),@name varchar(20)
SELECT location, name
FROM table
WHERE (location LIKE @location+'%') AND (name LIKE '%'+@name+'%')
END
这段代码存在漏洞吗? 如果有,我该如何修复它以确保安全?