
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
17.06.2013, 10:52
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
Здравствуйте! Подскажите пожалуйста. Есть таблица сущностей, например, сотрудники. У сущностей есть характеристики, например, дипломы об образовании. Количество дипломов, по каждому сотруднику, за ранее не известно. Т.е у одного может быть один диплом, у другого пять. Вопрос: в такой ситуации лучше создать отдельную таблицу характеристик с внешним ключом к таблице "сотрудник" ? спасибо. Модератор: Тема перенесена из форума "Microsoft SQL Server". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 10:53
|
|||
|---|---|---|---|
|
|||
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63Здравствуйте! Подскажите пожалуйста. Есть таблица сущностей, например, сотрудники. У сущностей есть характеристики, например, дипломы об образовании. Количество дипломов, по каждому сотруднику, за ранее не известно. Т.е у одного может быть один диплом, у другого пять. Вопрос: в такой ситуации лучше создать отдельную таблицу характеристик с внешним ключом к таблице "сотрудник" ? спасибо. Модератор: Тема перенесена из форума "Microsoft SQL Server". Конечно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 10:59
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
Сергей Викт.vladka63Здравствуйте! Подскажите пожалуйста. Есть таблица сущностей, например, сотрудники. У сущностей есть характеристики, например, дипломы об образовании. Количество дипломов, по каждому сотруднику, за ранее не известно. Т.е у одного может быть один диплом, у другого пять. Вопрос: в такой ситуации лучше создать отдельную таблицу характеристик с внешним ключом к таблице "сотрудник" ? спасибо. Модератор: Тема перенесена из форума "Microsoft SQL Server". Конечно. спасибо ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 11:11
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
Еще возник вопрос: сущности, сотруднику, может быть назначена одна характеристика из нескольких. Например: пол сотрудника. Т.е есть таблица сотрудников и есть таблица полов (две строки: М и Ж). Вопрос: в этом случае Id пола правильнее записать в таблицу сотрудника или сделать третью таблицу между ними, где будет два Id: сотрудника и пола? Как правильнее? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 11:17
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63, А что, у одного сотрудника может быть несколько полов одновременно? (Дополнительная таблица реализует связь "многие ко многим.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 11:21
|
|||
|---|---|---|---|
|
|||
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63Еще возник вопрос: сущности, сотруднику, может быть назначена одна характеристика из нескольких. Например: пол сотрудника. Т.е есть таблица сотрудников и есть таблица полов (две строки: М и Ж). Вопрос: в этом случае Id пола правильнее записать в таблицу сотрудника или сделать третью таблицу между ними, где будет два Id: сотрудника и пола? Как правильнее? Спасибо. Отдельную таблицу делать не надо. В таблице сотрудников можно указать пол, т.к. в этом случае связь будет один к одному и повторения значений в двух столбцах не произойдёт. Что не противоречит нормальной форме организации данных (второй или третей). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 11:22
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
baracsvladka63, А что, у одного сотрудника может быть несколько полов одновременно? (Дополнительная таблица реализует связь "многие ко многим.) ну, мало ли.. ))) т.е это нормально, записать, например, id пола в таблицу сотрудника? правильно понимаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 11:28
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63baracsvladka63, А что, у одного сотрудника может быть несколько полов одновременно? (Дополнительная таблица реализует связь "многие ко многим.) ну, мало ли.. ))) т.е это нормально, записать, например, id пола в таблицу сотрудника? правильно понимаю? Да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 11:59
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
baracsvladka63пропущено... ну, мало ли.. ))) т.е это нормально, записать, например, id пола в таблицу сотрудника? правильно понимаю? Да. а когда создаю поле в таблице сотрудника, для записи пола, поле я могу назвать как угодно и в него записать Id пола или это должен быть внешний ключ на таблицу полов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:03
|
|||
|---|---|---|---|
|
|||
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63baracsпропущено... Да. а когда создаю поле в таблице сотрудника, для записи пола, поле я могу назвать как угодно и в него записать Id пола или это должен быть внешний ключ на таблицу полов? он необязательно должен быть внешним ключом. Вы можете туда хоть абра-катабру записать. Просто если ID пола не будет найдено при выборке из таблицы полов, то в тектовое значение пола будет записано NULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:07
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63...и в него записать Id пола или это должен быть внешний ключ на таблицу полов? Ниасилил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:21
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
Сергей Викт.vladka63пропущено... а когда создаю поле в таблице сотрудника, для записи пола, поле я могу назвать как угодно и в него записать Id пола или это должен быть внешний ключ на таблицу полов? он необязательно должен быть внешним ключом. Вы можете туда хоть абра-катабру записать. Просто если ID пола не будет найдено при выборке из таблицы полов, то в тектовое значение пола будет записано NULL все понял, спасибо большое! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:21
|
|||
|---|---|---|---|
|
|||
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63, зачем вообще нужны id полов? пиши просто "эм" и "жо". Так понятнее всем будет А то думай потом чё это за пол №1 или пол №2. Для того, чтобы понять и разобраться, придётся в каждом запросе таблицу полов джойнить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:22
|
|||
|---|---|---|---|
|
|||
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63baracsпропущено... Да. а когда создаю поле в таблице сотрудника, для записи пола, поле я могу назвать как угодно и в него записать Id пола или это должен быть внешний ключ на таблицу полов? Это должен быть внешний ключ на таблицу полов, конечно - но при этом Вы можете назвать его как угодно :) То что поле-внешний ключ должно называться так же, как поле-первичный ключ мастер-таблицы - это не правило, а всего лишь рекомендация (причем не всегда применимая) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:23
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
проще надоvladka63, зачем вообще нужны id полов? пиши просто "эм" и "жо". Так понятнее всем будет А то думай потом чё это за пол №1 или пол №2. Для того, чтобы понять и разобраться, придётся в каждом запросе таблицу полов джойнить. я думал, просто текстовые поля поставить и пусть пишут, как захотят. но предполагается, что возможен отчет по параметру. покажите только Жо или только ЭМ.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:43
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63 Вопрос: в такой ситуации лучше создать отдельную таблицу характеристик с внешним ключом к таблице "сотрудник" ? Не лучше, а единственно правильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:43
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
Кот Матроскинvladka63пропущено... а когда создаю поле в таблице сотрудника, для записи пола, поле я могу назвать как угодно и в него записать Id пола или это должен быть внешний ключ на таблицу полов? Это должен быть внешний ключ на таблицу полов, конечно - но при этом Вы можете назвать его как угодно :) То что поле-внешний ключ должно называться так же, как поле-первичный ключ мастер-таблицы - это не правило, а всего лишь рекомендация (причем не всегда применимая) так я не особо понял: это все таки должен быть обязательно внешний ключ или не обязательно.. выше Виктор Сергеевич пишет: "он необязательно должен быть внешним ключом" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:45
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63Еще возник вопрос: сущности, сотруднику, может быть назначена одна характеристика из нескольких. Например: пол сотрудника. Т.е есть таблица сотрудников и есть таблица полов (две строки: М и Ж). Вопрос: в этом случае Id пола правильнее записать в таблицу сотрудника или сделать третью таблицу между ними, где будет два Id: сотрудника и пола? Как правильнее? Спасибо. В таком случае ид пола должен быть атрибутом (полем) таблицы сотрудника. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:49
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63baracsпропущено... Да. а когда создаю поле в таблице сотрудника, для записи пола, поле я могу назвать как угодно и в него записать Id пола или это должен быть внешний ключ на таблицу полов? Да, внешний ключь. Но называться поле может как угодно, единственно, что переименовывать его в данном случае нецелесообразно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:50
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
MasterZivvladka63пропущено... а когда создаю поле в таблице сотрудника, для записи пола, поле я могу назвать как угодно и в него записать Id пола или это должен быть внешний ключ на таблицу полов? Да, внешний ключь. Но называться поле может как угодно, единственно, что переименовывать его в данном случае нецелесообразно. вот теперь все понятно. называем поле, как в таблице полов и делаем внешний ключ.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:51
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
Кот Матроскинvladka63пропущено... а когда создаю поле в таблице сотрудника, для записи пола, поле я могу назвать как угодно и в него записать Id пола или это должен быть внешний ключ на таблицу полов? Это должен быть внешний ключ на таблицу полов, конечно - но при этом Вы можете назвать его как угодно :) То что поле-внешний ключ должно называться так же, как поле-первичный ключ мастер-таблицы - это не правило, а всего лишь рекомендация (причем не всегда применимая) Не рекомендация, а просто разумное бездействие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 12:59
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
vladka63, Как бы в данном конкретном случае можно и не делать отдельный справочник полов, если быть уверенным на 100%, что он никогда не будет расширяться. Но это вопрос очень спорный, и я бы всё равно 200 раз бы подумал на этот счет. В общем это один из классических вопросов проектирования бд, как реализовать домен из предметной области — через справочник или через пользовательский домен с констрейнтом на допустимые значения. Через справочник всегда гибче, но немного больше затраты на реализацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 13:02
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
Да, ещё — это один из редких случаев, когда применение естественного ключа оправдано. Так что рекомендую использовать не id, а классические буквы эМ и Жо, ну, конечно их английский вариант: M F. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 13:04
|
|||
|---|---|---|---|
Вопрос по структуре связей таблиц |
|||
|
#18+
MasterZivvladka63, Как бы в данном конкретном случае можно и не делать отдельный справочник полов, если быть уверенным на 100%, что он никогда не будет расширяться. Но это вопрос очень спорный, и я бы всё равно 200 раз бы подумал на этот счет. В общем это один из классических вопросов проектирования бд, как реализовать домен из предметной области — через справочник или через пользовательский домен с констрейнтом на допустимые значения. Через справочник всегда гибче, но немного больше затраты на реализацию. затраты тут не учитываются. я параллельно еще "отрабатываю" единообразие модели таблиц. дабы не изобретать каждый раз "велосипед" с запросами и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.06.2013, 13:42
|
|||
|---|---|---|---|
|
|||
Вопрос по структуре связей таблиц |
|||
|
#18+
Видите ли, vladka63, есть как минимум три контекста для регистрации пола человека. Если вы говорите о биологическом виде, то не сможете обойтись двумя значениями. Если вы говорите об удостоверяющих личность документах, то имеете зависимость от государственной принадлежности службы, удостоверяющей личность. Вам также может быть интересно, как человек себя идентифицирует. В зависимости от назначения базы данных могут быть использованы все три контекста. Ваша задача - четко понимать, что вы регистрируете и для какой цели. Совершенно очевидно, что вам потребуется справочник, но его реализация может быть разной. > один из классических вопросов проектирования Это классический пример доминирования реализации, придуманной дебилами. Хуже всего то, что дебилы продолжают его активно продвигать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=32&mobile=1&tid=1541211]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 176ms |

| 0 / 0 |

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