2010-04-14 4 views
6

des 테이블을 참조하는 desname을 가진 사용자 테이블을 가지고 있는데, 나는 desname을 사용자에 추가하려하지만 gettng입니다. 자식을 추가하거나 업데이트 할 수 없습니다. 행 : 외래 키 제약 조건 오류가 실패합니다.자식 행을 추가하거나 업데이트 할 수 없습니다. 외래 키 제약 조건이 적용되지 않습니다.

desname이 미리 채워져 그리고 난 그가 내가 HBM

+3

코드 조각 또는 DBSCHEMA 조각이를 알아내는 도움이 될 수 있습니다. – Hanseh

+1

@ sarah 코드를 게시하는 것이 좋습니다. – Nirmal

+1

@ sarah 당신이 쓰는 것에는 아무런 문제가 없으므로 이것을 해결하기위한 코드를 보여줘야합니다. – Kdeveloper

답변

4

이 오류의 가장 일반적인 발생이 생성 실패 (저장)를 MySQL을 사용하고 최대 절전 모드 MA 잘못 를하고있는 중이 야 user.Where에 대해 동일한 선택하고있는 외부 키가 참조하는 엔티티의 필수 인스턴스 이는 일반적으로 상위 엔티티의 작성 조작이 생략되거나 순서가 잘못되거나 약한 엔티티 작성을 시도하기 전에 상위가 데이터베이스에 올바르게 저장되지 않은 경우에 발생합니다.

레코드의 경우,이 특정 에러 메시지는 하이버 네이트가 연결되어있는 (MySQL) 데이터베이스에 쓰기를 시도 할 때만 발생한다. 예를 들어 코드는 의견에서 지적한대로 개별 문제를 해결하는 데 큰 도움이됩니다.

다른 사람 관심이 들어

는 SO이 특정 오류에 대한 많은 정보를 제공 https://stackoverflow.com/search?q=Hibernate+foreign+key+constraint+fails

관련 문제