Задать вопрос
@nevatas

Всё ли нормально в моей БД?

Здравствуйте, по своей специальности являюсь графическим дизайнером, решил немного расширить свой кругозор и выучить php/mysql. Что бы учиться на практике я поставил себе задачу разработать полный технический клон мобильной браузерной игры (ahero.ru). И уже на этапе проектировки БД возникло ощущение что я делаю что-то не так.

Вкратце изложу суть своей БД:
В игру играют пользователи (таблица: users), у каждого пользователя есть несколько персонажей(таблица: userchars), всего в игре их 12(таблица: chars), персонажи открываются по мере прохождения игры. В любой момент времени в отряде пользователя может быть не более трёх персонажей (отряд - активные персонажи, непосредственно участвующие в боях. За нахождение открытого персонажа в отряде отвечает поле active в таблице userchars).
У каждого пользователя имеется свой инвентарь (таблица useritems), предметы из которого могут быть надеты на персонажей пользователя (за предметы надетые на персонажа отвечает таблица charitems. В игре имеется 4 вида предметов - шлем, оружие, амулет и кольцо, т.е. на персонажа может быть надето макс. 4 предмета разных видов.). Таблица items - "база" всех имеющихся в игре предметов.
Таблицы items и chars - статичны.

3c1c793acabf4b3e8c567c5537091ac2.png

Наглядно посмотреть на всё это действо можно перейдя по ссылке.
И в общем - вопрос: нормально ли спроектирована данная часть бд? В основном из-за связи items - useritems - charitems не комфортно себя чувствую.
Заранее спасибо :)

P.S.: Извините за типы данных у полей таблиц (мне так удобней), и за отсутствие наглядных связей "один ко многим" (Проектировал в navicat, а там какая-то проблема со связями. Имеется лишь "один к одному")
  • Вопрос задан
  • 2608 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Skillbox
    PHP-разработчик. Базовый уровень
    3 месяца
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Stepik
    PHP (pro)
    2 недели
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Onskills
    PHP: базовый курс
    1 месяц
    Далее
Пригласить эксперта
Ответы на вопрос 1
@Loligan
Там где "Items" я как понимаю там много предметов. А где сама сущность предмета? А то в "Items" у вас получается только один предмет, а не инвентарь
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы