|
|
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Дайте пожалуйста совет ) 1. Есть две сущности А и Б 2. Сущность А может быть в разных ролях по отношению к сущности Б Например: Алексей может быть другом, зятем и начальником для Александра. Вопрос: для каждого отношения делать отдельную таблицу? например: 1. таб1 - друг 2. таб2 - зять 3. таб3 - начальник Количество ролей конечно. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2015, 18:53 |
|
||
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
Лобовое решение - третья таблица A_id, Б_id, role_id ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2015, 18:57 |
|
||
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
SERG1257Лобовое решение - третья таблица A_id, Б_id, role_id получается, что итого четыре таблицы?: табл1 - сущности А табл2 - сущности Б табл3 - роли табл4 - отношения так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2015, 19:01 |
|
||
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
vladka63 так? Да. Это лобовое, самое простое решение. Вам судить насколько оно вам подходит, ибо исходных данных мало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2015, 19:11 |
|
||
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
SERG1257vladka63 так? Да. Это лобовое, самое простое решение. Вам судить насколько оно вам подходит, ибо исходных данных мало. Спасибо большое! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2015, 19:16 |
|
||
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
vladka63для каждого отношения делать отдельную таблицу? например: Нет, отдельное поле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2015, 20:29 |
|
||
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
vladka63получается, что итого четыре таблицы?: табл1 - сущности А табл2 - сущности Б табл3 - роли табл4 - отношения так? Если говорить о конкретном примере- про связи между людьми, то нет не так. табл 1: "Человеки" табл 2: "Роли" Табл 3: "Отношения" - по тому принципу что вам привели, только две связи из табл 1 +роль. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2015, 00:33 |
|
||
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
Sergueivladka63получается, что итого четыре таблицы?: табл1 - сущности А табл2 - сущности Б табл3 - роли табл4 - отношения так? Если говорить о конкретном примере- про связи между людьми, то нет не так. табл 1: "Человеки" табл 2: "Роли" Табл 3: "Отношения" - по тому принципу что вам привели, только две связи из табл 1 +роль. Да, спасибо! Когда на листе бумаги нарисовал таблицы, понял, что должна быть реализована схема описанная вами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2015, 06:32 |
|
||
|
Как правильно спроектировать ?
|
|||
|---|---|---|---|
|
#18+
vladka63SERG1257Лобовое решение - третья таблица A_id, Б_id, role_id получается, что итого четыре таблицы?: табл1 - сущности А табл2 - сущности Б табл3 - роли табл4 - отношения так? Можно и без таблиц "роли" и "отношения", но тут есть риск нарваться на нарушение 1НФ. Код: plaintext 1. 2. Но будет ли это нарушением 1НФ --- вот в чём вопрос. А будет или нет -- зависит от твоей предметной области. Ты должен как минимум рассмотреть следующие вопросы: Будут ли в твоей БД динамически (в процессе работы БД) добавляться/удаляться роли ? Будет ли в твоей БД нужен поиск (или другая обработка) по всем ролям сразу ? (Например, поиск людей, связанных с данным человеком какой-нибудь (т.е. любой) ролью) Если ответ на хотя бы один вопрос "Да", то так как я написал делать нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2015, 10:21 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=23&tid=1540652]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 245ms |
| total: | 380ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...