powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Однотипные таблицы
25 сообщений из 177, страница 7 из 8
Однотипные таблицы
    #34593935
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelyУ меня строкой будет - как раз банка в которой лежит отдельно перец, отдельно сахар.
Really? Вот тут Вы теряете связь с оракловой базой. В справочниках у Вас строка - это отдельная перчинка и отдельная сахаринка (которые Вы добавляете и удаляете), а "сахар" и "перец" - категории.

Bely2) Tablespace - я бы сказал, что tablespace - это скорее КУХНЯ, т.е. помещение, где все находится. Причем, может находиться неоднородное - как продукты, так и кастрюли, мясорубки, цветы на подокойнике.
Шкаф - тот же самый контейнер для неоднородных предметов. Что существенно, он не содержит отделимых подконтейнеров (давайте не будем про отделимые топором :) и поэтому является аналогом такого же "минимального контейнера" в базе - tablespace. Кухня - это, скорее, аналог БД, хотя здесь уже аналогии получаются зыбкими; можно по-разному играть словами, но смысла уже не будет.

Bely3) Если я начну рассуждать по житейски - то я могу много нового внести в проектирование баз данных.
Верно. И я согласен, что к аналогиям надо подходить с осторожностью - и не пытаться "действовать просто потому, что по аналогии". Однако, для объяснения той или иной концепции удачные аналогии уместны, а данная представляется мне удачной.

BelyНапример, я могу сделать вывод, что старые таблицы надо время от времени удалять и создавать новые - заполняя их тем же данными. Это будет делаться по аналогии с выходом на пенсию и передачей дел молодому сотруднику.
Странная аналогия. Я бы скорее сказал, что аналогией выхода на пенсию будет "время от времени надо выкидывать старое железо, перенося базы на новое". Скажете, это далеко от реальности?

BelyПродолжать?
Смотря какие цели Вы ставите. Если обосновать "любым инструментом можно воспользоваться плохо, особенно если поставить перед собой такую задачу", то незачем.

BelyЯ думаю, что лучше обходиться без аналогий, всетаки.
Это уже вопрос договоренностей о стиле беседы.

BelyВсе достаточно подкованы в математике и базах, чтобы обойтись без ненужных пружинок и веревочек.
Как Вам сказать..... у людей разные системы мышления и восприятия. Это факт, который стоит учитывать.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34593986
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bely egorychДобавлю, если не внапряг: вы-же дома у себя не кладёте в один ящик носки и гвозди, почему!!! вы позволяете себе такой подход в отношении Базы Данных!А у вас под каждый вид крупы дома отдельный шкаф?
Один шкаф под овсянку, другой под рис, третий под манку, четвертый под перец, пятый под лавровый лист... так?

Не стоит приводить житейские аналогии там где им не место.
Согласен, не совсем удачная аналогия, но если развит эту мысль то сдесь идет спор о том, что удобнее, хранить продукты каждый вид в своем контейнере (физически разделять хранилище), или на разных полочках (организовывать логическое разделение внутри одного физического хранилища - шкафа).
Еще раз повторю, ИМХО, оба подхода имеют право на существование, но не вижу однозначных плюсов или минусов, что бы выбрать один из подходов как "единственно верный".
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34594102
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer BelyНапример, я могу сделать вывод, что старые таблицы надо время от времени удалять и создавать новые - заполняя их тем же данными. Это будет делаться по аналогии с выходом на пенсию и передачей дел молодому сотруднику.Странная аналогия. Я бы скорее сказал, что аналогией выхода на пенсию будет "время от времени надо выкидывать старое железо, перенося базы на новое". Скажете, это далеко от реальности?Для меня хранение житейских предметах в ящиках - странная аналогия.
В жизни - никто не будет хранить грязные носки вместе с хлебом, потому что носки пахнут.
А в БД разнотипное (существенно) может храниться в базе в одной таблице (например EAV значения).
Биты - они не пахнут...

