Проектирование базы данных системы бронирования железных дорог

#database-design

#проектирование базы данных

Вопрос:

Я разрабатываю систему бронирования железных дорог. У меня есть таблицы ниже.

 StationTable(Contails all the stations to which i can provide the railway service.)
<StationID>->PrimaryKey
<StationName>

TrainTable
<TrainNumber>-> PrimaryKey
<TrainName>
<SourceStationID>->FK StationTable(<StationID>)
<DestinationStationID>->FK StationTable(<StationID>)
  

Пассажир идентифицируется по идентификатору билета

    PassengerTable
    <TicketID>->Primary key
    <PassengerID>
    <PassengerName>
    <Age>
    <Sex>
    <Status>
  

Поскольку один пассажир может забронировать билет на многие поезда. Их отношение многие ко многим между TicketID и TrainID.

PassengerTrainTable -> FK PassengerTable() -> FK TrainTable()

Я не могу связать количество мест в поезде и статус. Как я могу связать их с текущей таблицей или как я могу перейти к новым таблицам.

Ответ №1:

Отношения «многие ко многим» решаются с помощью дополнительной таблицы. В этом случае таблица продажи билетов является естественной для вашего домена. См.пример здесь