我有一个ColdFusion组件,有一种方法叫getColumnNamesColdfuson CFSCRIPT未找到 “setSQL” 方法
这只是一个查询MySQL表,并返回columnlist:
remote string function getColumnNames() {
qProcessCars = new Query();
qProcessCars.setDataSource('#APPLICATION.dsn#');
qProcessCars.setSQL('SELECT * FROM sand_cars WHERE 1 LIMIT 1');
qProcessCars = qProcessCars.Execute().getResult();
return qProcessCars.columnlist;
}
如果我在浏览器中远程访问它,使用page.cfc?method = getColumnNames,那么我会得到预期的列列表。
但是,如果我尝试到组件内的另一种方法里面访问它,我得到一个错误
remote string function otherFunction() {
...
sColumns = getColumnNames();
...
}
上面的代码错误转储返回消息“的setSQL方法未找到”。
所以任何人都可以帮助我找出它作为远程调用的原因,但不是从同一组件内的其他方法调用时。
啊我已经回答了我自己的问题了。抱歉。 我已经使用了相同的名称* qProcessCars * else在组件中,我没有把** var **放在它们的前面。 我不知道为什么导致这个问题,但它是。也许** setSQL **只能针对每个* query *对象调用一次? 我实际上不能回答这个问题,因为我刚刚列出了它 –
糟糕,看起来你已经在我完成我的答案之前回答了它。 – Sergii