2014-12-07 2 views
0

나는 학교 프로젝트를하고 있는데 나는 테이블 항목과 ticketItem을 가지고있다. TicketItems는 테이블 항목 (Item_ID)의 외래 키를 포함합니다. 그래서 만약 내가 하나의 정보를 삭제하고 그것의 ID가 또 다른 테이블에 있다면? 그것은 나에게 오류를 던질 것이다. 당신이 항목을 삭제하려는 경우 당신은 자식 테이블 (ticketitems) 참조하는 부모 테이블 (items)를 가지고 일반적으로외래 키 필드를 삭제하는 방법은 무엇입니까?

+0

이 답변을 확인하십시오 - http://stackoverflow.com/a/14381227/1080354 – gotqn

+0

[가능한 외래 키 참조 작업을 변경하는 방법? (행동)] (http://stackoverflow.com/questions/3359329/how-to-change-the-foreign-key-reference-action-behavior) –

답변

2

,,, 당신은 또한 ticketitems 테이블에 작업을 수행하고 싶습니다.

ticketitems에 대한 제약 조건이 없으면 item_ID을 더 이상 사용할 수 없으므로 해당 테이블에 고아 행을 남겨 둡니다.

은 아마 당신이 필요로하는 모든입니다에 : 지금 당신은 ticketitems에서 삭제 한 것을

delete from ticketitems where item_ID = ItemIdYouWantToDelete

너무 items에서 삭제할 수 있습니다.

외래 키에 대한 제약 조건을 정의 할 때 DBMS에서이를 관리하는 방법을 지정할 수 있습니다. 그것은 당신의 질문 아래 코멘트에있는 링크에 설명되어 있습니다.

관련 문제