powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / как называется такое представление данных в БД?
11 сообщений из 11, страница 1 из 1
как называется такое представление данных в БД?
    #34326112
петька40
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Существует таблица, описывающая к.-л. сущность по минимуму (напр. "предмет", поля id и имя) и есть еще одна таблица со свойствами этой сущности (id предмета, название свойства, значение свойства, напр. - 3, "цвет", "зеленый"; 3, "форма", "круглый"; 20, "цвет", "синий"; и т.д.).
Как называется такой подход к хранению/представлению данных в БД, когда свойства сущности представлены не в виде колонки таблицы сущности, а в виде строки в таблице свойств?
есть ли какие нибудь общие алгоритмы/методы работы с такой формой?
сенкс.
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34326152
Это называется ненормализованные формы
Должно быть 4 таблицы:
1. Сущности (ид, наименование)
2. Виды свойств (ид, наименование)
3. Значения свойств (ид, ВидСвойста, наименование)
4. Свойства сущности (ид, Сущность, ЗначениеСвойства)
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34326288
петька40
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"Ненормализованные формы" это оттого, что это и не 1я нормальная форма, и не 2НФ, и не 3НФ и т.д., или просто название такое?

Должно быть 4 таблицы:
1. Сущности (ид, наименование)
2. Виды свойств (ид, наименование)
3. Значения свойств (ид, ВидСвойста, наименование)
4. Свойства сущности (ид, Сущность, ЗначениеСвойства)


Про 4ю таблицу - имелась в виду таблица связи (сущность_ид, свойство_ид, значение_ид)?
Или (сущность_ид, свойство_ид, зачение_свойства)? Если так, то что содержит таблица 3?
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34326350
Фотография Shtock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подход называется eav.поиск по сайту рулит.
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34328043
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ненавижу 1СЭто называется ненормализованные формы
Должно быть 4 таблицы:
1. Сущности (ид, наименование)
2. Виды свойств (ид, наименование)
3. Значения свойств (ид, ВидСвойста, наименование)
4. Свойства сущности (ид, Сущность, ЗначениеСвойства)Sorry, что вмешиваюсь. Но, если правильно понял из контекста, Вы утверждаете, что модель EAV ненормализована ? Если да, то Вы ошибаетесь, вполне даже нормализована.
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34328392
ГггГГггг
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
EAV - это и есть 7-я нормальная форма.
Называется "донормализовались" (ДНФ) ))))))
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34328650
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChASorry, что вмешиваюсь. Но, если правильно понял из контекста, Вы утверждаете, что модель EAV ненормализована ? Если да, то Вы ошибаетесь, вполне даже нормализована.

Нормализация заключается в вертикальной декомпозиции отношения 1НФ с целью исключить аномалии обновления данных при минимальном количестве отношений.
В данном случае мы взяли отношение в какой то НФ, под каждую колонку создали отдельное отношение, прицепили к каждой записи тэг и слили в одну таблицу. При этом аномалии обновления если были, то остались на своих местах (а при реализации появятся и проблемы с разделяемым доступом), количество отношений возросло до предела (не важно, что таблица только одна, логически записи с разными тэгами отражают разные понятия), а главное сущность в общем случае уже не представлена одной записью в таблице. И где тут нормализация?
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34329232
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну блин совсем затерли слово до дыр. Конечно же переход к EAV никакого отношения к нормализации не имеет, за исключением того, что EAV структура формально отвечает всем нормальным формам.
Только не потому, что проанализированы и устранены имевшиеся аномалии ( mcureenab , +1), а потому что мы переложили эти проблемы (включая контроль типов) на другое ПО - теперь ими занимается не СУБД, а приложение. Возможно, конечно этих проблем и не было - нас вполне устраивало
Нечто
Номер Цвет Размер1Синий 1002100 Синий3Пригласить Таню в кино Как Му-Му
Все бывает.
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34329859
Фотография proposed amendment
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChA Ненавижу 1СЭто называется ненормализованные формы
Должно быть 4 таблицы:
1. Сущности (ид, наименование)
2. Виды свойств (ид, наименование)
3. Значения свойств (ид, ВидСвойста, наименование)
4. Свойства сущности (ид, Сущность, ЗначениеСвойства)Sorry, что вмешиваюсь. Но, если правильно понял из контекста, Вы утверждаете, что модель EAV ненормализована ? Если да, то Вы ошибаетесь, вполне даже нормализована.

Sorry, что вмешиваюсь, но в том варианте EAV что привел автор ненавидящий 1С это действительно ненормализованная форма.

я бы, честно говоря, поостерегся называть приведенную модель EAV или имеющей к ней отношение...
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34330593
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
proposed amendment ChA Ненавижу 1СЭто называется ненормализованные формы
Должно быть 4 таблицы:
1. Сущности (ид, наименование)
2. Виды свойств (ид, наименование)
3. Значения свойств (ид, ВидСвойста, наименование)
4. Свойства сущности (ид, Сущность, ЗначениеСвойства)Sorry, что вмешиваюсь. Но, если правильно понял из контекста, Вы утверждаете, что модель EAV ненормализована ? Если да, то Вы ошибаетесь, вполне даже нормализована.

Sorry, что вмешиваюсь, но в том варианте EAV что привел автор ненавидящий 1С это действительно ненормализованная форма.

я бы, честно говоря, поостерегся называть приведенную модель EAV или имеющей к ней отношение...Каждый о своем:) Ненавижу 1С не называл свои таблицы EAV, но утверждал, что они ненормализованы. ChA не разбирал таблицы Ненавижу 1С , но утверждал, что EAV вполне нормализован.
А если уж разбирать, то Ненавижу 1С не привел ограничений целостности, без которых модель - не модель. Для не-моделей свойство нормализации просто неопределено.
...
Рейтинг: 0 / 0
как называется такое представление данных в БД?
    #34331404
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ModelRКонечно же переход к EAV никакого отношения к нормализации не имеет, за исключением того, что EAV структура формально отвечает всем нормальным формам.Именно это и подразумевалось. Благодарю.
Подобным же образом, некое множество произвольных таблиц нельзя назвать реляционной моделью, так как, в общем случае, в них могут нарушаться все мыслимые и немыслимые нормальные формы :) proposed amendmentSorry, что вмешиваюсь, но в том варианте EAV что привел автор ненавидящий 1С это действительно ненормализованная форма.Я, скорее, среагировал на фразу , после утверждения автора "Ненавижу 1С". Посмотрел внимательнее, но не нашел никаких отклонений, за исключением отсутствия явно декларированных ограничений, говорящих о степени нормализации. Но, как я понимаю, это была просто иллюстрация, намек на структуру, не более.
proposed amendmentя бы, честно говоря, поостерегся называть приведенную модель EAV или имеющей к ней отношение...IMHO, вариантов реализации такой модели есть много, но во всех подразумевается, что один атрибут предметной области отображается на одну запись в модели EAV. В этом смысле, список, представленный автором "Ненавижу 1С", формально отвечает такому требованию. Теоретически, EAV можно отобразить вообще в одной таблице, оставив там только базовую тройку атрибутов, но, это уже ad absurdum, IMHO. Или мы говорим о разном ?
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / как называется такое представление данных в БД?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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