powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Таблицы ассоциаций "много ко многим" или можно иначе?
19 сообщений из 19, страница 1 из 1
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075891
ZdenniZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. В общем задача такая. Есть несколько производственных объектов со складами. Есть пул специализированного оборудования, причем оборудование на всех объектах однотипное, вплоть до одинаковых моделей. Но у разных видов этого оборудования естественно абсолютно разные типы, свойства и характеристики. Нужно составить БД по учету всего этого дела. Начал проектировать и пока получается то, что в аттаче.FACILITY - объекты, SUBFACILITY - склады/автомашины/другие места хранения оборудования, BOOMS - это боновые заграждения. SKIMMERS - это нефтесборщики. На каждом из объектов есть такие скиммеры и такие нефтесборщики, а также другое оборудование. Связываются с объектами через таблицы ассоциаций BOOMFACLINK и SKIMFACLINK. Вроде бы все нормально, но бонами и скиммерами пул оборудования не ограничивается. Там еще куча всего и все это с разными свойствами. Тут для двух видов огород такой уже нагородился, а если их десять или двадцать? :(. В общем подскажите пожалуйста, может быть можно как-то по-другому это все дело описать? Заранее спасибо.
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075901
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZВ общем задача такая.
А где, собственно, задача-то? Чего ты пытаешься достичь этой БД?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075903
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZВ общем подскажите пожалуйста, может быть можно как-то по-другому это все дело описать? Заранее спасибо.
Сделайте одну общую таблицу оборудования, а всю специфику разнесите "по звезде".

ZdenniZFACILITY - объекты, SUBFACILITY - склады/автомашины/другие места хранения оборудования, BOOMS - это боновые заграждения. SKIMMERS - это нефтесборщики. На каждом из объектов есть такие скиммеры и такие нефтесборщики, а также другое оборудование. Связываются с объектами через таблицы ассоциаций BOOMFACLINK и SKIMFACLINK.

Так доступно объясняете, что ничего не понятно. Врядли кто-то сможет вам помочь.
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075906
ZdenniZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovА где, собственно, задача-то? Чего ты пытаешься достичь этой БД?


Задача в том, чтобы быстро формировать отчеты по наличию специализированных мощностей по ликвидации разливов нефти на каждом из объектов в отдельности и в целом по компании-оператору и содержать эти данные в максимально соответствующем действительности виде. В основном это для наших контролирующих органов, которым сегодня надо знать сколько метров у нас берегозащитного бона, а завтра сколько у нас общая мощность нефтесборщиков в кубах... Конечно есть все это в экселевых денормализованных таблицах, где сам черт ногу сломит, вот и решил "причесать" все это дело ))
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075911
ZdenniZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SergueiТак доступно объясняете, что ничего не понятно. Врядли кто-то сможет вам помочь.

Да тут просто почему-то на написание сообщения дается единственный шанс, не отредактируешь. Хотя мне казалось, что из скриншота там более менее понятно все... )))
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075913
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZЗадача в том, чтобы быстро формировать отчеты по наличию специализированных
мощностей по ликвидации разливов нефти на каждом из объектов в отдельности и в целом по
компании-оператору и содержать эти данные в максимально соответствующем действительности
виде. В основном это для наших контролирующих органов, которым сегодня надо знать сколько
метров у нас берегозащитного бона, а завтра сколько у нас общая мощность нефтесборщиков в
кубах...

Тогда, с моей точки зрения, тебе нужны следующие таблицы:
1) Объекты
2) Виды оборудования
3) Оборудование поимённо
4) Связь оборудования с объектами
5) Список ключевых характеристик оборудования, которые нужны для отчётов
6) Связь характеристик (табл 5) с видами оборудования (табл 2)
7) Таблица значений характеристик, связанная с таблицами 3 и 5

Это, позволит решить задачу в отквоченном виде.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075918
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZмне казалось, что из скриншота там более менее понятно все...
Скриншоты смотрят далеко не все.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075926
ZdenniZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovС моей точки зрения, тебе нужны следующие таблицы:
1) Объекты
2) Виды оборудования
3) Оборудование поимённо
4) Связь оборудования с объектами
5) Список ключевых характеристик оборудования, которые нужны для отчётов
6) Связь характеристик (табл 5) с видами оборудования (табл 2)
7) Таблица значений характеристик, связанная с таблицами 3 и 5

Это, позволит решить задачу в отквоченном виде.


