当我尝试查询查询时,我收到错误。
在内存中找不到名为allData的表。名称拼写错误或表格未定义。
我有一个excel文档,我输出到名为allData的coldfusion var,然后我正在对该var进行查询。但是我收到了一个错误:
我做错了什么?第一个转储适当地显示了表。
function name="validateExcel" access="public" output="yes" returnType="void"
hint="search for dogs">
<cfspreadsheet
action="read"
src="#SESSION.theExcelFile#"
headerrow= "1"
excludeHeaderRow = "true"
query = "allData"
rows = "1-25"/>
<cfdump var = "#allData#"/>
<cfset rotCheck = new Query(
sql = "SELECT * FROM allData where dogType like '%rot'",
dbtype = "query"
) />
<cfset dogResult = rotCheck.execute().getResult() />
<cfdump
var = "#dogResult#" />
</cffunction>
答案 0 :(得分:2)
(来自评论......)
我必须运行,但简短的回答 - 电子表格中的查询变量不在Query.cfc的范围内。 (关于Query.cfc的文档在某种程度上缺乏IMO。)pass in the query object as a parameter即new Query(...., allData=allData)
或使用<cfquery>
代替。
答案 1 :(得分:1)
鉴于转储工作,allData变量存在。具有适当属性的cfquery标记将为您解决问题。