Я нахожусь в процессе разработки части базы данных для моего любимого проекта, и я нахожусь в этом затруднительном положении.
У меня есть 3 таблицы: PET, BOOKING, SERVICE.
PET (attributes):-
Pet_Id => Primary Key,
Pet_Name,
Pet_Species,
Pet_Breed,
DoB,
Gender
BOOKING (attributes):-
Booking_Id => Primary Key,
Booking_Location,
Booking_Date
SERVICE (attributes):-
Service_Id => Primary Key,
Service_Name
Ситуация такова, что служба M Bookings (БРОНИРОВАНИЕ) N Pets (PET), т. Е. Существует отношение кардинальности m: n между Bookings и Pets.Таблица, сформированная из-за этой взаимосвязи, называется SCHEDULE
, причем первичные ключи двух таблиц объединяются, чтобы сформировать первичный ключ SCHEDULE
. Я установил эту взаимосвязь из-за того, что существует несколько домашних животных.обслуживается посредством определенного бронирования в определенное время, и что конкретное домашнее животное может обслуживаться многими заказами в разное время.
Теперь одному домашнему животному в определенном расписании бронирования (ГРАФИК) может быть предоставлено несколько услуг, которыесродни отношениям m: n между расписаниями (SCHEDULE) и службами (SERVICE).
Как мне справиться с этим делом?Первое, что пришло в голову, - это иметь отношение m: n между таблицей расписания и таблицей услуг, как показано на рисунке ниже.
Но тогда Расписание уже является таблицей m: n.Может ли таблица с именем «A», созданная посредством отношения m: n, иметь отношение любой мощности с таблицей «B».
Если возможно, как я могу ее построить?Если нет, то как мне спроектировать отношения между вышеупомянутыми таблицами?