2017-11-21 1 views
0

今私は休止状態でテーブル(Customer)とそのフィールドをマッピングしたい生成されたIDを常にIDとして使用してプライマリキーが作成されるテーブルに対して、hibernateでプライマリキーを定義する方法はありますか?

CREATE TABLE customer (
    id number(11) generated always as identity (start with 1 increment by 1), 
    first_name varchar(45) DEFAULT NULL, 
    last_name varchar(45) DEFAULT NULL, 
    email varchar(45) DEFAULT NULL, 
    PRIMARY KEY (id) 
); 

以下のように私は、顧客テーブルを作成しました。テーブルCustomerの主キーIDをマッピングするには、どのような戦略(GeneratedType)を以下のように使用する必要がありますか?

@Id 
@GeneratedValue(strategy=GenerationType.IDENTITY) 
@Column(name="id") 
private int id; 

私はすべての戦略(AUTO,IDENTITY,TABLE,SEQUENCE)を試してみました。しかし、表に定義されているこのプライマリキーでは、どちらも機能していません。

顧客の保存中に異なるタイプのエラーを取得しています。

エンティティクラスの顧客にプライマリキーを定義する際にガイドして、顧客を正常に保存できるようにしてください。

答えて

0

それはいくつかのユニークなキーで行を選択し、主キー値を検索して、データベース・トリガーによって割り当てられたプライマリ・キーを、取得

select 

を使用してみてください。

関連する問題