2010-12-29 8 views
0

Sybase ASEデータベースでhibernate 3.5を使用しています。私のテーブルのテーブルにプライマリキーPK1があります。 プライマリキーの生成にselect generatorクラスを使用しました。SybaseとのHibernateのIDジェネレータ

<id name="pk1" type="java.math.BigInteger"> 
      <column name="PK_ID" /> 
       <generator class="select"> 
        <param name="key">unique</param> 
       </generator> 
</id> 

私は外部キーとしてPK_IDを使用してではなく、主key.I私はアイデンティティ・ジェネレータを使用する場合、これが動作しているようです

<property name="PK_ID1" type="java.math.BigInteger"> 
      <column name="SHIP_EVENT_ID" length="23" not-null="false" /> 
</property> 

、としてのマッピングを保持している1つの以上のクラスを持っていますそれは私が制約違反例外を示しています。新しい値が生成され、2番目のテーブルのpojoクラスに設定されています。

助けてください!バックエンドでのASEのようなエンジンで

よろしく、 Dwarak

答えて

0

、あなたのDDLの変更を行うには、いくつかのOOのフロントエンドを使用することをお勧めではありません。確かに、これはフロントエンドのバグですが、これだけではありません。さらに重要なのは、Sybaseの機能の約5%にしかアクセスできないことです。 ASEで無料で提供されるSybase Clientソフトウェアを使用しないでください。すべてのDDLタスクと管理タスク、そしてすべてのSQLタスク(DML、ストアドプロシージャ、SQLのテスト)用のInteractiveSQLをSybase Centralに提供します。それはより直接的なだけではなく、それは多く開発時間が速いです。オブジェクトを設定してテストした後、好きなフロントエンドを使用して、それらのオブジェクトに対してコマンド(ストアドプロシージャまたはテスト済みSQLのいずれか)を実行します。

関連する問題