powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Бд с "динамическими полями"
7 сообщений из 7, страница 1 из 1
Бд с "динамическими полями"
    #39563295
Errorrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Название немного кривое, но и проблема в том, что я не знаю как грамотно сформулировать гугл вопрос, который меня интересует.
Ответ там думаю есть, поэтому если кто-то просто ткнет грамотной фразой, как называется то что мне нужно будет отлично.
Суть такова:
у меня есть таблица пользователей, у каждого из них могут быть "особые параметры". Можно бы было сделать для каждого особого параметра просто свое "поле" и дело с концом. Но! Эти особые параметры я планирую добавлять со временем, да и у этих особых параметров могут быть свои какие-то параметры. Как я понимаю просто запрос на добавление нового поля не совсем грамотное решение и для них нужна новая таблица? или как подобное наиболее правильно оформить.
Заранее спасибо
...
Рейтинг: 0 / 0
Бд с "динамическими полями"
    #39563315
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё зависит от того, что ты с этими параметрами хочешь потом делать. Диапазон решений -
от EAV до CLOB с XML/JSON внутри.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Бд с "динамическими полями"
    #39563505
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вас выручит EAV. Достаточно добавить 2,3 таблицы.
1. Справочник параметров/настроек
2. таблица фактов: ссылка на п.1, на документ/справочник, значение факта

XML/JSON в мемо-полях вам не подойдет, т.к. очень неудобно там вставлять/апдейтить и делать сложные выборки. А также плохая переносимость между СУБД.
зы: Ща понабегут сюда любители этого подхода - не слушайте их. :)
...
Рейтинг: 0 / 0
Бд с "динамическими полями"
    #39563629
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSV,

+1.

Очень. Очень удобно делать сложные выборки и вставлять-апдейтить в EAV.
...
Рейтинг: 0 / 0
Бд с "динамическими полями"
    #39563715
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну если инфраструктура уже есть и это РСУБД, однозначно, EAV .
Можно, конечно и XML/JSON, но с изменением данных придется изначально помучиться - нетривиальное это дело.
А если еще есть выбор - NoSQL ДСУБД и формат JSON. Они под такие задачи изначально "пилились".
...
Рейтинг: 0 / 0
Бд с "динамическими полями"
    #39563865
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ErrorrrНазвание немного кривое, но и проблема в том, что я не знаю как грамотно сформулировать гугл вопрос, который меня интересует.
Ответ там думаю есть, поэтому если кто-то просто ткнет грамотной фразой, как называется то что мне нужно будет отлично.
Суть такова:
у меня есть таблица пользователей, у каждого из них могут быть "особые параметры". Можно бы было сделать для каждого особого параметра просто свое "поле" и дело с концом. Но! Эти особые параметры я планирую добавлять со временем, да и у этих особых параметров могут быть свои какие-то параметры. Как я понимаю просто запрос на добавление нового поля не совсем грамотное решение и для них нужна новая таблица? или как подобное наиболее правильно оформить.
Заранее спасибо
И кто же Вам мешает "добавлять эти особые параметры со временем"?
"Скажи мне, кто тебя учил? И я ..."(С) :)
...
Рейтинг: 0 / 0
Бд с "динамическими полями"
    #39563895
Vladimir Baskakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Errorrr, у каждого из них могут быть "особые параметры".

https://docs.oracle.com/cd/E18727_01/doc.121/e12892/T354897T361274.htm

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


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