Java com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:无法删除或更新父行:外键约束失败
我将按id删除对象,但出现如下错误: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:无法删除或更新父行:外键约束失败(Java com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:无法删除或更新父行:外键约束失败,java,spring,hibernate,spring-boot,jpa,Java,Spring,Hibernate,Spring Boot,Jpa,我将按id删除对象,但出现如下错误: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:无法删除或更新父行:外键约束失败(mydatabase
mydatabase
FKqgsllo6dm5kdx7ptc3qu5mefd
外键(auditor\u group\u id
)引用auditor\u group
(auditor\u group\u id
)
我按id删除的方法是:
@DeleteMapping("/assignment-audit/{id}")
public ResponseEntity<String> deleteAssignmentAudit(@PathVariable("id") long id) {
System.out.println("Delete AssignmentAudit with ID = " + id + "...");
assignmentAuditRepository.deleteById(id);
return new ResponseEntity<>("Assignment Audit has been deleted!", HttpStatus.OK);
}
AuditorGroup.java
@Entity
@Table(name = "auditor_group")
public class AuditorGroup implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long auditorGroupId;
@Column(name="group_desc")
private String groupDesc;
@Column(name="from_date")
private String fromDate;
@Column(name="to_date")
private String toDate;
}
AssignmentAuditRepository.java
public interface AssignmentAuditRepository extends JpaRepository<AssignmentAudit, Long> {
}
公共接口分配AuditRepository扩展了JpaRepository{
}
我只需要通过其
id
删除assignmentAudit
,这样selection
和auditGroup
在assignmentAudit
被删除时保持不变且不受影响。您必须从@manytone
映射中删除cascade=CascadeType
或者更改它,这样就不包括CascadeType.DELETE
。我怎么能只忽略所有类型的CascadeType.DELETE?我需要确切的代码来更改它?我更改并工作了:)非常感谢您的帮助
@Entity
@Table(name = "auditor_group")
public class AuditorGroup implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long auditorGroupId;
@Column(name="group_desc")
private String groupDesc;
@Column(name="from_date")
private String fromDate;
@Column(name="to_date")
private String toDate;
}
public interface AssignmentAuditRepository extends JpaRepository<AssignmentAudit, Long> {
}