给定一个 6 位字符串列表(代表社会安全号码的一部分),我需要拉回 SSN 与其中一个字符串匹配的用户数据集。我的 SQL 是:
SELECT DISTINCT
u.ssn,
u.name
FROM user u
WHERE (u.ssn LIKE '%111111%' OR u.ssn LIKE '%222222%')
我想使用准备好的语句而不是生成内联 SQL(注入攻击等)。有没有一种方法可以在不创建内联 SQL 的情况下取回数据?
这个站点上有类似的问题,但在我的情况下,问题是使用 IN 子句而不是 LIKE 不是一种选择。我只有 6 位数字,并且必须搜索整个 10 位数字的 SSN。
ps 这是一个带有 SQL Server 后端的 .Net 应用程序。