|
проектирование БД
|
|||
---|---|---|---|
#18+
Доброго времени суток! Столкнулся с такой задачей: есть сущности Пользователи, Игроки, Команды. Игрок может быть заявлен в нескольких Командах, при этом и Игрок и Команда являются пользователем. Помогите спроектировать схему такой БД, я накидал, но не уверен, что верно. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 10:36 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
yozzi Помогите спроектировать схему такой БД, я накидал, но не уверен, что верно. Попросите модератора перекинуть топик в Проектирование БД, тут это не совсем по теме. Модератор: Тема перенесена из форума "Microsoft SQL Server". ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 11:23 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
зачем _id в TeamPlayers ? почему к Users стрелки в обе стороны? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 15:31 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
Нарисуй в нормальной нотации - ERD или UML. А то у тебя черти что и ничего не понятно. Может это просто такая нотация, что я вообще не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 15:47 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
fkthat, да это был быстрый набросок... Переделал, убрал id из сущности TeamPlayers ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 16:20 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
ТС путает понятие Сущности и Отношения (таблицы). Сам написал yozziесть сущности Пользователи, Игроки, Команды. А кружочки (обязательность) и перпендикуляры (необязательность) на концах связей вроде используются в ER-диаграммах при задании связей между сущностями . Если это ER-диаграмма, то никакой сущности TeamPlayers быть не может - должна быть связь "Многие ко Многим" между сущностями Игроки и Команды (таблица появится позже). Если это схема данных (прямоугольники - таблицы (отношения)), то зачем обязательность и необязательность на концах связей? бабушкин зайчикзачем _id в TeamPlayers ? А кому от него хуже? В соседнем топике много про это писали. Ну и название топика очень оригинальное. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 17:11 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
ИВП, Кхм.. я думал, что сущность и есть таблица... выходит, что это схема данных, хотя опять же, я думал, что ER диаграмма и должна отображать модель данных :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 17:27 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
yozziя думал, что сущность и есть таблица... "Сущность" - понятие логической модели. "Таблица" - понятие физической модели. Они не всегда соотносятся как 1:1 поэтому теоретики их разделяют. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 17:39 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
сущности в приложении таблицы в БД ИВП А кому от него хуже? В соседнем топике много про это писали. это ~5 лишних байт на каждую строку ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 18:51 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
yozzi Столкнулся с такой задачей: Начало правильное, но постановки самой задачи нет... yozzi есть сущности Пользователи, Игроки, Команды. Игрок может быть заявлен в нескольких Командах, при этом и Игрок и Команда являются пользователем. Это не постановка задачи - это ваше личное видение решения проблемы, которое вы предлагаете обсудить без самой постановки задачи. Вопрос: yozzi при этом и Игрок и Команда являются пользователем Пользователем чего ? Я лично вообще ничего не понял... вы можете по русски сказать, например хочу сделать учет коней и жокеев на скачках... нужно считать забеги, места и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 20:51 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
yozzi да это был быстрый набросок... Переделал, убрал id из сущности TeamPlayers Идея в целом верна, но с cardinality беда везде. У тебя для одного UserType может быть 0-∞ Users. Для Player и Team всегда есть один User (тут все верно), но для одного User может быть только 0-1 Player или 0-1 Team. Остальное все, вроде бы, ОК. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 21:43 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
yozzi при этом и Игрок и Команда являются пользователем А это из серии: Смешались в кучу кони, люди... (из Бородино) Пользователи БД - это люди (грубо говоря) допущенные к информации БД и это не обязательно игроки (это могут быть администраторы, менеджеры, операционисты, которые имеют разные права и обязанности по ведению и сопровождению БД)... ну и естественно сами игроки по решению администратора могут быть допущены к информации как пользователи (с правами только просмотр - иначе это будет полный бардак)... Ну, чтобы было понятнее - если в кадровой учетной системе предприятия зарегистрирована уборщица, то это не означает, что ей нужно автоматически выдать логин и пароль для доступа к самой учетной системе... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.05.2021, 21:47 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
vmag Это не постановка задачи - это ваше личное видение решения проблемы, которое вы предлагаете обсудить без самой постановки задачи. vmag Пользователи БД - это люди (грубо говоря) допущенные к информации БД и это не обязательно игроки (это могут быть администраторы, менеджеры, операционисты, которые имеют разные права и обязанности по ведению и сопровождению БД)... ну и естественно сами игроки по решению администратора могут быть допущены к информации как пользователи Ты не находишь, что ты сейчас и сам предлагаешь свое vmag личное видение решения проблемы ... |
|||
:
Нравится:
Не нравится:
|
|||
02.05.2021, 10:28 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
fkthat, Не нахожу, то что 2+2=4 придумал не я, если кто то не видит 2+2 это его проблема ... |
|||
:
Нравится:
Не нравится:
|
|||
02.05.2021, 22:09 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
fkthat, А что касается тупого решения в лоб по псевдопостановке задачи, то достаточно трёх таблиц со второй картинки справа: игроки + команды + связующая, нужно только в игроки добавить поля логин и пароль... Таким образом любой игрок автоматически становится пользователем, а так как любая команда состоит из множества игроков - пользователей, то и команда по факту пользователь. Это азы абстрактной алгебры.... И да симметрия в этом случае не работает. Наличие логина и пароля на команду не обеспечивает отдельных игроков привилегиями пользователя если они не входят ни в одну команду ... |
|||
:
Нравится:
Не нравится:
|
|||
02.05.2021, 22:25 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
vmag А что касается тупого решения в лоб по псевдопостановке задачи, то достаточно трёх таблиц со второй картинки справа: игроки + команды + связующая, нужно только в игроки добавить поля логин и пароль... Таким образом любой игрок автоматически становится пользователем, а так как любая команда состоит из множества игроков - пользователей, то и команда по факту пользователь. Это азы абстрактной алгебры.... И да симметрия в этом случае не работает. Наличие логина и пароля на команду не обеспечивает отдельных игроков привилегиями пользователя если они не входят ни в одну команду Я не понял вообще ничего (видать, для меня твоя абстракная алгебра слишком абстракная), но ОК, будь по твоему. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.05.2021, 23:00 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
vmag а так как любая команда состоит из множества игроков - пользователей, то и команда по факту пользователь крутая логика... но нет, спасибо пусть лучше мыши отдельно, а зёрна отдельно ... |
|||
:
Нравится:
Не нравится:
|
|||
02.05.2021, 23:07 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
бабушкин зайчик пусть лучше мыши отдельно, а зёрна отдельно ага, а если команда поедет на поезде, то нужно выдать логин и пароль еще и поезду... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.05.2021, 13:24 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
vmag ага, а если команда поедет на поезде, то нужно выдать логин и пароль еще и поезду... Поезда уже давно поддерживают вход по логину и паролю. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.05.2021, 13:56 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
vmag, откуда вообще у команды взялся логин и пароль? команда - это набор юзеров (включая владельца) и вот у них есть л/п, а команде то он зачем ... |
|||
:
Нравится:
Не нравится:
|
|||
03.05.2021, 18:05 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
бабушкин зайчик, Давайте попробую объяснить, почему я так решил сделать, ну и вобщем задачу. Я разрабатываю информационную систему для команд и игроков, и хотел бы, чтобы можно было регистрировать и новые команды и новых игроков, ну и соответственно входить под ними в систему, у команды свой логин для входа, у игрока - свой. Можно конечно добавить на форме входа выпадающий список «войти как...» и в зависимости от этого решать кто это, игрок или команда, но мне это решение не нравится. Возможно, я намешал сильно... может тогда подскажите, как можно продумать? Может, конечно, стоит использовать такую роль как «администратор команды» у пользователя, но если этот администратор тоже будет игроком? В таком случае нужно, чтобы у пользователя были роли и «игрок» и «администратор команды», так будет правильнее? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.05.2021, 23:10 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
бабушкин зайчик команда - это набор юзеров (включая владельца) и вот у них есть л/п, а команде то он зачем алилуя... не прошло и недели как дошло... раз 5-10 перечитал топик ? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.05.2021, 23:42 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
yozzi Может, конечно, стоит использовать такую роль как «администратор команды» Ничего в этом сложного. Всего лишь добавить в отношение "TeamPlayers" атрибут "роль". Логин для команды и вправду как-то криво - это будет как та бригада Стаханова, которая вся спускалась в шахту под его логином И еще. Правильней отделить логин/пароль в отдельное отношение "Credentials" и для него тоже сразу предусмотреть субклассирование. Вход потенциально может быть не только по логину и паролю, да и вообще credentials это сама по себе отдельная сущность. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.05.2021, 23:47 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
yozzi Возможно, я намешал сильно... может тогда подскажите, как можно продумать? Может, конечно, стоит использовать такую роль как «администратор команды» у пользователя, но если этот администратор тоже будет игроком? В таком случае нужно, чтобы у пользователя были роли и «игрок» и «администратор команды», так будет правильнее? по уму админы БД независимы и продвинуты (и лучше когда их 1-2, тогда можно понять с кого спросить за косяки) и если даже дать всем капитанам команд права админов, большая вероятность, что половина из них скажет мне это и нафик не уперлось... читать инструкции, что-то заводить, корректировать, я даже не знаю с какой стороны подойти к компу, которого у меня кстати и нет, кому нужно - пусть и ковыряет эту БД, ну а просто зайти и посмотреть раз в месяц что и как я наверно смогу ... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.05.2021, 00:01 |
|
проектирование БД
|
|||
---|---|---|---|
#18+
yozzi бабушкин зайчик, Давайте попробую объяснить, почему я так решил сделать, ну и вобщем задачу. Я разрабатываю информационную систему для команд и игроков, и хотел бы, чтобы можно было регистрировать и новые команды и новых игроков, ну и соответственно входить под ними в систему, у команды свой логин для входа, у игрока - свой. Можно конечно добавить на форме входа выпадающий список «войти как...» и в зависимости от этого решать кто это, игрок или команда, но мне это решение не нравится. Возможно, я намешал сильно... может тогда подскажите, как можно продумать? Может, конечно, стоит использовать такую роль как «администратор команды» у пользователя, но если этот администратор тоже будет игроком? В таком случае нужно, чтобы у пользователя были роли и «игрок» и «администратор команды», так будет правильнее? нет у команд никаких логинов/паролей, есть владелец команды и он юзер также как и все члены команды (он также может быть членом и играть в ней) а роли - это система авторизации , там роли юзеров и группы правил, вот через неё все доступы и реализуются ... |
|||
:
Нравится:
Не нравится:
|
|||
04.05.2021, 00:44 |
|
|
Start [/forum/topic.php?fid=32&msg=40068193&tid=1539792]: |
0ms |
get settings: |
22ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
62ms |
get topic data: |
15ms |
get forum data: |
3ms |
get page messages: |
671ms |
get tp. blocked users: |
1ms |
others: | 331ms |
total: | 1134ms |
0 / 0 |