2009-07-23 9 views
1

レガシー・オラクル・データベースでlimitと呼ばれる列を参照する必要があります。また、ユニット・テストにSQLiteのインメモリー・データベースを使用する必要があります。 これを達成するために、マッピングファイルでバッククォートを使用することを読みました。 limitはSQLiteでうまく動作しますが、クエリのoracleとbarfsで "制限"を解決します。NHibernateの予約語

この機能はoracleで正しく実装されていますか、または何か不足していますか?

乾杯、

ロブ

UPDATE

列がその周りに引用符を使用して作成されていなかったようだが、NHibernateのは予約としてそれを認識し、それの周りに引用符を置く:/

答えて

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 
---------- 
+0

おかげで、それはクエリで解決されて正確にどのようにthatsの:。 支払いをSELECT「リミット」ORA-00904をスロー支払い からlimit7_8_0_として:「リミット」:無効識別子:/ – theGecko

+0

入手しました、更新情報: – theGecko