데이터베이스 공부하는 도중 시험삼아 수강이라는 데이터베이스를 만들고 그 아래 아래와 같이 세개의 테이블을 만들어 봤습니다
학생 정보 테이블
학번(FK)
학년
이름
전공
학생 현재 수강과목 테이블
과목번호(FK)
분반
학번(학생 정보 테이블에서 PK를 줬습니다)
개설강좌리스트 테이블
과목번호(FK)
분반(FK)
교수명
강의실
학점
처음에는 이렇게 만들었는데 만약 학번이 1이라는 사람이 과목번호 a라는 것을 듣고있으때 학번 2라는 사람도 a라는 강좌를 듣고 있어 넣으려고하면
과목번호가 FK여서 안들어가지더라고요 그래서 생각해봤는데 개설강좌리스트에서 과목번호를 PK로 설정해서 현재 수강과목 테이블에 넣을려고하는데 이렇게 되면
현재 수강과목 테이블에는 FK가 하나도 없게되는데 듣기로는 테이블하나당 식별하기 쉽게하기 위해서 FK 하나는 설정해주는게 좋다고들었습니다.
그런데 이렇게 만들고보니까 기본키를 설정해 줄려고하면 다른 해결방식이 안떠오르는데 이럴때는 그냥 기본키를 포기하고 현재 수강과목 테이블을 PK 2개로 해도 상관이없나요?
가급적 DB 는 전문가가 조언해주는건 그냥 10%만 참고하센. 결국 학생 정보 테이블, 개설강좌리스트 테이블 을 참고로 학생 현재 수강과목 테이블 에 데이터를 넣겠다는 말인데.. 기본키를 포기 하고 가는게 가장 쉬움 그리고 결국 학생정보 테이블을 이용해서 join 만 잘하면 되는거임.. DB 어렵게 쓸려고 하면 한정없이 어려움..
ㄴ 그렇군요 답변 감사합니다!