【发布时间】:2021-11-10 04:51:43
【问题描述】:
这就是我所拥有的:
select *
from AuditQuestionnaires
where Companyid = @companyid
and RiskTypeID != @RiskIdList[x];
为什么我不能像这样添加参数:
command2.Parameters.Add(new SqlParameter("RiskIdList[x]", RiskIdList[x]));
我正在使用 SQL Server,这是我在 .cs 文件中使用的脚本
【问题讨论】:
-
首先,这不是有效的 SQL。在 SQL 中,您不能在数据集上使用
!=,而只能在单个值上使用。所以你要找的是risktypeid NOT IN (...)。不幸的是,据我所知,数据集不能用作绑定变量。对于像 PostgreSQL 这样支持数组的 DBMS,这可能会有所不同。您要求的 DBMS 是什么? -
@Klaus Gütter:我做了一个有根据的猜测并相应地更新了请求:-)
-
不过,您可以通过一些调整,使用表值参数。
标签: c# sql sql-server