使用保留字TimeStamp作为字段名称

问题描述 投票:0回答:2

除了 SQL Server 和 SQLite 之外,我还正在扩展现有应用程序的数据层以与 Firebird 2.5 配合使用,但我遇到了障碍。

我有一个名为 TimeStamp 的字段,它将数据/时间存储为 TimeStamp 类型。这在类型为日期时间的 SQL Server 和 SQLite 下工作正常,但在 Firebird 上失败。以下 SQL:

SELECT SysTrnId,'TimeStamp' from "TRANSACTIONS"

看似有效,但 TimeStamp 字段返回为字段名“CONSTANT”,内容是文本“timestamp”

是否可以在 Firebird 下执行此操作,或者我是否必须重命名该字段并更改其他数据层中的代码。

sql firebird firebird2.5
2个回答
11
投票

Firebird 转义字符是双引号

"
。请注意,在 Firebird 中,如果您有一个必须用双引号转义的字段,它也会区分大小写。因此,如果您将字段声明为
TimeStamp
,那么
select "TIMESTAMP" ...
将失败并出现字段未找到错误。


2
投票

我不知道它是否有效,但是您是否尝试过在“TimeStamp”周围使用双引号, 单引号通常表示常量字符串。

© www.soinside.com 2019 - 2024. All rights reserved.