powered by simpleCommunicator - 2.0.27     © 2024 Programmizd 02
Map
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / проектирование БД
25 сообщений из 58, страница 1 из 3
проектирование БД
    #40067738
yozzi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!
Столкнулся с такой задачей: есть сущности Пользователи, Игроки, Команды. Игрок может быть заявлен в нескольких Командах, при этом и Игрок и Команда являются пользователем. Помогите спроектировать схему такой БД, я накидал, но не уверен, что верно.
...
Рейтинг: 0 / 0
проектирование БД
    #40067745
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yozzi
Помогите спроектировать схему такой БД, я накидал, но не уверен, что верно.
На первый взгляд всё правильно.
Попросите модератора перекинуть топик в Проектирование БД, тут это не совсем по теме.

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
проектирование БД
    #40067768
зачем _id в TeamPlayers ?
почему к Users стрелки в обе стороны?
...
Рейтинг: 0 / 0
проектирование БД
    #40067772
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нарисуй в нормальной нотации - ERD или UML. А то у тебя черти что и ничего не понятно. Может это просто такая нотация, что я вообще не знаю.
...
Рейтинг: 0 / 0
проектирование БД
    #40067777
yozzi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fkthat,

да это был быстрый набросок... Переделал, убрал id из сущности TeamPlayers
...
Рейтинг: 0 / 0
проектирование БД
    #40067780
ИВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТС путает понятие Сущности и Отношения (таблицы).
Сам написал yozziесть сущности Пользователи, Игроки, Команды.
А кружочки (обязательность) и перпендикуляры (необязательность) на концах связей вроде используются в ER-диаграммах при задании связей между сущностями .
Если это ER-диаграмма, то никакой сущности TeamPlayers быть не может - должна быть связь "Многие ко Многим" между сущностями Игроки и Команды (таблица появится позже).
Если это схема данных (прямоугольники - таблицы (отношения)), то зачем обязательность и необязательность на концах связей?

бабушкин зайчикзачем _id в TeamPlayers ?
А кому от него хуже? В соседнем топике много про это писали.

Ну и название топика очень оригинальное.
...
Рейтинг: 0 / 0
проектирование БД
    #40067783
yozzi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ИВП,

Кхм.. я думал, что сущность и есть таблица... выходит, что это схема данных, хотя опять же, я думал, что ER диаграмма и должна отображать модель данных :)
...
Рейтинг: 0 / 0
проектирование БД
    #40067784
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yozziя думал, что сущность и есть таблица...

"Сущность" - понятие логической модели.
"Таблица" - понятие физической модели.
Они не всегда соотносятся как 1:1 поэтому теоретики их разделяют.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
проектирование БД
    #40067788
сущности в приложении
таблицы в БД
ИВП
А кому от него хуже? В соседнем топике много про это писали.

это ~5 лишних байт на каждую строку
...
Рейтинг: 0 / 0
проектирование БД
    #40067806
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yozzi
Столкнулся с такой задачей:

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

Это не постановка задачи - это ваше личное видение решения проблемы, которое вы предлагаете обсудить без самой постановки задачи.
Вопрос:
yozzi
при этом и Игрок и Команда являются пользователем

Пользователем чего ?

Я лично вообще ничего не понял... вы можете по русски сказать, например хочу сделать учет коней и жокеев на скачках... нужно считать забеги, места и т.д.
...
Рейтинг: 0 / 0
проектирование БД
    #40067809
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yozzi
да это был быстрый набросок... Переделал, убрал id из сущности TeamPlayers

Идея в целом верна, но с cardinality беда везде. У тебя для одного UserType может быть 0-∞ Users. Для Player и Team всегда есть один User (тут все верно), но для одного User может быть только 0-1 Player или 0-1 Team. Остальное все, вроде бы, ОК.
...
Рейтинг: 0 / 0
проектирование БД
    #40067810
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yozzi
при этом и Игрок и Команда являются пользователем


А это из серии:
Смешались в кучу кони, люди... (из Бородино)
Пользователи БД - это люди (грубо говоря) допущенные к информации БД и это не обязательно игроки (это могут быть администраторы, менеджеры, операционисты, которые имеют разные права и обязанности по ведению и сопровождению БД)... ну и естественно сами игроки по решению администратора могут быть допущены к информации как пользователи (с правами только просмотр - иначе это будет полный бардак)...
Ну, чтобы было понятнее - если в кадровой учетной системе предприятия зарегистрирована уборщица, то это не означает, что ей нужно автоматически выдать логин и пароль для доступа к самой учетной системе...
...
Рейтинг: 0 / 0
проектирование БД
    #40067856
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag
Это не постановка задачи - это ваше личное видение решения проблемы, которое вы предлагаете обсудить без самой постановки задачи.
vmag
Пользователи БД - это люди (грубо говоря) допущенные к информации БД и это не обязательно игроки (это могут быть администраторы, менеджеры, операционисты, которые имеют разные права и обязанности по ведению и сопровождению БД)... ну и естественно сами игроки по решению администратора могут быть допущены к информации как пользователи

Ты не находишь, что ты сейчас и сам предлагаешь свое
vmag
личное видение решения проблемы
просто выдуманное из головы :)
...
Рейтинг: 0 / 0
проектирование БД
    #40067986
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat,

Не нахожу, то что 2+2=4 придумал не я, если кто то не видит 2+2 это его проблема
...
Рейтинг: 0 / 0
проектирование БД
    #40067988
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat,

