私たちは、Hibernate 3.0.3を使用するレガシーアプリケーションを持っています。私たちはHSQLDBで単体テストを行います。スキーマ名「transactio0_が」NVL関数の前に付加されていることをHibernateがHsql関数にスキーマ名を追加するのはなぜですか?
select
transactio0_.REASON_ID as REASON1_0_,
transactio0_.DESCRIPTION as DESCRIPT2_93_0_,
transactio0_.REASON_NAME as REASON3_93_0_
from APPS.MTL_TRANSACTION_REASONS transactio0_
where transactio0_.REASON_ID=54
and transactio0_.NVL (transactio0_.disable_date, NOW() + 1 DAY) > NOW()
注:Hibernateが生成されたクエリの一つは、このようになります。どうして? Hibernateをどうやって設定すればいいのですか?
次に、使用しているHSQLDBのバージョンについて説明します。現在、HSQLDB 2.2.8を使用しており、HSQLDB 2.3.2に移行したいと考えています。 上記のクエリはHSQLDB 2.2.8でうまく動作しますが、 "無効なスキーマ名"のエラーでHSQLDB 2.3.2で失敗します。 HSQLDB 2.2.2のようにクエリを正常に実行できるようにHSQLDB 2.3.2を設定できる方法はありますか?