ColdFusion:特定ID的访问查询结果集

Saa*_*d A 1 coldfusion

我有一个问题;

    <cfquery datasource="forms" name="departments">
        select * from quizes.tb_depts
    </cfquery>
Run Code Online (Sandbox Code Playgroud)

这将返回结果集.我想访问一个特定的结果集,其中此行的ID(主键)是我输入的内容.

示例部门[13]应该在ID = 13的结果集中得到结果.

有没有内置的方法来做到这一点?我看到departments.id [rownumber]这不是我想要的.

谢谢

Joe*_*ose 5

你需要几件事:

首先,让我们将您的ID分配给变量,因为每次执行此查询时它可能都不一样:

<cfset departmentID = 13 >
Run Code Online (Sandbox Code Playgroud)

现在<cfquery>按如下方式调整块:

<cfquery datasource="forms" name="departments">
    select *
    from quizes.tb_depts
    where id = <cfqueryparam value="#departmentID#" cfsqltype="cf_sql_numeric">
</cfquery>
Run Code Online (Sandbox Code Playgroud)

注意:作为最佳实践,您需要将变量范围限定在<cfqueryparam>.对于我在这里完成的一个简单的变量赋值,它就是#VARIABLES.departmentID#.如果此查询位于将ID作为参数传递的函数中,那么它将是#ARGUMENTS.departmentID#.