【发布时间】:2014-07-26 10:53:04
【问题描述】:
我遇到了一个奇怪的问题。客户在 FirebirdSQL 中命名了一个字段start。现在我无法选择此字段:
select t.start from table t
给我错误:Invalid token
知道如何选择这个字段吗?
【问题讨论】:
-
select "start" from table? -
这也不起作用。它给了我一个常量
start -
这个 SO 答案可能有用:1800841/using-reserved-word-timestamp-as-a-field-name-firebird-2-5。基本上,还要检查列的字母大小写。
-
@AlexK。 Firebird 确实有引用标识符,但 lueda 可能使用已弃用的旧方言 1 而不是方言 3。
-
@lueda 据我所知不是这样,但我不希望您能够在不引用任何一个的情况下创建带有保留字的名称(除非这些字后来被保留)。但说真的:除非你有充分的理由坚持使用方言 1(我唯一知道的是它在乘法和除法中使用
NUMERIC/DECIMAL计算的方式),否则我建议迁移。