gpt4 book ai didi

coldfusion - 如何循环遍历数据库的表?

转载 作者:行者123 更新时间:2023-12-02 18:47:32 25 4
gpt4 key购买 nike

我尝试使用以下代码循环数据库的表,但出现错误java.lang.UnsupportedOperationException。我什至尝试使用cfloop查询和其他属性得到错误复杂值无法转换为简单值。谁能告诉我我该如何循环这个查询?谢谢。

<cfquery name="q" datasource="datasource">
SHOW TABLES FROM datasource
</cfquery>
<cfloop collection ="#q#" item="i">
#q[i]#
</cfloop>

最佳答案

您收到该错误是因为 cfloop collection 需要一个结构,而不是查询对象。因此出现“UnsupportedOperation...”错误。

相反,您应该使用查询循环。生成的列名称是动态的,基于您提供的数据库名称。您可以对其进行硬编码或动态访问:

   <cfset colNames = listToArray(q.columnList)>
<cfoutput query="q">
<cfloop array="#colName#" index="col">
#q[col][currentRow]#
</cfloop>
<br>
</cfoutput>

也就是说,我发现使用 metadata INFORMATION_SCHEMA views 更容易。您可以像查询任何表一样查询它们。然后照常输出静态列名称。

    <cfquery name="yourQueryName" ...>
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'YourDatabaseName'
</cfquery>

<cfoutput query="yourQueryName">
#TABLE_NAME# <br>
</cfoutput>

关于coldfusion - 如何循环遍历数据库的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21711894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com