0

나는이 테이블을 가지고 있습니다 : 영화, 세션 (datetime에 표시되는 영화) 및 사용자.데이터베이스를 만들려면 터너리를 해결하십시오

사용자는 구체적인 세션에서 영화를 예약 할 수 있습니다. 그것을 그리기 나는 그것을 좋아 있습니다

movie **1** ----- **n** sesion 
       | 
      **n** 
      User 

나는이 같은 테이블을 만들 생각했다 :

영화 (ID, 제목, 분) Sesion (ID, idMovie, 날짜가) 사용자 (ID, 이름을) 예약 (idSesion, idUser, numTickets)

괜찮습니까? 아니면 내 예약 테이블에 idMovie를 포함해야합니까?

감사합니다.

답변

1

... 날짜/시간에 표시되는 영화 ...하지만 영화가 세션에있을 때 목록 날짜 시간을 얻으려면 어떻게 할 수 있습니까? 예약 테이블에 movieID가 필요하다고 생각하지 않지만 세션 테이블에 movieID가 있어야 할 수도 있습니다.

그러면 사용자를 알거나 영화 나 세션에 참석하는 모든 사용자를 찾을 수 있습니다. 예약에 영화 ID를 추가하면 중복 된 참조가되고 다른 외래 키 관계로 인해 가역성이 있으므로 필요없는 동기화를 계속 유지해야합니다.

+0

예, 실수였습니다. 세션 테이블에 idMovie를 추가했습니다. 그러니 ... 예약 할 필요가 없습니까? 감사. – Alvaro

+0

아니 당신이 품위의 깊은해야하므로 빠른 쿼리는 당신에게 필요한 것을 얻을 것이다처럼 보이지 않습니다. 예약에 movieID를 추가하지 않으면 테이블을 열어 향후 다른 유형의 예약을 할 수 있습니다. 라이브 쇼, 저녁 식사를위한 표 또는 표. 당신이 필요로하지는 않지만 세션에 대한 예약은 그것을 추상적으로 유지합니다. – Pareshkumar

1

예약 테이블에는 있지만 세션 테이블에는 idMovie가 필요하지 않습니다. 세션이 어떤 영화에 속하는지 어떻게 알 수 있습니까?

관련 문제