我在ColdFusion中运行一个非常简单的查询。如果我在cfquery标签中运行它,它会在大约20ms内完成。如果我在cfscript中使用查询对象,则需要大约500毫秒才能完成。它似乎不是查询本身 - 调试输出表明在两种情况下查询都会在大约10毫秒内完成。知道发生了什么事吗?
CFQuery版本:
<cfquery name="selUsers" datasource="m112dev_2">
SELECT * FROM Users
WHERE User_ID = 3
</cfquery>
CFScript版本:
<cfscript>
q = new Query();
q.setDataSource('m112dev_2');
q.setName('selUsers');
selUsers = q.execute(sql="SELECT * FROM Users
WHERE User_ID = 3
").getResult();
</cfscript>
答案 0 :(得分:3)
我找到了解决方案:
一旦打开它,我的性能基本相同。我认为问题在于ColdFusion实际上在不同的组件中运行查询(C:\ ColdFusion9 \ CustomTags \ com \ adobe \ coldfusion \ base.cfc),因此如果没有缓存路径解析,则必须每次都找到CFC。