私はスキーマ "MYSCHEMA"の下にoracle dbのテーブル "test"を持っています。JPAエンティティクラスのテーブル名のテーブル名に二重引用符を追加する方法はありますか?
select * from MYSCHEMA."test" works fine, but select * from MYSCHEMA.test
はエラーを与える:
table or view does not exist
私はJPAクエリ(のJava Springアプリケーション)を使用して、このテーブルからデータを取得しようとしています。
@Entity
@Table(name = "\"test\"", schema = "MYSCHEMA")
public Class MyClass {
}
JPAクエリでは、テーブル名の前後に二重引用符を使用しても、「テーブルまたはビューが存在しません」というエラーが表示されます。それを解決するには?
テーブル/ dbは既にいくつかの既存のアプリケーションにリンクされているため、テーブル名を編集/名前変更するはずがありません。
いくつかのJPAプロバイダ(例えばDataNucleusの)他の人はあなたがそれを自分で処理する必要があると主張しながら、あなたのためにそれを行います。どのJPAプロバイダがあなたですか? –
EclipseLink Neil Stockton – user1940878
あなたの 'persistence-unit-defaults'で' delimited-identifiers'要素を使うことができるかもしれません。もちろん、それはあなたの他のすべての識別子に影響し、他の問題を引き起こすかもしれません.... –