postgresのための代わりに、テーブルの列を期待します検出される。これは私の地元のSQLServer Expressなどのほか、ユニットテストで使用されているH2データベースのために働くHibernateは、私は私のIDの生成が定義されている
<changeSet author="david (generated)" id="1477051164467-23">
<createTable tableName="hibernate_sequences">
<column name="sequence_name" type="varchar(255)">
<constraints nullable="false"/>
</column>
<column name="sequence_next_hi_value" type="bigint"/>
</createTable>
</changeSet>
:hibernate_sequences
ためLiquiBaseを定義は次のようになります。 hibernateは、シーケンステーブルを使用する代わりに、データベースシーケンスを期待しています。org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: missing sequence [hibernate_sequence]
私は、TableGenerator戦略を使用すると、どのデータベースでもシーケンスを必要としないと考えました。我々はので、私はポータブルソリューションを必要とする製造に使用されるかのデータベースを知らないこの時点で休止5.0.11.Final
で春のブートを使用して
。 (最低でもOracle、MsSQL、Postgres、MySqlなどをサポートしています...)
アップデート: 私はローカルのpostgresをインストールしています。それは実際に使用されている(カウンターは3)が、私はどのエンティティによって手掛かりがありません。 エンベロープ監査を有効にするために、休止状態のエンバーも使用しました。 revinfoテーブルは別のシーケンスを使用しますが、これはliquibaseによって作成されます。判明
は、休止状態enversのデフォルトのエンティティは、それゆえシーケンス事前に
感謝の必要性を@GeneratedValue
を使用しています。より多くの情報が必要な場合はお気軽にお問い合わせください。
こんにちは、お返事ありがとうございます。私はこれを調べなければならない。私は、この基本クラスから継承しないエンティティをいくつか持っていますが、生成されたIDはなく、 '@ Id'アノテーションだけです。 – deekay
あなたは本当に '@ GeneratedValue'を持つ別のエンティティがあるという事実についてあなたが正しいので、私はあなたの答えを受け入れます。それは私自身のコードではなく、休止状態にあります。 – deekay