Спасибо! Надо мне это осмыслить и попробовать в работе! Я правильно понимаю,что в таблице 5 в этом случае будет сборная солянка из кубометров, метров, лошадиных сил, пассажировместимости и т.д.?
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39075931
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZЯ правильно понимаю,что в таблице 5 в этом случае будет сборная солянка из
кубометров, метров, лошадиных сил, пассажировместимости и т.д.?
Да. Но благодаря привязке к характеристикам и через них в виду оборудования, тебе не
придётся выбирать суммарную мощность в лошадиных силах всех заградительных бонов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076075
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZ Надо мне это осмыслить и попробовать в работе! Я правильно понимаю,что в таблице 5 в этом случае будет сборная солянка из кубометров, метров, лошадиных сил, пассажировместимости и т.д.? Сборная солянка будет в таблице 7. По достоинствам недостаткам EAV можно поискать по форуму.
Более скучный традиционный подход - это сделать эти характеристики банальными полями у таблицы "виды оборудования"
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076076
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZ Тут для двух видов огород такой уже нагородился, а если их десять или двадцать? :(То придется городить огород и для десяти/двадцати.
Даже с EAV чудес не будет. Более того, возможно будет легче стартовать, но сложнее поддерживать.
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076152
ZdenniZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SERG1257Более скучный традиционный подход - это сделать эти характеристики банальными полями у таблицы "виды оборудования"

Спасибо! Только вот можно поподробнее об этом? Не совсем понятно, как это сделать. Ведь в таблице "виды оборудования" - разноплановое оборудование (боны, скиммеры, силовые установки, катера, лодки и т.д.). Как туда впихнуть столь же разноплановые их характеристики, чтобы потом им как-то нормально можно было присваивать Values?
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076687
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZВедь в таблице "виды оборудования" - разноплановое оборудование... Как туда впихнуть столь же разноплановые их характеристики, чтобы потом им как-то нормально можно было присваивать Values?
Типы характеристик для каждого типа оборудования будут в другой таблице (в 5-й).
Связь характеристики с типом оборудования в 6-й.
Попробую пояснить:

1) Объекты
2) Виды оборудования
3) Оборудование поимённо (экземпляры оборудования, ид, название, инвентарный номер, остаточная стоимость, т.е.общие/ стандартные характеристики для всех видов)
4) Связь оборудования с объектами (если оборудование может передаваться с объекта на объект, хорошо бы добавить даты начала и конца существования оборудования на данном объекте)
5) Список ключевых характеристик оборудования, которые нужны для отчётов(перечень нестандартных характеристик)
6) Связь характеристик (табл 5) с видами оборудования (табл 2) (перечень нестандартных характеристик для каждого вида оборудования)
7) Таблица значений характеристик, связанная с таблицами 3 и 5 (значения нестандартных характеристик для каждого экземпляра оборудования)
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076716
ZdenniZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DirksDRПопробую пояснить:

1) Объекты
2) Виды оборудования
3) Оборудование поимённо (экземпляры оборудования, ид, название, инвентарный номер, остаточная стоимость, т.е.общие/ стандартные характеристики для всех видов)
4) Связь оборудования с объектами (если оборудование может передаваться с объекта на объект, хорошо бы добавить даты начала и конца существования оборудования на данном объекте)
5) Список ключевых характеристик оборудования, которые нужны для отчётов(перечень нестандартных характеристик)
6) Связь характеристик (табл 5) с видами оборудования (табл 2) (перечень нестандартных характеристик для каждого вида оборудования)
7) Таблица значений характеристик, связанная с таблицами 3 и 5 (значения нестандартных характеристик для каждого экземпляра оборудования)

Спасибо, но вы здесь несколько другими словами описали предложение Дмитрия. Его я понял с самого начала. Вопрос был по предложению SERG1257, по которому список ключевых характеристик оборудования переходит в таблицу видов оборудования, т.е. №2.
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076740
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZdenniZ Ведь в таблице "виды оборудования" - разноплановое оборудование (боны, скиммеры, силовые установки, катера, лодки и т.д.)А как вы с этим работать собираетесь? Как искать, что печатать.
В общем виде - если все это хозяйство реально нужно (вы не ищете катера среди лодок, и не мешаете боны со скиммерами) то
один вид оборудования - одна таблица.
Плюс таблица общий предок
create table devices (device_id int primary key, name varchar, some_common fields)
create table BOOMS (device_id int primary key references devices, some_booms fields)
create table SKIMMERS (device_id int primary key references devices, some_skimmers fileds)
и т.д.

Если же свойства нахрен не нужны - только для печати типа поле description - тогда можете все пихать в одну таблицу

Еще раз повторю если вы реализуете через EAV (таблицы 1-7) - структура базы будет проще (таблиц меньше), но жизнь это вам не облегчит, работать с такой "упрощенной" структурой будет сложнее, поиск будет медленнее в разы.
Сложность вашей модели (со всеми типами оборудования и их характеристиками) она с помощью EAV не убирается - она прячется как страус из словаря СУБД (описания таблиц, полей и связей) в вашу прикладную программу.
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076754
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257работать с такой "упрощенной" структурой будет сложнее, поиск будет
медленнее в разы.
У него нет задачи поиска оборудования по характеристикам.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076762
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
одновременно обрабатываются только общие характеристики. Детали - только применительно к конкретному оборудованию или его типу. Самым оптимальным выглядит последнее предложение от SERG1257 18279012
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39076768
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257Еще раз повторю если вы реализуете через EAV (таблицы 1-7) - структура базы будет проще (таблиц меньше), но жизнь это вам не облегчит, работать с такой "упрощенной" структурой будет сложнее, поиск будет медленнее в разы.
EAV еще может оправдано применять в тиражируемых решениях, когда у разработчика банально нет возможности получить доступ к БД, логике или к интерфейсу программы. Но так как все "свое" (если я правильно понял), то оправдать построение по принципам EAV можно разве что академическим интересом
...
Рейтинг: 0 / 0
Таблицы ассоциаций "много ко многим" или можно иначе?
    #39077889
ZdenniZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SERG1257Плюс таблица общий предок
create table devices (device_id int primary key, name varchar, some_common fields)


А вот это отличная идея! Это дает возможность иметь только одну таблицу ассоциации с объектом всех единиц оборудования сразу, а не по одной для каждого вида оборудования, как у меня было изначально (boomfaclink, skimfaclink). Спасибо!
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Таблицы ассоциаций "много ко многим" или можно иначе?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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