2009-06-26 7 views
1

だからHibernate Firebirdの最新バージョンをサポートしています。これは本当に素晴らしいです。 しかし...古いデータベースでのGrails/Hibernateの使用。不足している関数を作成するには?

私はここでFirebird 1.5.2データベースを入手しました。私のGrailsアプリケーションは、このデータベースをHibernate経由で使用しています...これまでのところすべて素晴らしいです。

マイアプリは、自分のデータベースに知られていない機能を持つクエリを送信します。たとえば、関数LOWERは、Firebird 2.x以降でサポートされています。

私の質問: 私のデータベース用に特別なHibernate Dialectを入手することは可能ですか? 現在、私は以下を使用しています: dialect = "org.hibernate.dialect.FirebirdDialect"

この未知の機能をデータベースで処理するにはどうすればよいですか?

答えて

1

FirebirdDialectをサブクラス化し、異なる値を返さなければならないすべての関数を上書きすることで、独自のダイアレクトクラスを作成できます。

機能Hibernateは下部ケースのために使用される名前を変更する必要の簡単なケースでは、あなたは、単にあなたのHibernate設定で次のように設定できます

hibernate.query.substitutions toLowerCaseメソッド= mylower

しかし、 Firebird 1.5にはtoLowercase機能がありませんので、自分で実装する必要がありますas described in the Firebird documentation

+0

あなたのリンクが壊れているようです。 – bastianneu

+0

あなたを固定してください。リンクは今働いている。 – bastianneu

関連する問題