mysql - 使用 ColdFusion 动态输出 MySQL,无需列名

标签 mysql coldfusion

我想动态输出一个表及其数据。我有数据源和表名称。

我正在考虑使用 <cftable>但我坚持使用动态列名称。

这基本上就是我想要做的 - 它显然不起作用,但这里用于说明目的。

<cfset datasource = "test">
<cfset tablename = "mytable">

<!--- first get the columns from the table --->
<cfquery name="getcolumns" datasource="#datasource#">
SELECT COLUMN_NAME, DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME = '#mytable#';
</cfquery>

<!--- Now select all from the table --->
<cfquery name="selectall" datasource="#datasource#">
SELECT      *
FROM        #mytable#
</cfquery>

<!--- Output all rows from the table --->
<cftable query="selectall">
  <cfoutput query="getcolumns">
     <cfcol text="#COLUMN_NAME#" header="#COLUMN_NAME#">
</cfoutput>
</cftable>

最佳答案

您可以使用两种方法。记录的功能 queryName.columnlist 为您提供按字母顺序排列的所有列名称的列表。未记录的功能 queryName.getcolumnlist() 为您提供所有列名称的数组,按照它们在 select 子句中出现的顺序排列。

这允许你做这样的事情。

<cfoutput query="queryName">
<cfloop list = "#queryName.columnlist#" index = "column">
#queryName[column][currentrow]#
closing tags

关于mysql - 使用 ColdFusion 动态输出 MySQL,无需列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45676884/

相关文章:

javascript - 简单的 coldfusion 将记录 id 传递给 JS 函数?

asp.net - 是否可以从 ColdFusion 引用 .NET 程序集?

mySQL 按表中值的总和排序

Mysql 获取生命周数

jquery - 通过 AJAX 和 jQuery 清除并重新加载 div 数据

java - Coldfusion 任务停止运行,日志中显示 "interrupt task"

mysql - Rails 如何迭代 has_one 呢?

java - mysql和JDBC错误的Wait Timeout设置

php - mysql/php 合并/合并行值

javascript - 尝试在页面加载时运行函数