我有以下hibernate实体:
@Entity
@Table(name = "News")
public final class News implements Serializable, IEntity {
private static final long serialVersionUID = 3773281197317274020L;
@Id
@SequenceGenerator(name = "NEWS_SEQ_GEN", sequenceName = "NEWS_SEQ")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "NEWS_SEQ_GEN")
@Column(name = "NEWS_ID", precision = 0)
private Long newsId; // Primary key
@Column(name = "TITLE")
private String title;
@Column(name = "SHORT_TEXT")
private String shortText;
@Column(name = "FULL_TEXT")
private String fullText;
@Temporal(TemporalType.DATE)
@Column(name = "CREATION_DATE")
private Date creationDate;
@Temporal(TemporalType.DATE)
@Column(name = "MODIFICATION_DATE")
private Date modificationDate;
@OneToMany(cascade = CascadeType.REMOVE, orphanRemoval = true)
@JoinColumn(name = "NEWS_ID", updatable = false, referencedColumnName = "NEWS_ID")
@OrderBy("creationDate ASC")
private List<Comment> commentsList;
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@JoinTable(name = "NEWS_TAG", joinColumns = { @JoinColumn(name = "NEWS_ID") }, inverseJoinColumns = { @JoinColumn(name = "TAG_ID") })
private Set<Tag> tagSet;
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@JoinTable(name = "NEWS_AUTHOR", joinColumns = { @JoinColumn(name = "NEWS_ID") }, inverseJoinColumns = { @JoinColumn(name = "AUTHOR_ID") })
private Set<Author> author;
第二点:
@SequenceGenerator(name = "COMMENTS_SEQ", sequenceName = "COMMENTS_SEQ")
@Entity
@Table(name = "Comments")
public class Comment implements Serializable, IEntity {
private static final long serialVersionUID = 3431305873409011465L;
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "COMMENTS_SEQ")
@Column(name = "COMMENT_ID", precision = 0)
private Long commentId; // Primary key
@Column(name = "NEWS_ID")
private Long newsId;
@NotEmpty
@NotNull
@Column(name = "COMMENT_TEXT")
private String commentText;
@Temporal(TemporalType.DATE)
@Column(name = "CREATION_DATE")
private Date creationDate;
当我试图删除实体新闻时,我得到异常ORA-02292:完整性约束(ROOT。SYS_C007062)违反了找到的子记录。因此,如果我删除属性"updatable=false",它会尝试将可为空的字段设置为属性Comment。我犯了什么错?拜托,帮帮忙。谢谢。
因为你的新闻记录与评论有一对一或一对多的关系。你很可能没有指定一个CACASDE ON DELETE子句在定义你的表.为了删除实体NEWS你必须确保它的所有相关的注释记录被删除或正在引用另一个NEWS记录.基本上ORA 02292异常的定义。
我的应用程序读取一个正在批处理作业中处理的大文件,如果它有代码“D”,它就删除account表中的行。此帐户表与CONSUMER_ID列链接的消费者表具有外键关系。删除操作的顺序正确,但有时会导致违反完整性约束的错误,从而导致作业失败。
我有一个类有多个@OneTomany关系(有类似+5000个子实体),当我尝试执行deleteAll时,我得到标题错误 我试着添加 而且 我究竟如何一致地删除所有这些实体?到目前为止,自从这个问题开始以来,我已经手动删除了表(几天前所有实体都被删除了),但这真的让我很恼火,但我想不出该怎么做。 谢谢!
我有一个由四个表组成的数据库。关系模式如图所示: 下面是几行: 现在我正试图删除所有者id为OW1的所有者。因为id是所有者表中的主键,而在其他表中是外键,所以不允许我删除该行。以下是我尝试过的SQL: 它返回: 我不允许在关系图中设置删除规则为“级联”。请帮助:(
当我想删除任何课程的id时,也可以删除与该课程相关的复习。但是控制台上出现了一个insue。 Hibernate java ORA-02292:违反完整性约束-找到子记录 Course.java Review.java 我试图使用,但没有任何改变。 我如何解决这个问题?
问题内容: 嗨,我正在Oracle SQL开发人员中开发数据库,试图从另一个表访问foriegn键。我目前正在使用以下CREATE语句创建的ItemOrdered表 如您所见,我具有以下前键Ords和BeltID。 现在,当我尝试运行以下语句时 它给了我以下错误 违反-找不到父密钥02291。00000-“违反完整性约束(%s。%s)-找不到父密钥” 如果需要,我已经提供了Ords CREAT
我试图为和创建会话,这两个表都与相同的外键关联到登录表-但是当我为创建种子时,我得到了错误,在我的另一个问题在这个链接中,我没有以最好的方式解释,但得到了一些关于使用(党-角色-关系模型)和这段代码下面他更多的想法有关已解决的问题链接 创建表和主键 创建表和主键 创建表以及主键和外键 使用表为管理员创建会话的过程: 使用表为用户创建会话的过程: 创建管理会话时,我收到一个错误 我做错了什么?