상호참조에 대해서...

케바케 2014.11.21 00:02 Views : 4451

안녕하세요?


MySQL 사용하다 최근 MSSQL 을 사용하는데 질문이 있어 문의 드립니다.


MSSQL 2008 기준 디자이너를 통해 데이터베이스 다이어그램을 이용하는 도중 문득 문제가 생겼습니다..



제목 없음.png


Member 테이블이 부모 입니다.


Product.Comment 테이블 MemberID 는 Member 테이블의 MemberID 를 참조(외래키) 하고 있고,

Product.Comment.Reply 테이블 CommentID 는 Product.Comment 테이블의 CommentID 를 참조(외래키) 하고 있습니다.


여기 까지는 당연히 문제 없습니다.


A사용자가 남겼던 코멘트 게시물에 대해 A사용자가 탈퇴를 한경우 A사용자의 코멘트는 모두 삭제되어야 하니까요.


근데 문제는 다음 입니다.


Product.Comment.Reply 테이블의 MemberID 가 Member 테이블의 MemberID 를 참조하는경우


상호 참조에러로 외래키를 지정할 수 없습니다.


B사용자가 A사용자의 게시물에 대한 댓글을 남겼는데 만약 B사용자가 탈퇴를 하는 경우 당연히 남겼던 리플은 삭제되야 합니다.


1. 리플은 해당 코멘트게시물이 삭제되는경우 삭제

2. 사용자가 탈퇴시 남겼던 코멘트 리플 삭제


위 두가지 요건을 만족해야 참조무결성이 보장되는게 맞는거 같은데


어째서 상호참조 에러를 뿜는건가요?


CASCADE 를 주는 대신 NO ACTION, NULL 을 하게 되면 해당 사용자가 탈퇴해도


찌꺼기 리플은 남게되는데 꼭 CASCADE 를 주고 싶습니다.


해결 방안이 있을까요?

No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 23438
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 12418
8380 원격지 DB 연결 초보적인 질문드립니다.ㅠㅜ [6] 홍야홍야 2014.11.29 3261
8379 소수점을 포함하는 값에서 정수와 소수점 분리 어찌 하나요 함수가 있나요? [2] 우영호수 2014.11.28 4211
8378 MS SQL Sever2012 초보질문 [1] 하늘빛물망초 2014.11.28 2808
8377 커서 이용한 반복 작업 방법, 내용 수정 [1] park87 2014.11.27 3282
8376 달력을 쿼리로 만들어야 하는데 도움을 요청드립니다. [1] 청국장 2014.11.27 3265
8375 Primary Key 중복으로 인한 에러발생판단방법에 대한 질문입니다. [5] 희망나라 2014.11.27 7968
8374 row를 column명과 값으로 넣고 싶은데요... [1] 쿵쿵 2014.11.27 2546
8373 하나로 합쳐서 [2] 마힐링 2014.11.26 2497
8372 Pivot 호환성 문제 .... [1] 휘리릭소 2014.11.26 3169
8371 복합인덱스가 사용되지 않는경우에 관한 질문임다. [1] Jeyong 2014.11.26 2683
8370 sql문 요청 드립니다. [5] 호짱 2014.11.25 2339
8369 쿼리문의입니다. xml 데이터 풀어헤치기? ㅠ ㅠ [3] 더따뜻한 2014.11.25 2302
8368 복제 구성시 다른서버에서 구독할때 [1] 파릇파릇 2014.11.24 5606
8367 고수님들께 날짜검색 질문드립니다. [2] 김현민_284902 2014.11.24 2144
8366 mssql 초급자가 쿼리질문 드립니다 [3] Sinlay 2014.11.24 2711
8365 초보적인 질문입니다. where like '%' 입력 받고 싶을때 [1] 휘댕 2014.11.23 2494
8364 수량 합계 쿼리 요청드립니다. [3] 뇽이 2014.11.21 2984
» 상호참조에 대해서... 케바케 2014.11.21 4451
8362 윈도우 인증과 SQL 인증시 네트워크 공유 폴더 접근 권한 차이? [1] ADA 2014.11.20 3625
8361 비교 ^^.. [4] 마힐링 2014.11.20 2395





XE Login