【发布时间】:2012-03-08 23:01:29
【问题描述】:
我的目标是只输出“fieldList”中指定的列数据。
得到以下错误:
复杂对象类型不能转换为简单值。表达式请求了一个变量或一个中间表达式结果作为一个简单值,但是,结果不能转换为一个简单值。简单值是字符串、数字、布尔值和日期/时间值。查询、数组和 COM 对象是复值的示例。错误的最可能原因是您试图将复杂值用作简单值。例如,您可能试图在 cfif 标记中使用查询变量。错误发生在第 20 行。
尝试执行以下操作时:
<cfquery datasource="retailers" name="myQuery">
Select * FROM retailer
WHERE retailer_id = '#url.id#'
</cfquery>
<cfset fieldList = "company,phone,phone_secondary,fax,email,website">
<cfloop list="#fieldList#" index="i">
#myQuery[i]#
</cfloop>
难道不应该在不给我错误的情况下工作吗?我觉得我只是忽略了一些简单的事情,我在任何地方都找不到答案。
【问题讨论】:
-
澄清:您是否尝试从查询结果中输出列名列表?或者你只是想做最明显的事情——那就是:循环查询结果(即所有数据行)并输出它们。我问是因为您没有具体说明您想要什么,而且代码(如所写)可能会采用任何一种方式。
标签: coldfusion