有没有一种方法可以在查询的查询中转义并使用ColdFusion查询保留字作为列名?

有没有一种方法可以在查询的查询中转义并使用ColdFusion查询保留字作为列名?,coldfusion,Coldfusion,我正在处理一个名为“Date”列的查询 原始查询从数据库返回OK。您可以输出原始查询、为原始查询分页、获取日期列的值列表等 查询的查询 <cfquery name= "Query" dbtype= "query"> select [Query].[Date] from [Query] </cfquery> 挑选 [查询][日期] 来自[查询] 来自ColdFusion的响应 查询语法错误。遇到“日期”。选择不正确 名单 通常,我使用描述性名称,因此我以前没

我正在处理一个名为“Date”列的查询

原始查询从数据库返回OK。您可以输出原始查询、为原始查询分页、获取日期列的值列表等

查询的查询

<cfquery  name= "Query" dbtype= "query">
select 
[Query].[Date]

from [Query] 

</cfquery>

挑选
[查询][日期]
来自[查询]
来自ColdFusion的响应

查询语法错误。遇到“日期”。选择不正确 名单

通常,我使用描述性名称,因此我以前没有遇到过这个问题

在本例中,我使用的是其他人编写的存储过程,最后我修改了存储过程以使用更具描述性的列名

我有一个用于转换、搜索和排序ColdFusion查询的服务。我很想知道原始问题的答案,这样我就可以修改我的服务以抛出更好的错误或处理保留字

有没有办法在查询查询中转义并使用ColdFusion查询保留字作为列名?

在标准mysql中,您可以使用`character“转义”字段

例如:

select `query`.`date` from `query`
试试看是否有效?

在标准mysql中,您可以使用`字符“转义”字段

例如:

select `query`.`date` from `query`

试试看它是否有效?

以下代码对我来说很好:

<cfset query = queryNew("date")>

<cfdump var="#query#">

<cfquery  name= "Query" dbtype= "query">
select 
[Query].[Date]

from [Query] 

</cfquery>

<cfdump var="#query#">

挑选
[查询][日期]
来自[查询]

以下代码对我来说很好:

<cfset query = queryNew("date")>

<cfdump var="#query#">

<cfquery  name= "Query" dbtype= "query">
select 
[Query].[Date]

from [Query] 

</cfquery>

<cfdump var="#query#">

挑选
[查询][日期]
来自[查询]

在ColdFusion中引发语法错误。
在第5行第33列出现词汇错误。遇到:“`”(96),在:“
在ColdFusion中引发语法错误。
在第5行第33列出现词汇错误。遇到:“`”(96),在:”
这对我也适用(CF9).但在回答最初的问题时,我不知道它是否像在db查询中转义一样灵活。例如,
[带空格的列]
仍然在CF9下抛出错误。因此,您可能只想抛出一个更具描述性的错误。有趣的是,我不知道带空格的列。这对我也适用(CF9).但在回答最初的问题时,我不知道它是否像在db查询中转义那样灵活。例如
[带空格的列]
仍然会在CF9下抛出一个错误。因此,您可能只想抛出一个更具描述性的错误。有趣的是,我不知道关于带空格的列的错误。从G+复制响应。谢谢Sam,括号确实可以用来转义保留字。我只是没有注意到在将它们放置到位后错误上的行号发生了变化。我有一个secondary函数为另一个查询构建了一个类似的select。我发现它试图组合一个更简单的示例。复制来自G+的响应。谢谢Sam,括号确实可以用来转义保留字。我只是没有注意到在将它们放置到位后,错误行号发生了变化。我有一个辅助函数构建了一个另一个查询类似于select。我发现它试图组合一个更简单的示例。