powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проектирование Таблицы
7 сообщений из 7, страница 1 из 1
Проектирование Таблицы
    #38027903
aslan1980
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день знатоки

У меня такая вот задача,

Имеется компании, и у этих компаний имеются телефоны, факсы, и тог далее.

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

Теперь сам вопрос,

Можно ли спроектировать таблицу хранящую информацию про телефоны, факсы в таком виде ?
...
Рейтинг: 0 / 0
Проектирование Таблицы
    #38027987
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aslan1980,

можно. А заодно также запроектировать и саму компанию:

ТИП_ПАРАМЕТРА ЗНАЧЕНИЕ
форма "Артель"
название "напрасный труд"
город "ТьмуТараканск"
...

А потом, дабы нормализовать это дело, сделать дополнительный справочник названий параметров (компаний, телефонов и т.д.)

ид - название

и заменить строки названий в колонке имен параметров их номерами... получим EAV в чистом виде.

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

... получим расширенный вариант EAV.

недостаток только один: на всех известных движках РМД тормозить будет нещадно, начиная от определенного объема записей.
Конкретные величины порога - сильно зависят от движка и железа (как только индексы перестанут влезать в кеш).
...
Рейтинг: 0 / 0
Проектирование Таблицы
    #38028099
aslan1980
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Благодарю за ответ

хотелось бы у вас более детальное объяснение

и заменить строки названий в колонке имен параметров их номерами... получим EAV в чистом виде.

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

... получим расширенный вариант EAV.

Что такое EAV ?
...
Рейтинг: 0 / 0
Проектирование Таблицы
    #38028107
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aslan1980,

Нормальное у Вас решение, если Вы не планируете собирать телефоны в одну строку для отображения - ничего тормозить не будет.
...
Рейтинг: 0 / 0
Проектирование Таблицы
    #38028207
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aslan1980,

ой... вроде гугль с яшей эти страшненькие три буковки знали... неужто "забыли"? :)

Entity - Attribute - Value, вроде как типовой шаблон проектирования или чего там... :)
...
Рейтинг: 0 / 0
Проектирование Таблицы
    #38028214
Arhat109
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот Матроскин,

планирует, планирует... :)

там ещё и все ОЦ придется "ручками делать"... ;)
...
Рейтинг: 0 / 0
Проектирование Таблицы
    #38028437
aslan1980
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arhat109

что такое ОЦ ?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Проектирование Таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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