softwarer BelyПродолжать?Смотря какие цели Вы ставите. Если обосновать "любым инструментом можно воспользоваться плохо, особенно если поставить перед собой такую задачу", то незачем.Я хочу сказать, что аналогии можно употреблять только чтобы сделать обяснение более доступным, а в качестве доказательства почему "так надо делать" - это неприемлемо.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34594408
Серж
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelyСреди этих - это один справочник.
А среди 160 категорий, которые я привел в файле - можно выделить около 30 разнотипных справочников, которые логически разные.
Значит будет 30 справочников.

BelyВопрос не про конкретные атрибуты, а про то где хранить значения.
Как поля таблицы, типа unsigned int.

BelyСлишком смелое утверждение для неизвестных требований неизвестной истсемы.
Дак приводите целиком требования...

BelyВопрос стоит не про расширение списка - это делается легко и непринужденно при любом подходе, а про увеличение свойств.
А что "одна таблица на все" спасет от изменения требований?

softwarerПример, кстати, не очень удачный. Во-первых, неудачный сам по себе, во-вторых, плохо соответствующий обсуждаемому вопросу.
Возможно... Я ж не в школе, теорему доказывать...

авторИ самый главный вопрос -- ограничения целостности...
А с этим то что делать... Или это кажется несущественным.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34594490
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
СержВозможно... Я ж не в школе, теорему доказывать...Не которые ответы меня вводят в недоумение - может, всетаки, вспомнить как в школе было?
Напрячся чутка... подумать...

СержЗначит будет 30 справочников.
Как поля таблицы, типа unsigned int.
Дак приводите целиком требования...
А с этим то что делать... Или это кажется несущественным.
Это вы вобще про что?
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34594558
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Серж
авторИ самый главный вопрос -- ограничения целостности...
А с этим то что делать... Или это кажется несущественным.
Проверка целостности может быть реализована (двигаясь от клиента к БД):
1) На клиенте
2) На сервере приложений
3) На интерфейсных ХП
4) На триггерах
5) На констрейтах

Вопрос какие проверки можно/нельзя проводить в случае того или иного решения? Как было сказано в ходе дискуссии выше только в 5-ом пункте накладываются некоторые ограничения в схеме "Все в одном" например нельзя для разных типов справочников ставить различную реакцию Restrict/Set Null/Set Default. Насколько это существенно решать Вам.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34594580
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelyВ жизни - никто не будет хранить грязные носки вместе с хлебом, потому что носки пахнут.
Вполне верная аналогия, которую стоит развить дальше. Хлеб можно заворачивать в целлофан, и запах носок станет неважен. Гвозди из тех же носок не так сложно вытряхивать перед одеванием. Итого - хранить их вместе можно, как можно хранить разнотипные записи в одной таблице. Но то и другое - дополнительный геморрой (заворачивать в целлофан, вешать "эксклюзивные" триггеры...)

BelyЯ хочу сказать, что аналогии можно употреблять только чтобы сделать обяснение более доступным, а в качестве доказательства почему "так надо делать" - это неприемлемо.
Безусловно.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34594620
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer BelyЯ хочу сказать, что аналогии можно употреблять только чтобы сделать обяснение более доступным, а в качестве доказательства почему "так надо делать" - это неприемлемо.Безусловно.Вот поэтому реплику
egorsДобавлю, если не внапряг: вы-же дома у себя не кладёте в один ящик носки и гвозди, почему!!! вы позволяете себе такой подход в отношении Базы Данных!я рассматриваю как неверное использование аналогий, о чем и сказал.

