Разработка базы данных для бронирования компьютеров в лабораториях - PullRequest
0 голосов
/ 26 сентября 2018

Я хочу создать приложение, позволяющее пользователям бронировать компьютеры в лаборатории, если они хотят использовать его время от времени. Пользователи могут бронировать компьютеры в течение следующих 15 дней.Итак, как мне создать базу данных для этого приложения.

Ответы [ 2 ]

0 голосов
/ 27 сентября 2018
  1. Начните с определения того, какими будут ваши сущности и атрибуты.Лучше, если вы сможете сначала сделать концептуальный дизайн.

  2. Чем вы разрабатываете его логически.

Например, ваши сущности могут быть:


ПОЛЬЗОВАТЕЛИ, КОМПЬЮТЕРЫ, БРОНИРОВАНИЕ.Ваши атрибуты могут быть:

ПОЛЬЗОВАТЕЛИ ( SomeUniquePersonalIDnumber , Имя, Фамилия, E-mail *, PhoneNumber *)

PrimaryKey, выделенный жирным шрифтом.Со звездочкой * Необязательно

КОМПЬЮТЕРЫ ( UniqueComputerSerialNumber , NumberOfComputerInLab)

БРОНИРОВАНИЕ ( AutoincrementNumber , UserPK , ComputerPK, DateOfReservation, TimeFrom, TimeTill)

PrimaryKey состоит из трех атрибутов, делающих его уникальным.Один и тот же пользователь может зарезервировать один и тот же компьютер с течением времени, но поле AutoincrementNumber сделает составной PK уникальным.

RESERVATIONS (UserPK), ссылающийся на USER (SomeUniquePersonalIDnumber) RESERVATIONS (ComputerPK), ссылающийся на COMPUTERS (UniqueComputerSerialNumber)


Определите, какие типы полей будут иметь эти атрибуты (Integer / Varchar / ...) на основе языка запросов, который вы хотите использовать. Переведите все вышеперечисленное в команды для создания базы данных,столы и т. д.
0 голосов
/ 26 сентября 2018

Просто возьмите лист бумаги и начните с нормализации https://en.wikipedia.org/wiki/Database_normalization.

Если я ищу сущности в вашем вопросе, я вижу следующие сущности:

user

computer

booking

Затем вам нужно вычислитькакие свойства принадлежат этим объектам и отношения между ними.Вы можете создать ERD, если хотите, и начать создавать модели Ruby on Rails.

В Ruby on Rails, если вы генерируете модель, модель имеет поле date_at по умолчанию.Я думаю, что вы можете использовать это, чтобы выяснить конкретное время и проверить, прошло ли 15 дней с момента создания этого бронирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...