|
|
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
Есть таблица, в ней поле половой принадлежности (м,ж), есть ли смысл вводить в структуру БД справочник, с таблицей из 2-х строк, а в основной хранить соответственно только код значения из справочника? Я за такой вариант(без справочника): Код: sql 1. 2. 3. 4. 5. 6. Оппонент за еще одну таблицу-справочник и связь её один к одному с основной таблицей. Мои аргументы: 1. Бессмысленно хранить ещё одно ненужное отношение: увеличивается кол-во объектов в БД; 2. Уменьшится время выборки, так как обращение будет вестись уже не к одной таблице, а как минимум к двум; Аргументы оппонента: 1. Не будет необходимости в редактировании структуры при добавлении ещё одной половой принадлежности :); 2. Использование индекса для внешнего ключа решит вопрос производительности более эффективно при данной явной ситуации низкой селективности, так как выборка будет происходить по целочисленному значению даже при такой низкой селективности. Собственно вопрос: кто более прав? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2013, 17:29 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
George-III, Если потребуется создать еще одну таблицу в таким полем, то оппонент будет правее. Кроме того, расширение справочника посредством ALTER TABLE требует несколько более других прав, нежели посредством INSERT. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2013, 17:57 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
George-III Бессмысленно хранить ещё одно ненужное отношение: увеличивается кол-во объектов в БДПри общем числе в сотни или тысячи еще одна таблица погоды не сделает. George-III Уменьшится время выборки, так как обращение будет вестись уже не к одной таблице, а как минимум к двум;Справочник крохотный - экономию можно будет разглядеть только под микроскопом George-III Не будет необходимости в редактировании структуры при добавлении ещё одной половой принадлежности :);Это бывает настолько редко что заслуживает своего alter table George-III Использование индекса для внешнего ключа решит вопрос производительности более эффективно при данной явной ситуации низкой селективности, так как выборка будет происходить по целочисленному значению даже при такой низкой селективности.Честно говоря не понял. Но индексировать только М/Ж смысла мало. Итого: спор ради спора. Мое мнение - не знаешь как поступать, поступай правильно, то бишь табличку добавьте. Можете сделать первичным ключом char(1) с вашими М/Ж и не джойнить, если вам не нужны полные наименования. Далее, пол может быть неизвестным, так что возможно not null придется убирать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2013, 19:48 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
George-III, Справочник отношений вроде не порождает. Культурно не sex, а gender. Впрочем все равно этого секса юзер же не увидит канонично. А как было бы красиво `Пол` ENUM('женский', 'мужской', 'еще не понял'); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2013, 20:16 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
А на "True", "False" тоже справочник? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2013, 20:27 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
Relic Hunter, Ну да, а потом в шаблоне вручную подписывать: Ваш пол: мужской [i] Женский [o]. Кроме того истины и лжи не существует, это байт и можно 255 вариантов предложить за те же биты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2013, 22:33 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
Ни разу еще не встречал тиражного продукта, где пол был бы вынесен в справочник. Хотя если это БД какой-то клиники по смене пола, и там возможны экзотические варианты, то в справочнике хранить разумно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 00:33 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
andandrewНи разу еще не встречал тиражного продукта, где пол был бы вынесен в справочник. Хотя если это БД какой-то клиники по смене пола, и там возможны экзотические варианты, то в справочнике хранить разумно.Тогда нужно вынести в справочник буквы и цифры. Вдруг новые придумают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 01:49 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
George-III, я думаю тут вопрос больше стоит так: а сколько у вас собирается быть записей в таблице? если больше чем дох...я то надо посчитать во сколько вам обойдется хранения строк в самой таблице и ненаделают ли юзеры очепяток на таком количестве записей на таких простых словах!) а если там записей - х...й да них..я - то и нефиг беспокоиться - пишите все в одну таблицу - она вытерпит :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 01:57 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
Во вступлении сообщу, что на самом деле эта проблема более широка, и звучит так: "Домены VS справочкики" , и является она одной из основных проблем проектирования РБД, не решаемой, естественно, никогда. George-IIIМои аргументы: 1. Бессмысленно хранить ещё одно ненужное отношение: увеличивается кол-во объектов в БД; Это не аргумент. Лишняя таблица в БД ничего не стоит. автор2. Уменьшится время выборки, так как обращение будет вестись уже не к одной таблице, а как минимум к двум; Это аргумент, но слабый. JOIN лишний к таблице, тем более к такой маленькой, очень быстрый. авторАргументы оппонента: 1. Не будет необходимости в редактировании структуры при добавлении ещё одной половой принадлежности :); Это -- аргумент, и очень сильный. Если добавление предвидится, то только так и нужно делать. (это НЕ ШУТКА). автор2. Использование индекса для внешнего ключа решит вопрос производительности более эффективно при данной явной ситуации низкой селективности, так как выборка будет происходить по целочисленному значению даже при такой низкой селективности. Это бред. Селективность низкая (если предполагается равное или почти равное соотношение полов в БД), и индекс по этому полю не нужен, потому что он просто не будет использоваться. George-IIIСобственно вопрос: кто более прав? Собственно, никто не прав, потому что мы не знаем твою предметную область. Оба решения допустимы, а выбирать нужно исходя из требований предметной области. Собственно, даже что такое "пол" -- уже не понятно. С точки зрения закона пол -- то, что написано в паспорте. С точки зрения напр. врача -- наличие половых органов (и кстати полов с этой точки зрения отнюдь не 2), с точки зрения специалиста сексопсихолога -- там вообще тёмные лес, там этих полов столько, что нам и не снилось в обычной жизни. И даже банально с точки зрения паспорта НЕ ВСЕ ТАК ПРОСТО, как кажется -- сегодня уже во Франции мужики женются друг на друге, завтра они приедут к нам в Россию например работать, и потребуют, чтобы в трудовой книжке у них записано было что-то типа "гомопартнёр". Так что я бы тоже склонялся к идее со справочником, он ничего не стоит, а даёт некоторые преимущества. Кстати, ещё одно преимущество в том, что НАЗВАНИЯ пола в случае справочника можно легко менять в работающей БД, это может очень пригодиться в случае, например, перевода приложения на другой язык. Также легче в случае справочника реализовывать многоязыковую поддержку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 11:17 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
Если проект большой, то со временем справочник добавлять однозначно приходится, у нас например справочник полов выглядит вот так 1Мужскоймуж.МУважаемый Господин г-н 2Женскийжен.ЖУважаемая Госпожа г-жа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 11:48 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
> А на "True", "False" тоже справочник? Про не-бинарную логику не слышали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 11:58 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
MasterZiv, освежите мои рекомендации. Там, где вы пытаетесь меня цитировать, получается почти правильно. Там, где несёте отсебятину, - отсебятина. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 12:01 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
guest_20040621, Я никого не цитировал, кроме автора поста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 13:11 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
> Я никого не цитировал, кроме автора поста. В сущности, мне всё равно, но правила приличия требуют ссылки на первоисточник. Я бы ткнул вас носом в соответствующее обсуждение, но - лень. Поищите самостоятельно. Скорость деградации русскоязычных разработчиков просто поразительна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 13:57 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
guest_20040621> Я никого не цитировал, кроме автора поста. В сущности, мне всё равно, но правила приличия требуют ссылки на первоисточник. Я бы ткнул вас носом в соответствующее обсуждение, но - лень. Поищите самостоятельно. Скорость деградации русскоязычных разработчиков просто поразительна. Ты сначала залогинься хотя бы, чтобы было на что ссылаться. А то сейчас ты для меня — бестелесный призрак. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 15:44 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
MasterZiv, дружище, вы должны бы знать, что с быдлом я брудершафтов не пью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 16:00 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
SERG1257табличку добавьте. Можете сделать первичным ключом char(1) с вашими М/Ж и не джойнить, если вам не нужны полные наименования. +1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 17:30 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
нецелесообразно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2013, 18:08 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
guest_20040621MasterZiv, дружище, вы должны бы знать, что с быдлом я брудершафтов не пью. Я тебя не знаю, дружище, по понятным причинам, но рад за тебя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2013, 11:38 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
Всем спасибо за обсуждение и свои точки зрения. Я сделал вывод, что лучше все же использовать справочник. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2013, 14:11 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
George-III, Хайзенберг хороший совет дает: ХайзенбергЕсли проект большой, то со временем справочник добавлять однозначно приходится, у нас например справочник полов выглядит вот так 1Мужскоймуж.МУважаемый Господин г-н 2Женскийжен.ЖУважаемая Госпожа г-жа но можно углубить для пущей крутизны и универсальности: добавить еще один субсправочник, чтоб ЭТИ упомянутые "сущности" были на нескольких полулярных языках переведены (для особо ретивых чукч-писателей подчеркиваю, 5 - 6, максимум 10, популярных языков). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 03:09 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
Alexander2George-III, Хайзенберг хороший совет дает: ХайзенбергЕсли проект большой, то со временем справочник добавлять однозначно приходится, у нас например справочник полов выглядит вот так 1Мужскоймуж.МУважаемый Господин г-н 2Женскийжен.ЖУважаемая Госпожа г-жа но можно углубить для пущей крутизны и универсальности: добавить еще один субсправочник, чтоб ЭТИ упомянутые "сущности" были на нескольких полулярных языках переведены (для особо ретивых чукч-писателей подчеркиваю, 5 - 6, максимум 10, популярных языков). А можно завести справочник языков. Для каждый таблицы создать таблицу переводов, где ключом будет (Таблица_ID, Язык_ID) А структура будет почти такая же как у "Таблицы". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2013, 10:24 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
George-III1. Бессмысленно хранить ещё одно ненужное отношение: увеличивается кол-во объектов в БД; Конечно увеличится. На единицу. Ну а места на жестком диске будет израсходовано - немеряно. Справочник "Мужчина-Женщина" займет на диске не менее двухсот миллиардов терабайт. Это ж сколько жестких дисков надо будет купить ? George-III2. Уменьшится время выборки, так как обращение будет вестись уже не к одной таблице, а как минимум к двум; Да, уменьшится, конечно. На одну тысячную долю секунды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2013, 07:59 |
|
||
|
Вопрос о целесообразности справочников М и Ж
|
|||
|---|---|---|---|
|
#18+
Как я читал однажды где-то :-) - Вот сколько полов ты знаешь? - Два, мужской и женский - А вот и нет, их может быть даже пять - Это как? - Мужской, Женский, Бывший мужской, бывший женский, неопределенный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2013, 21:32 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=38346045&tid=1541143]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
155ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 237ms |
| total: | 500ms |

| 0 / 0 |

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