NHibernate中的保留字

时间:2009-07-23 10:05:38

标签: oracle nhibernate

我需要在旧版oracle数据库中引用一个名为limit的列,并使用SQLite内存数据库进行单元测试。 我已阅读过在映射文件中使用反引号来完成此任务; limit在SQLite中工作正常,但在查询中解析为oracle和barfs中的“限制”。

这个功能是否正确地为oracle实现,或者我错过了什么?

干杯,

罗布

更新

看来这个列并没有用引号创建,但是NHibernate认为它是保留的并且引用了它:/

1 个答案:

答案 0 :(得分:2)

在Oracle中,您使用双引号来引用名称为保留字的对象:

SQL> create table a (number number);

create table a (number number)
                ^
ORA-00904: : invalid identifier

“NUMBER”是保留字。但是,您可以:

SQL> create table a ("number" number);

Table created

SQL> select "number" from a;

    number
----------