新实体以 NULL id (id=0) 存在
New entity persisted with NULL id (id=0)
我正在使用 Hibernate 4.3.11。
我有以下实体:
@Entity
@Table(name="ESP_RETARD")
public class ESP_RETARD implements Serializable
{
private static final long serialVersionUID = 1L;
@Id
@SequenceGenerator(name = "pk_seqret", sequenceName = "ESP_RETS_SEQ1", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "pk_seqret")
@Column(nullable = false)
@NotNull
private long idRetard;
我试图在 ESP_RETARD 上保留一个新实体。
但是,我遇到了一个问题:添加了一个新实体,但是,它的 id 是 0。
第二次添加新的,出现异常:
javax.persistence.PersistenceException:
org.hibernate.exception.ConstraintViolationException: could not
execute statement
...
Caused by: org.hibernate.exception.ConstraintViolationException: could
not execute statement
...
Caused by: java.sql.SQLException: ORA-00001: unique constraint
(EDTINGA.SYS_C009525) violated
知道:当我使用:
- 休眠 3
those jars,
我没有得到这个问题。
- 但是当我使用 those jars 升级到 Hibernate 4.3.11 后,我遇到了这个异常。
==> 所以这是 jar 的问题,我想必须将它遗漏的 jar 添加到 Hibernate 4.3.11.
请问您对解决该问题有什么想法吗?。
非常感谢先生。
您可以尝试删除整个实体,然后使用 new table name 和 new column name 重新创建它对于 id.
别忘了更改 @SequenceGenerator
和 @GeneratedValue
的提名。
的确,@Column(nullable = false)
和 @NotNull
都没有必要。
@Id
@SequenceGenerator(name = "pk_seqret1", sequenceName = "RETS_SEQ1", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "pk_seqret1")
private long idRetard;
HTH.
我正在使用 Hibernate 4.3.11。 我有以下实体:
@Entity
@Table(name="ESP_RETARD")
public class ESP_RETARD implements Serializable
{
private static final long serialVersionUID = 1L;
@Id
@SequenceGenerator(name = "pk_seqret", sequenceName = "ESP_RETS_SEQ1", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "pk_seqret")
@Column(nullable = false)
@NotNull
private long idRetard;
我试图在 ESP_RETARD 上保留一个新实体。
但是,我遇到了一个问题:添加了一个新实体,但是,它的 id 是 0。
第二次添加新的,出现异常:
javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not execute statement
...
Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement
...
Caused by: java.sql.SQLException: ORA-00001: unique constraint (EDTINGA.SYS_C009525) violated
知道:当我使用:
- 休眠 3 those jars, 我没有得到这个问题。
- 但是当我使用 those jars 升级到 Hibernate 4.3.11 后,我遇到了这个异常。
==> 所以这是 jar 的问题,我想必须将它遗漏的 jar 添加到 Hibernate 4.3.11.
请问您对解决该问题有什么想法吗?。 非常感谢先生。
您可以尝试删除整个实体,然后使用 new table name 和 new column name 重新创建它对于 id.
别忘了更改 @SequenceGenerator
和 @GeneratedValue
的提名。
的确,@Column(nullable = false)
和 @NotNull
都没有必要。
@Id
@SequenceGenerator(name = "pk_seqret1", sequenceName = "RETS_SEQ1", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "pk_seqret1")
private long idRetard;
HTH.