我的 PostgreSQL 表的 id 类型为bigserial
,这意味着它们是在插入行时生成的(因此,INSERT
语句中未提供 id 列的值)。我很难<generator class="...">
在我的 XML 映射文件中找到该属性的正确值。
下面的代码是我发现的最接近 Postgres 的代码,但它仍然SELECT nextval(...)
在插入之前对序列执行 a (并在插入时明确包括 id 字段的值)。我只是希望 Hibernate 根本不包含 id 字段值,从而允许 Postgres 自己完成生成值的工作。
<id name="id" column="id" type="java.lang.Long">
<generator class="sequence">
<param name="sequence">my_sequence_name</param>
</generator>
</id>