Мама мне в детстве говорила... или Сержант в армии учил... - это не доводы при проектировании ИС.
Это лишь внутренние тараканы конкретного индивидуума, такие же как лично мне приятно видеть более компактные модели данных без лишнего нагромождения.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34594650
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelyВот поэтому реплику ..... я рассматриваю как неверное использование аналогий, о чем и сказал.
Я бы согласился, если бы это был стержневой аргумент, но я рассматриваю эту фразу скорее как попутное замечание - типа "вот так, и вот так, и вот так, и вообще даже вот такая кухонная аналогия..."
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34594867
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bely... такие же как лично мне приятно видеть более компактные модели данных без лишнего нагромождения. Вы знаете, а так сразу стала понятна Ваша позиция. И научную базу сразу перестало быть нужным подводить.
По поводу вот этого-же: Я почему!!! вы позволяете себе такой подход в отношении Базы Данных! думаю, действительно, мне стоит извиниться. Извиняюсь за излишнюю эмоциональность высказывания, тараканы вырвались наружу :-)
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34595141
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorych Bely... такие же как лично мне приятно видеть более компактные модели данных без лишнего нагромождения. Вы знаете, а так сразу стала понятна Ваша позиция. И научную базу сразу перестало быть нужным подводить.Дело в том, что я считаю эти два подхода - примерно равноценными.
А в таком случае из двух вещей выбирается одна - уже на основе личных предпочтений.
Главное действовать именно так, а не наоборот
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34595810
KGP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorychНа самом деле, может, наоборот, сильно облегчить жизнь при написании интерфейса к этим справочникам, т.к. позволит нарисовать одну универсальную форму для всех справочников

Нет разницы - универсальная форма может параметр 'форматировать' в имя таблицы-справочника.

ps:
4 года назад принимал решение разбивать на ~15 таблиц-справочников {id, name} вместо одной {id, type, name}
и обработку параметра type преобразовывать в обработку имени_таблицы - производительность улучшилась в разы (справочники разрослись)
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34609363
Аноним564
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть однотипные но слегка разнящиеся сущности.

А почему не рассмотреть схему - общее в общей таблице, отличное в отдельных связанных по 1:1?

Плюсы в одной таблице ( либо предлагаемое выше)
Delete from ALL_Справочники WHERE год-такой-то
Update owner=Vasya where owner=Petya //Петя уволился итд
А уж селект...

Есть однотипные но слегка разнящиеся сущности. Ну и надо выбрать все те что удовлетворяют определенным критерриям -- например все документы Иванова И И что он сделал в 2005 году.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34609991
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аноним564Плюсы в одной таблице ( либо предлагаемое выше)
Delete from ALL_Справочники WHERE год-такой-то
Update owner=Vasya where owner=Petya //Петя уволился итд
А уж селект...1. Если строки справочника принадлежат кому-то, то это уже не справочник, а записная книжка.
Справочник - принадлежит ВСЕМ.
2. Если надо разделять доступ к справочнику, то можно ввести понятие ГРУППА.
у которой есть права доступа к определенным строкам.
Если человек уволился - его исключили из группы, а другого назначили.
3. Операция переназначения владельца (ведущего менеджера) для организаций (в CRM), для проекта, для документов - вполне достойна быть выделена в ОТДЕЛЬНУЮ операцию, которую можно реализовать с помощью процедуры или еще как-нибудь.
На такую операцию - по хорошему надо назначать отдельные права.
4. Если в справочнике есть владелец, права доступа - то это ОДНОЗНАЧНО в отдельную таблицу.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #34610102
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аноним564Есть однотипные но слегка разнящиеся сущности. - речь ранее шла, в общем-то о справочниках простейшего вида, полноценными сущностями не являющимися (по крайней мере пока)
Аноним564А почему не рассмотреть схему - общее в общей таблице, отличное в отдельных связанных по 1:1? - потому что реализация такой связи потребует написания большого количества кода, поддерживающего ссылочную целостность и непротиворечивость данных, нетривиального и сложного в сопровождении, несопоставимого с поддержкой нескольких, изначально разделённых таблиц с обычными констраинтами и внешними ключами.
Повторное использование кода, это конечно, хорошо, но заходить в этом направлении дальше необходимого всё-же не стоит.
По мере развития программы от версии к версии "однотипные, но слегка разнящиеся" сущности постепенно превращаются в "слегка похожие", а потом и в "совершенно разные", общее у которых получается ID и Name. Позаботиться о будущем никогда не вредно, ещё при написании версии 1.0
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Однотипные таблицы
    #35550191
