2011-01-20 4 views
2

私たちはシステムをアウトソーシングしています。一見すると、CASEまたはFROMという名前のテーブルとフィールドがいくつか見えます。これはOracle 10g DBであり、Java、Hibernate、C#、C++からこれらのデータを消費しています。予約語として指定されたOracleテーブルを取得しましたが、どの問題が発生する可能性がありますか?

特別なことはありますか?

他の投稿で見たように、これはコードの可読性に影響するため推奨されていませんが、他に重大な問題がありますか?

ありがとうございます!

答えて

3

Oracleで予約語をエスケープするには、二重引用符で囲む必要があります(この場合は表名)。 IE:

SELECT * 
    FROM "CASE" 

"ORA-00903:無効なテーブル名"というエラーが表示されます。 IIRCでは、Oracleは二重引用符で囲まれたテキストを大文字と小文字を区別して扱います。したがって、この例の問合せを使用すると、表名が小文字で作成されていてもエラーが発生します。

それ以外は、名前のついていないエンティティ/属性の通常の問題しか見ることができません。

+0

はい、大文字と小文字の区別が重要です。 –

+0

これは気にしていますが、何も起こりません。私たちはまだ名前を変更するよう求められる段階にあります。それは合理的ですか? – jhurtado

+0

@Jhurtado:テーブル名を変更することができれば、是非してください。私はORMに経験を持っていないので、どのように正常に彼らが状況に対処するのか知っていますが、それは懸念の原因です。 –