以下作品CFMX 7和CF8罚款,我会承担CF9还有:如何将Java结果集转换为Railo中的ColdFusion查询?
<!--- 'conn' is a JDBC connection --->
<cfset stat = conn.createStatement() />
<cfset rs = stat.executeQuery(trim(arguments.sql)) />
<!--- convert this Java resultset to a CF query recordset --->
<cfset queryTable = CreateObject("java", "coldfusion.sql.QueryTable")>
<cfset queryTable.init(rs) >
<cfset query = queryTable.FirstTable() />
这将创建使用JDBC驱动程序的声明中,执行一个查询反对它,把它变成Java结果,然后将coldfusion.sql.QueryTable实例化,传递Java resulset对象,然后调用queryTable.FirstTable(),它将返回实际的Coldfusion结果集(用于cfloop等)。
问题出现在Railo的实施中。在Railo中运行此代码将返回以下错误:找不到匹配的Coldfusion.sql.QueryTable(org.sqlite.RS)的构造函数。
我抛弃了Railo java对象,并且在方法中看不到init()。我错过了一些简单的东西吗我很乐意在Railo中工作。
请注意:我正在做一个SQLite数据库的无DSN连接。我了解如何设置CF数据源。我唯一的问题就是从Java结果集转换为Railo查询。
这可能是一个愚蠢的问题 - 但为什么不使用常规ColdFusion数据源和''来创建查询结果? –
Tomalak
2010-02-09 12:58:19
请参阅:http://www.coldfusionjedi.com/index.cfm/2009/9/24/Hooking-up-ColdFusion-and-SQLite – Tomalak 2010-02-09 13:06:59
这可能是因为QueryTable是Railo中的一个接口。所以你不能实例化它。 (这是Adobe CF中的具体类)。我不确定Railo用于查询的具体类,还是与Adobe CF中的QueryTable类似。但是,如前所述,是否有一个原因,您不能使用常规查询? – Leigh 2010-02-09 15:19:33