現在、私はOracleをデータベースとして使用するwebappを開発しています。 WebアプリケーションがSybase ASEでも動作する必要があることはすでに知っています。私のOracleデータベースはシーケンスを使用してIDを生成し、ドメインクラスをマップしてそれらのシーケンスを使用しました。私が知る限り、Sybase ASEにはシーケンスはなくアイデンティティがあります。そして、ここに私の問題があります。 OracleとSybaseで動作するコード/設定の処理方法。ドメインごとにIDの「条件付きマッピング」が行われます。Grails - 条件付きマッピング
すでにマップされているデータベース以外のデータベース用にwebappをビルドするたびに、コメントを付けたり、コメントを外したりしたくないだけです。 誰に何をすべきか考えてもらえますか?
OracleとSybaseの別の違いはマッピングに影響します(私はdbCreate = "create"
を使用してデータベース構造を生成しません)。この時点で私は何も見ません。 経験がありますか?
EDIT: それは両方のデータベースのための1つのマッピングを行うことができないということが判明しました。私のOracle構造体は、列名と表名に引用符を使用します。また、Sybase ASEでは引用符を使用できません。特定のプラットフォームでwebappをビルドするときに、私の(いいやかっこいではない)解決策が(コメント/コメント解除)マッピングを変更しています。
Btw私はGrailsの巨大なファンであり、このマッピングのことは欠点のようです。私が "純粋な" Hibernateを使用していた場合、xmlファイルに2つのマッピングがあり、基礎となるデータベースに応じてそれらを変更します。 Grailsは2つのマッピングを持つ可能性はありません。
それはいいですね! Sybaseのインストールが完了したら、試してみます。 – emstol
残念ながら、私はそれが働いたかどうかを確認することはできません。私はそれだと信じています...私のOracle idの名前は( "SomeTableID"のように)引用されています。Sybse ASEでは、列名/表名に引用符を使用できません。そして、私が恐れていたことがここにあります。私は両方のデータベースのための1つのマッピングを持つことはできません。 – emstol