집 >데이터 베이스 >MySQL 튜토리얼 >내 SQL Server INSERT 문이 FOREIGN KEY 제약 조건과 충돌하는 이유는 무엇입니까?
SQL Server의 FOREIGN KEY 제약 조건 오류 문제 해결
SQL Server에서는 "INSERT 문이 FOREIGN KEY 제약 조건과 충돌했습니다." 오류가 자주 발생합니다. 이는 외래 키 관계를 통해 다른 테이블에 연결된 테이블에 데이터를 삽입하려고 할 때 발생합니다.
문제:
이 오류는 INSERT 작업 중에 대상 테이블의 외래 키 값이 참조 테이블의 기존 기본 키와 일치하지 않는 경우 발생합니다.
오류 메시지 예:
<code>Msg 547, Level 16, State 0, Line 1 The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Sup_Item_Sup_Item_Cat". The conflict occurred in database "dev_bo", table "dbo.Sup_Item_Cat". The statement has been terminated.</code>
이 메시지는 Sup_Item
외래 키 값('123123')이 sup_item_cat_id
테이블에 기본 키로 존재하지 않기 때문에 Sup_Item_Cat
테이블에 대한 삽입 시도가 실패했음을 나타냅니다.
해결책:
수정 방법은 간단합니다. 삽입하려는 외래 키 값이 참조 테이블의 기존 기본 키와 일치하는지 확인하세요. 이 예에서는 일치하는 sup_item_cat_id
이 Sup_Item_Cat
에 이미 존재해야 합니다.
SQL Server Management Studio의 sp_help
명령을 사용하여 외래 키 제약 조건 및 관련 테이블을 검사합니다. 예를 들어 sp_help 'dbo.Sup_Item_Cat'
은 해당 테이블의 외래 키 제약 조건에 대한 세부 정보를 제공하여 참조된 테이블과 열을 식별하고 INSERT 문이 유효한 데이터를 사용하는지 확인하는 데 도움을 줍니다.
위 내용은 내 SQL Server INSERT 문이 FOREIGN KEY 제약 조건과 충돌하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!