BCNF 정규화 질문입니다. 0 0 475

by 호떡 [DB 모델링/설계] [2019.08.21 21:01:16]


안녕하세요.

다음과 같은 릴레이션 있다면

R(a, b, c, d)

FD = (a, b) -> (c, d) , (c -> b)

단연, 기본키는 ab 일 테고, c->b로 인해 bcnf를 위반하고 있는 거 같습니다. 

그래서 c->b를 분리해야 하니까

R(c, b) : c는 기본키 릴레이션 하나와

R(a, c, d) 릴레이션 하나로 나눌 수 있을 거 같은데 여기서 기본키는 a만으로는 안되니

(a, b) -> (c, d)를 결정하고 (c) -> (b)를 결정하니 (a, c) -> (d)를 결정할 수 있다고 보고 기본키는 (a, c)로 외래키를 (c)로 볼 수 있나요?

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입