我们可以在cfquery中使用cfset吗?

kam*_*ain 1 coldfusion cfml

我们可以在<cfset>标签内使用<cfquery>标签吗?以及如何将listqualify结果传递给<cfqueryparam>?以下是我的代码:

SELECT * FROM EMPLOYEE WHERE _id in (#listqualify(idList,"'")# 
Run Code Online (Sandbox Code Playgroud)

这里idList由另一个数据源提供.我想在上面的代码上使用,以确保正确提供输入.我试过下面的代码,但不确定我是否正确的方式.

SELECT * FROM EMPLOYEE
WHERE _id in (<cfset idList=#listqualify(idList,"'")#><cfqueryparam value="#idList">) 
Run Code Online (Sandbox Code Playgroud)

请帮我.

Tus*_*are 8

是.您可以<cfset>在另一个标签内使用标签,如下所示:

<cffunction ....>
<cfset x = 'a'>
</cffunction>
OR
    <cfquery ...>
      <cfset x ='a'>
    </cfquery>
Run Code Online (Sandbox Code Playgroud)

你做的方式不美观,你可以这样做:

<cfset idList = listQualify(idList,"'")>
SELECT * FROM EMPLOYEE WHERE _id in 
(<cfqueryparam cfsqltype="CF_SQL_INTEGER" value="#idList#" list="yes">)
Run Code Online (Sandbox Code Playgroud)

  • 实际上,根本不需要使用listqualify()函数.cfqueryparam的list属性负责这一点. (3认同)