Николай1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Estets Серж
P.S. Все таки интересно посмотреть на перечень 190 справочников только из двух полей.
Например документооборот, у каждого документа есть признаки:

1-Внешний
2-внутренний

1-Входящий
2-Исходящий

1-Бумажный
2-Электронный

1-Передан по почте
2-Курьером
3-По сети

итд. итп. часть полей чисто справочная, от установки других зависит процесс обработки документов.

Это, скорее, домены, чем справоники. И лежать должны в доменах.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #35906314
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelyСержBelyКаждая категория - это отдельный справочник.
Большинство из них - это варианты ответа в анкетах для операторов Call-центра под разные проекты.

В таком виде мало понятно, что они из себя представляют... например, 9 строк с приставкой SPORT_

SPORT_COMMON 21
SPORT_FIRM_TYPE 3
SPORT_FISHING 12
SPORT_OTHER_TYPES 12
SPORT_SERVICE_TYPE 5
SPORT_SUMMER_TOURISM 22
SPORT_TRENAJORS 11
SPORT_WEAPON 15
SPORT_WINTER_TOURISM 9

Это 9 справочников? И что он содержат?Это 9 справочников - содержание анкеты по ассортименту спортивных магазинов.

содержат перечень ассортимента и характеристик.
Возможен множественный выбор признаков.
часть из этих категорий - выложено в файле.

Рассматривая ваши 190 справочников не увидел здесь одной таблицы в упор - тут 2 таблицы:
-категории (SPORT_COMMON, SPORT_FIRM_TYPE...)
-список значений для категории(Ракетки, мячи, сетки и др. для большого тенниса, Продажа товаров для спорта и отдыха...)

зачем 190 справочников или все в одной таблице ... не пойму!!!
проблема в постановке и анализе задачи!
...
Рейтинг: 0 / 0
Однотипные таблицы
    #35906388
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spРассматривая ваши 190 справочников не увидел здесь одной таблицы в упор - тут 2 таблицы:
-категории (SPORT_COMMON, SPORT_FIRM_TYPE...)
-список значений для категории(Ракетки, мячи, сетки и др. для большого тенниса, Продажа товаров для спорта и отдыха...)

зачем 190 справочников или все в одной таблице ... не пойму!!!
проблема в постановке и анализе задачи!Еще раз.

Есть 9 типов анкет:
Авто, Одежда Обувь, Медицина, Спорт, Парикмахерские итд.

Анкетирование проходит торговых точек.

В каждой торговой точке заполняется одна (или несколько) анкет.
В каждой анкете - есть вопросы, которые специфичны для этого типа.
Например:
Авто: кол-во машиномест в сервисе (число)
Запчастями к каким машинам продают (список из 30 фирм: ВАЗ, ГАЗ, Мерседес, Опель итд.)
Какие запчасти продают (список из 20 видов: стекла, магнитолы, глушители, шины итд.)
итп.

Общепит:
Тип кухни (Грузинская, Японская, Русская, Европейская, Без специализации итд.)
Тип обслуживания (с официантами, бармены, самообслуживание)
Есть живая музыка (Да/Нет)
Есть винная карта (Да/Нет)
итп.

Очевидно, что для хранения вариантов ответов нужно использовать справочники.
Если под каждый вопрос создавать отдельный справочник (Запчасти к каким машинам продают, Тип кухни, Какие запчасти продают, Тип обслуживания итд.), то потребуется создать 190 справочников.
Альтернатива - создать одну таблицу для всех вопросов и специальное поле, которое указывает к какому вопросу относится вариант ответа.

