Hibernate によって作成されたデータベース シーケンスに関して、助けを求めたいと思います。
パートナー テーブルの個々のシーケンスを作成するために、エンティティ クラスにこの注釈 (以下のコード) があります。デプロイ中に import.sql を使用してデータベースにテスト データを挿入し、制約違反を回避したいので、シーケンスは 1000 から始まると予想しています。しかし、データを保持したい場合、制約違反の例外が発生し、partner_id = 2 が既に存在するという事実が通知されます。何かを見逃したようです。
@Id
@Column(name = "partner_id")
@SequenceGenerator(initialValue=1000,
allocationSize=1,
name = "partner_sequence",
sequenceName="partner_sequence")
@GeneratedValue(generator="partner_sequence")
private Long partnerId;
生成されたシーケンスは次のようになります。
CREATE SEQUENCE partner_sequence
INCREMENT 1
MINVALUE 1
MAXVALUE 9223372036854775807
START 1
CACHE 1;
ALTER TABLE partner_sequence
OWNER TO postgres;
私はpostgres 9.1を使用しています。
私は何か見落としてますか?これが、私が望むものにどのようにアプローチできるかです。
事前に助けてくれてありがとう!