如何阻止Coldfusion将查询列名转换为大写?

如何阻止Coldfusion将查询列名转换为大写?,coldfusion,cfquery,Coldfusion,Cfquery,当我在ColdFusion 8中使用cfquery标记从MySQL表中选择数据时,列名都转换为大写,即使我已将它们存储在数据库表中的camelCase中。有没有办法让ColdFusion尊重列名的大小写 我之所以这样问是因为我将查询结果作为JSON对象返回,我不想在JavaScript端使用大写属性名称,因为我保留常量的命名约定。在查询对象上使用getMetaData。它返回一个列数组,显示查询中使用的相同大小写 queryName.getMetaData().getColumnLabels()

当我在ColdFusion 8中使用cfquery标记从MySQL表中选择数据时,列名都转换为大写,即使我已将它们存储在数据库表中的camelCase中。有没有办法让ColdFusion尊重列名的大小写


我之所以这样问是因为我将查询结果作为JSON对象返回,我不想在JavaScript端使用大写属性名称,因为我保留常量的命名约定。

在查询对象上使用getMetaData。它返回一个列数组,显示查询中使用的相同大小写

queryName.getMetaData().getColumnLabels()

从查询返回一个带有原始大小写的查询列标签数组

哦,很抱歉-您需要数据库中的大小写。不是上层,也不是SQL所显示的。最好使用cfdbinfo。这应该行得通。您需要使用它并将其与查询结果一起返回。为了澄清,这是否意味着我必须发送两个JSON对象,一个包含结果集,另一个包含列名?然后仍然执行一些匹配算法来将数据匹配到正确的属性?或者有没有一种方法可以将从cfdbinfo获取的列名与查询结果对象合并?我可能会手工构建JSON,使用cfdbinfo查找中的列名和查询中的值。我认为他们需要数据库中的案例。在这种情况下,他们需要使用前面提到的cfdboinfo或mySQL的元数据表。undocumented metadata方法返回sql中使用的案例,该案例可能完全不同。这一切都取决于它的打字方式。