8

我正在用 ColdFusion 9.01 脚本编写查询,但无法理解为什么它不缓存结果。使用 CFML 标记语法执行时,将缓存相同的确切查询。

SQL、数据源、用户名、密码没有改变。我在实例化它之后转储了 cfscript 查询对象,并验证了在初始化期间正确接收了 cachedWithin 参数。我难住了。

不会缓存的 CFScript 版本

var Q = new Query(
     SQL="SELECT * FROM TABLE"
    ,cachedwithin=createTimeSpan(0,0,60,0)
).execute().getResult();

将缓存的 CFML 标记版本

<cfquery name="local.q">SELECT * FROM TABLE</cfquery>

感谢您的时间和帮助。

亚伦

4

2 回答 2

10

给它一个名字!:)

var Q = new Query(
     SQL="SELECT * FROM TABLE"
    ,cachedwithin=createTimeSpan(0,0,60,0)
    ,name="myQuery"
).execute().getResult();

http://www.compoundtheory.com/?action=displayPost&ID=500

于 2011-10-26T01:52:18.733 回答
1

在这里:http ://adiefatlady.posterous.com/compound-theory-getting-cfscript-queries-to-c

于 2011-10-26T02:01:26.910 回答