Playframework Play framework OneTONE删除引用完整性
我得到了JUnit测试的引用完整性约束冲突。使用playframework和我的两个实体如下所示Playframework Play framework OneTONE删除引用完整性,playframework,cascading-deletes,referential-integrity,Playframework,Cascading Deletes,Referential Integrity,我得到了JUnit测试的引用完整性约束冲突。使用playframework和我的两个实体如下所示 @Entity public class User extends Model{ public String email; public String password; @OneToOne(mappedBy="user",cascade=CascadeType.ALL) public Patent patent; } @Entity public class Patent extends
@Entity
public class User extends Model{
public String email;
public String password;
@OneToOne(mappedBy="user",cascade=CascadeType.ALL)
public Patent patent;
}
@Entity
public class Patent extends Model{
@OneToOne
public User user;
}
在我的Junit测试中,以下行失败
User.findById(user.id)._delete();
Referential integrity constraint violation: "FK340C82E547140EFE: PUBLIC.PATENT FOREIGN KEY(USER_ID) REFERENCES PUBLIC.USER(ID)"; SQL statement:
delete from User where id=? [23003-149]
谢谢您应该只对关系的所有者使用一个@OneToOne注释。在您的情况下,用户拥有该专利,因此您可以从您的专利实体中删除以下内容:
@OneToOne
public User user;
请使用delete重试此操作