вторая таблица, про которую Вы говорите - это таблица связи анкеты с вариантами ответов.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #35906405
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spРассматривая ваши 190 справочников не увидел здесь одной таблицы в упор - тут 2 таблицы:
-категории (SPORT_COMMON, SPORT_FIRM_TYPE...)
-список значений для категории(Ракетки, мячи, сетки и др. для большого тенниса, Продажа товаров для спорта и отдыха...)

зачем 190 справочников или все в одной таблице ... не пойму!!!
проблема в постановке и анализе задачи!Точнее так.
Можно один этот справочник разбить на две таблицы (у нас так и есть).
Но кардинально это ничего не меняет.
главное, что варианты ответов все лежат в одной таблице.
...
Рейтинг: 0 / 0
Однотипные таблицы
    #35906700
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelyspРассматривая ваши 190 справочников не увидел здесь одной таблицы в упор - тут 2 таблицы:
-категории (SPORT_COMMON, SPORT_FIRM_TYPE...)
-список значений для категории(Ракетки, мячи, сетки и др. для большого тенниса, Продажа товаров для спорта и отдыха...)

зачем 190 справочников или все в одной таблице ... не пойму!!!
проблема в постановке и анализе задачи!Точнее так.
Можно один этот справочник разбить на две таблицы (у нас так и есть).
Но кардинально это ничего не меняет.
главное, что варианты ответов все лежат в одной таблице.

ну так из анализа данных и видно что это не 199 справочников - это один справочник с категориями и реализовывать его в 199 таблицах - глупость и вопрос о реализации его в одной или в 199 таблицах неактуален
...
Рейтинг: 0 / 0
Однотипные таблицы
    #35907462
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spну так из анализа данных и видно что это не 199 справочников - это один справочник с категориями и реализовывать его в 199 таблицах - глупость и вопрос о реализации его в одной или в 199 таблицах неактуаленИ в результате получаем возможность прицепить к анкете АВТО ответ "Тип кухни: Японская", что является бредом.

PS: понятно, что из двух зол приходится выбирать меньшее...
...
Рейтинг: 0 / 0
Однотипные таблицы
    #35907863
Николай1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerBelyУ нас для таких супер простых вариантов есть таблица SIMPLE_LIST, где есть поле NAME, ID, CATEG_NAME
Когда-то, году в 94-м, я работал примерно так же, на клиппере. Потом, когда пришел на Oracle, задал вопрос - а почему бы не сложить простые справочники таким манером. В ответ на что получил просьбу назвать хотя бы одно осмысленное преимущество такой вот "кучи малы" (под неосмысленными я понимаю, например, экономию нескольких килобайт дискового пространства). Попробовал - и не смог. Так до сих пор и не могу, одни минусы.

Выгода, собственно, одна - не требуется изменять структуру базы под каждый чих.
Так проще как клиентам, так и разработчику (как фирме, а не человеку), особенно если проходится поддерживать десяток-другой разных версий одного и того же продукта. Не надо морочиться со структурой базы при переносе кода из одной версии в другую, ибо и с кодом заморочек хватает. А добавлять подобные справочники приходится достаточно часто (порою в рамках фиксов/патчей), что бы для каждой такой мелочи дожидаться, скажем, релиза, в котором меняется структура базы. И, кстати, да. Самый распостраненный вариант использования таких справочников - EAV. А что делать? Говорит заказчик - хотим этот атрибут через неделю (в лучшем случае)! И что делать? Тащить изменение структуры через все пространства (разработка - тестовое - выпуск) за одну неделю? Не, я видал, конечно, таких героев, но вообще - в топку.
EAV имеет вои недостаки (точнее сказать - у него одни только недостатки), но все перекрывается одним достоинтством - скоростью добавления атрибутов.

