powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / А как такое побороть? Вроде рекурсивной связи.
6 сообщений из 6, страница 1 из 1
А как такое побороть? Вроде рекурсивной связи.
    #33192678
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У игрока есть шмотки. Шмотки могут быть на складе (отдельная таблица со связями), могут быть при сибе (ещё одна таблица связи). А могут быть воткнуты в слоты типа "оружие", "броня". Жопой чую (простите за грубость), что такая структура не хорошая. Шмотки в слотах - не отдельная таблица, а поля в отношении "игрок". Так вот куда вносить шмотки, воткнутые в слоты? Ясно в таблицу с таскаемыми. Если их туда не втыкать, то получится, что в слоте шмотка, которой игрок не владеет. Но что-то меня в этой схемме смущает. Посоветуйте...
...
Рейтинг: 0 / 0
А как такое побороть? Вроде рекурсивной связи.
    #33192758
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Склад - такой же слот, как и все остальные :)

Точнее, говоря на пальцах, я бы рассмотрел два варианта. Если склад один (и, возможно, называется "рюкзак") - это тот же самый слот. Если же складов много - я бы ввел понятие особого склада "при себе"; в последнем случае может быть заполнено дополнительное понятие "слот", а может быть и пусто - типа "в рюкзаке".

В любом случае - целостность целиком или почти целиком делается стандартными констрейнтами БД; считать придется разве что правила типа "общий вес в рюкзаке не больше..."
...
Рейтинг: 0 / 0
А как такое побороть? Вроде рекурсивной связи.
    #33192790
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык я думал отдельно таблицу с рюкзаком и отдельно со складом. Хотя почемуб не сделать в таблице со связью владеет отдельное поле. Типа куда он её положил.
...
Рейтинг: 0 / 0
А как такое побороть? Вроде рекурсивной связи.
    #33192793
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Sarin. Неправильно думал. Какие-то из складов должен быть просто помечены как "носимые". В твоем случае так будет помечен один склад.

Должна быть табла складов и каждая полезная вещь должна иметь отметку о принаждлежности к складу. Ну и к таблам-справочникам: броня, еда, отравляющие газы.
==============
А ты что, игруху на SQL пишешь?
...
Рейтинг: 0 / 0
А как такое побороть? Вроде рекурсивной связи.
    #33192886
Andres 1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2
А ты что, игруху на SQL пишешь?

А что, правильно. Недавно нашел в куче старых дисков Morrowind. Поставил, несколько плагинов туда навесил, начал проходить по новой - сейвы уже больше трёх мегабайт - а как долго их грузит :(. Какой-нибудь embedded sql туда неплохо вписался бы.
...
Рейтинг: 0 / 0
А как такое побороть? Вроде рекурсивной связи.
    #33195317
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2А ты что, игруху на SQL пишешь?
Я делаю онлайн игру с вэб-интерфейсом. В процессе распития спиртных напитков я пршёл к выводу, что всю игровую логику можно реализовать по средствам СУБД (PostgreSQL). За счёт грамотно спроектированной БД и таких фишек, как триггеры, ХП, представления и связи. Очь мне сия идея понравилась. Я о таком проекте давно мечтал. Есть простор для фантазии и творческого (хм. забыл слово. только что написать хотел и забыл). Есть где оттачить умение проектировать БД и нормализовывать её.

Спасибо за совет. Очь мне красивым решение показалось. Вместо связи чел-шмотка переделываем её в чел-склад-шмотка.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / А как такое побороть? Вроде рекурсивной связи.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]