А что касается тупого решения в лоб по псевдопостановке задачи, то достаточно трёх таблиц со второй картинки справа: игроки + команды + связующая, нужно только в игроки добавить поля логин и пароль...
Таким образом любой игрок автоматически становится пользователем, а так как любая команда состоит из множества игроков - пользователей, то и команда по факту пользователь. Это азы абстрактной алгебры.... И да симметрия в этом случае не работает. Наличие логина и пароля на команду не обеспечивает отдельных игроков привилегиями пользователя если они не входят ни в одну команду
...
Рейтинг: 0 / 0
проектирование БД
    #40067993
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag
А что касается тупого решения в лоб по псевдопостановке задачи, то достаточно трёх таблиц со второй картинки справа: игроки + команды + связующая, нужно только в игроки добавить поля логин и пароль... Таким образом любой игрок автоматически становится пользователем, а так как любая команда состоит из множества игроков - пользователей, то и команда по факту пользователь. Это азы абстрактной алгебры.... И да симметрия в этом случае не работает. Наличие логина и пароля на команду не обеспечивает отдельных игроков привилегиями пользователя если они не входят ни в одну команду

Я не понял вообще ничего (видать, для меня твоя абстракная алгебра слишком абстракная), но ОК, будь по твоему.
...
Рейтинг: 0 / 0
проектирование БД
    #40067997
vmag
а так как любая команда состоит из множества игроков - пользователей, то и команда по факту пользователь

крутая логика...
но нет, спасибо
пусть лучше мыши отдельно, а зёрна отдельно
...
Рейтинг: 0 / 0
проектирование БД
    #40068060
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
пусть лучше мыши отдельно, а зёрна отдельно


ага, а если команда поедет на поезде, то нужно выдать логин и пароль еще и поезду...
...
Рейтинг: 0 / 0
проектирование БД
    #40068074
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vmag
ага, а если команда поедет на поезде, то нужно выдать логин и пароль еще и поезду...

Поезда уже давно поддерживают вход по логину и паролю.
...
Рейтинг: 0 / 0
проектирование БД
    #40068136
vmag, откуда вообще у команды взялся логин и пароль?
команда - это набор юзеров (включая владельца) и вот у них есть л/п, а команде то он зачем
...
Рейтинг: 0 / 0
проектирование БД
    #40068176
yozzi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
бабушкин зайчик,

Давайте попробую объяснить, почему я так решил сделать, ну и вобщем задачу. Я разрабатываю информационную систему для команд и игроков, и хотел бы, чтобы можно было регистрировать и новые команды и новых игроков, ну и соответственно входить под ними в систему, у команды свой логин для входа, у игрока - свой. Можно конечно добавить на форме входа выпадающий список «войти как...» и в зависимости от этого решать кто это, игрок или команда, но мне это решение не нравится.

Возможно, я намешал сильно... может тогда подскажите, как можно продумать? Может, конечно, стоит использовать такую роль как «администратор команды» у пользователя, но если этот администратор тоже будет игроком? В таком случае нужно, чтобы у пользователя были роли и «игрок» и «администратор команды», так будет правильнее?
...
Рейтинг: 0 / 0
проектирование БД
    #40068190
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
команда - это набор юзеров (включая владельца) и вот у них есть л/п, а команде то он зачем


алилуя... не прошло и недели как дошло... раз 5-10 перечитал топик ?
...
Рейтинг: 0 / 0
проектирование БД
    #40068193
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yozzi
Может, конечно, стоит использовать такую роль как «администратор команды»

Ничего в этом сложного. Всего лишь добавить в отношение "TeamPlayers" атрибут "роль". Логин для команды и вправду как-то криво - это будет как та бригада Стаханова, которая вся спускалась в шахту под его логином

И еще. Правильней отделить логин/пароль в отдельное отношение "Credentials" и для него тоже сразу предусмотреть субклассирование. Вход потенциально может быть не только по логину и паролю, да и вообще credentials это сама по себе отдельная сущность.
...
Рейтинг: 0 / 0
проектирование БД
    #40068199
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yozzi
Возможно, я намешал сильно... может тогда подскажите, как можно продумать? Может, конечно, стоит использовать такую роль как «администратор команды» у пользователя, но если этот администратор тоже будет игроком? В таком случае нужно, чтобы у пользователя были роли и «игрок» и «администратор команды», так будет правильнее?


по уму админы БД независимы и продвинуты (и лучше когда их 1-2, тогда можно понять с кого спросить за косяки) и если даже дать всем капитанам команд права админов, большая вероятность, что половина из них скажет мне это и нафик не уперлось... читать инструкции, что-то заводить, корректировать, я даже не знаю с какой стороны подойти к компу, которого у меня кстати и нет, кому нужно - пусть и ковыряет эту БД, ну а просто зайти и посмотреть раз в месяц что и как я наверно смогу ...
...
Рейтинг: 0 / 0
проектирование БД
    #40068217
yozzi
бабушкин зайчик,

Давайте попробую объяснить, почему я так решил сделать, ну и вобщем задачу. Я разрабатываю информационную систему для команд и игроков, и хотел бы, чтобы можно было регистрировать и новые команды и новых игроков, ну и соответственно входить под ними в систему, у команды свой логин для входа, у игрока - свой. Можно конечно добавить на форме входа выпадающий список «войти как...» и в зависимости от этого решать кто это, игрок или команда, но мне это решение не нравится.

Возможно, я намешал сильно... может тогда подскажите, как можно продумать? Может, конечно, стоит использовать такую роль как «администратор команды» у пользователя, но если этот администратор тоже будет игроком? В таком случае нужно, чтобы у пользователя были роли и «игрок» и «администратор команды», так будет правильнее?

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


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