Впрочем, мы уже спорили по этому поводу, но без особого успеха....
...
Рейтинг: 0 / 0
Однотипные таблицы
    #35909551
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Николай1Выгода, собственно, одна - не требуется изменять структуру базы под каждый чих.
Добавление справочника имеет смысл только тогда, когда на него кто-то будет ссылаться, а это в нормальном варианте - уже "изменение структуры базы". Итого, чтобы этот аргумент имел смысл, БД ещё и не должна использовать человеческих внешних ключей, подменяя их тем или иным "суперуниверсальным механизмом ссылок чего угодно на что угодно". А в этом случае становится довольно странно видеть "обычные таблицы", особенно если учитывать, что о скорости работы и удобстве написания бизнес-логики речи уже не идёт, а вот для добавления в них атрибутов "требуется изменять структуру базы под каждый чих".

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

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

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

Религиозный подход фиксов-патчей-релизов я не совсем понял.

Гм. Что же в нем непонятного?
Есть большой продукт, который стоит у большого количества клиентов и регулярно (раз в месяц) централизовано обновляется (это, допустим, версия). Если надо сделать что-то срочное, то выпускается фикс. Срок его выпуска - 1 день.
Всего есть (упрощенно) три пространства - разработка, тестирование и выпуск. При нормальной разработке сначала все делается в пространстве разработки, потом результат переностится в пространство тестирования, потом - в выпуск.
При экстренных изменениях все сразу делается в пространстве выпуска, а потом возвращается "обратно" в разарботку и тестирование.
Еще есть десяток клиентов у которых есть свои, более другие, версии. Со своим зоопарком пространств (правда покороче).
Ну и представьте, какой объем работы надо будет проделать, если, вдруг, придется изменять структуру базы. Как минимум - это столько же, сколько делается при изменении кода (хотя что-то мне подсказывает, что больше). Ну и надо учесть, что баз обычно больше, чем пространств и достаточно часто практикуется переключение с одной базы на другую по мере надобности. "А теперь у них у всех - разная структура".

Что касается использования новых справочников, то я об этом уже писал - EAV. И, таки, да, движок. Добавляем классификатор (тот самый, универсальный), дополнительный атрибут и - телемаркет. Пользователь может работать. Если этот реквизит нужен только на экране и при печати, то ничего кодировать не нужно вообще. Если где-то еще, то надо написать это самое "еще".

Не понимаю, кстати, религиозных выпадов типа, "тогда все надо сложить в одну таблицу" или "тогда все в EAV". Зачем? В EAV попадает только то, что a) нужно срочно б) не требует никакой обработки, кроме ввода, отображения и печати. Остальное лежит в "обычных" таблицах.
Кстати, далеко не все данных из таких "справочников" сохраняются в базе. Некоторые могут использоваться исключительно для управления некими процессами. Например - операций экспорта/импорта, для указания соответствия внутренних и внешних кодировок.

Что же касается пресловутой "ссылочной целостности", то проблемы, порожденные ее отсутствием, составляют, хорошо если 5% от общего числа проблем приложения (из моей более чем 15 летней практики сопровождения тиражных продуктов).
...
Рейтинг: 0 / 0
Однотипные таблицы
    #35910743
sp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Belyspну так из анализа данных и видно что это не 199 справочников - это один справочник с категориями и реализовывать его в 199 таблицах - глупость и вопрос о реализации его в одной или в 199 таблицах неактуаленИ в результате получаем возможность прицепить к анкете АВТО ответ "Тип кухни: Японская", что является бредом.

PS: понятно, что из двух зол приходится выбирать меньшее...

где вы такое увидели из моего поста???
там если есть КАТЕГОРИЯ (тут я мигаю вам глазом) авто , то там и будет вашая "японская", а в категории про кухню (тут я опять мигаю вам глазом) будет все что относится к кухне - это же иерархический справочник КАТЕГОРИЯ-ПОДКАТЕГОРИИ
...
Рейтинг: 0 / 0
25 сообщений из 177, страница 7 из 8
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Однотипные таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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