3

我正在尝试将变量MySQLColdfusion. 我的查询目前包括:

<cfif Session.app_assign EQ "0">
    AND art.iln IN ( #Session.app_ilns# )
<cfelseif Session.app_assign EQ "1">
    AND art.marke IN ( "#Session.app_keys#" )
</cfif>

Session.app_ilns将是一个像这样的数字列表:1111111111111,2222222222222.... 但是,Session.app_keys将是字符串列表,例如:

sample_1, sample_2, sample_3

这将在我的脚本中产生错误,因为

unknown column "sample_1, sample_2, sample_3" in where clause.

问题
有没有办法将 MySQLIN与字符串值列表一起使用,或者我是否需要预先循环变量以添加引号。还有其他方法可以完成这项工作吗?

谢谢!

4

2 回答 2

13

尝试使用 cfqueryparam (无论如何都是好的做法)list="yes"

请参阅本·纳德博文

代码如下所示:

AND art.marke IN ( <cfqueryparam value="#Session.app_keys#" cfsqltype="cf_sql_varchar" list="yes" />)
于 2012-11-13T22:12:59.917 回答
2

知道了。我可以设置list="true"cfqueryparam这里

于 2012-11-13T22:08:38.630 回答