coldfusion - 如何从 coldfusion 查询中读取带有空格的列?

标签 coldfusion cfquery cfspreadsheet

我正在从电子表格中读取数据。电子表格中的一列包含空格。

例如,列名称是 [first name,last name,roll]。

我在阅读电子表格后得到一个 qryObj。 现在,当我尝试从查询中读取名字时

<cfquery dbtype="query" name="getName">
    SELECT [first name]
    FROM   qryObj
</cfquery>

它抛出数据库错误。我也尝试过使用 ['first name'] 但它仍然抛出错误。

错误是:

Query Of Queries syntax error.
Encountered "[. Incorrect Select List, Incorrect select column

最佳答案

我做了一些疯狂的事情,例如 google 以查看人们在其他情况下做了什么,并尝试了各种 SQL 方法来转义非标准列名(反引号、方括号、双引号、它们的组合) ) ,并画了一个空白。所以我同意@da_didi 的观点,QoQ/IMQ 不适合这个。您应该在 Adobe bug tracker 中提出问题.

你可以做 SELECT * ,这样就无需引用列名。或者您可以序列化查询,使用字符串替换来重命名列,再次反序列化,然后在修改后的名称上使用 QoQ。不过,我只会用少量数据执行此操作。

或者您可以反驳 XLS 文件的所有者并说“除非您修改您的列名称,否则不能这样做”。

您也可以使用 excludeHeaderRow 隐藏 XLS 文件中的列名,然后指定您自己的列名称。我怎么发现有人可以做到这一点?通过 RTFMing <cfspreadsheet> docs .

关于coldfusion - 如何从 coldfusion 查询中读取带有空格的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21301468/

相关文章:

coldfusion - cfspreadsheet 参数验证错误

apache - 以与多实例 Adob​​e CF 相同的方式设置 Railo

forms - 在coldfusion中检查同一页面上提交的多个表单

coldfusion - 良好的通用 try/catch 例程

mysql - 请求已超过 CFQUERY 标记允许的时间限制错误

excel - cfspreadsheet 能否在不将它们更改为空白的情况下从查询中输出空值?

coldfusion - Google Java API 与 ColdFusion CFHTTP 冲突?

java - 在 Windows 2008 R2 上安装 Coldfusion 9 时应用程序被阻止

ColdFusion queryExecute 参数对象?

coldfusion - 使用 CFSpreadsheet 应用条件格式