1

두 테이블을 조인하는 테이블에서 레코드를 삭제하려고하는데 외래 키 관계로 인해이 작업이 중단되는 것 같습니다.외래 키가있는 조인 테이블에서 레코드를 삭제하는 방법 Asp.Net

외래 키 제약 조건은 데이터베이스에 적용되지 않으며 이상하게 발생하는 오류가 없음을 명심하십시오. 단순히 레코드를 삭제하지 않습니다. 또한 조인 테이블이 아닌 테이블에서 다른 레코드를 쉽게 삭제할 수 있습니다.

현재 사용하고있는 프레임 워크는 Asp.Net MVC2이지만 SqlCommand 개체를 사용하여 삭제하려고 시도했으나 작동하지 않아 프레임 워크에 기여하지 않았습니다. 한 가지 유의할 것은 저장 프로 시저를 통해 수행하거나 SQL Management Studio에서 쿼리를 수행하면 작동한다는 것입니다. 또한 앱이 현재 데이터베이스와 동일한 서버에 있지 않습니다.

여기에 아이디어가 있습니까?

미리 감사드립니다.

+0

예외가 발생하지 않는다고 가정하면 db.SaveChanges() 호출이 어디서 발생하는지 궁금합니다. 함수 호출 중입니까? (그 점에서 db는 어디에서 왔으며 using() 블록에 있습니까?). 큰 코드 샘플은 범위를 좁히는 데 도움이 될 수 있습니다. – user700390

답변

0

두 테이블

DataTable1 
ID[PK] 
Name 

DataTable2 
ID[FK] 
LastName 

이있는 경우이 두 테이블이 있다고 가정합니다. 당신이 에서 Datatable1을 기록 삭제 중하는 경우 테이블 Datatable2

먼저 외래 키 테이블 즉 Datatable2에서 기록을 삭제해야합니다에 ID 외래 키를 사용하고 있기 때문에 오류를 줄 것이다.

관련 문제