| 
 | 
| 
 
Бд с "динамическими полями" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Название немного кривое, но и проблема в том, что я не знаю как грамотно сформулировать гугл вопрос, который меня интересует. Ответ там думаю есть, поэтому если кто-то просто ткнет грамотной фразой, как называется то что мне нужно будет отлично. Суть такова: у меня есть таблица пользователей, у каждого из них могут быть "особые параметры". Можно бы было сделать для каждого особого параметра просто свое "поле" и дело с концом. Но! Эти особые параметры я планирую добавлять со временем, да и у этих особых параметров могут быть свои какие-то параметры. Как я понимаю просто запрос на добавление нового поля не совсем грамотное решение и для них нужна новая таблица? или как подобное наиболее правильно оформить. Заранее спасибо ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 03.12.2017, 16:41 | 
  
  
  
   | 
||
| 
 
Бд с "динамическими полями" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Всё зависит от того, что ты с этими параметрами хочешь потом делать. Диапазон решений - от EAV до CLOB с XML/JSON внутри. Posted via ActualForum NNTP Server 1.5 ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 03.12.2017, 17:39 | 
  
  
  
   | 
||
| 
 
Бд с "динамическими полями" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Вас выручит EAV. Достаточно добавить 2,3 таблицы. 1. Справочник параметров/настроек 2. таблица фактов: ссылка на п.1, на документ/справочник, значение факта XML/JSON в мемо-полях вам не подойдет, т.к. очень неудобно там вставлять/апдейтить и делать сложные выборки. А также плохая переносимость между СУБД. зы: Ща понабегут сюда любители этого подхода - не слушайте их. :) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 04.12.2017, 10:43 | 
  
  
  
   | 
||
| 
 
Бд с "динамическими полями" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  LSV, +1. Очень. Очень удобно делать сложные выборки и вставлять-апдейтить в EAV. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 04.12.2017, 12:58 | 
  
  
  
   | 
||
| 
 
Бд с "динамическими полями" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Ну если инфраструктура уже есть и это РСУБД, однозначно,  EAV .  Можно, конечно и XML/JSON, но с изменением данных придется изначально помучиться - нетривиальное это дело. А если еще есть выбор - NoSQL ДСУБД и формат JSON. Они под такие задачи изначально "пилились". ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 04.12.2017, 14:26 | 
  
  
  
   | 
||
| 
 
Бд с "динамическими полями" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  ErrorrrНазвание немного кривое, но и проблема в том, что я не знаю как грамотно сформулировать гугл вопрос, который меня интересует. Ответ там думаю есть, поэтому если кто-то просто ткнет грамотной фразой, как называется то что мне нужно будет отлично. Суть такова: у меня есть таблица пользователей, у каждого из них могут быть "особые параметры". Можно бы было сделать для каждого особого параметра просто свое "поле" и дело с концом. Но! Эти особые параметры я планирую добавлять со временем, да и у этих особых параметров могут быть свои какие-то параметры. Как я понимаю просто запрос на добавление нового поля не совсем грамотное решение и для них нужна новая таблица? или как подобное наиболее правильно оформить. Заранее спасибо И кто же Вам мешает "добавлять эти особые параметры со временем"? "Скажи мне, кто тебя учил? И я ..."(С) :) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 04.12.2017, 16:18 | 
  
  
  
   | 
||
| 
 
Бд с "динамическими полями" 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Errorrr, у каждого из них могут быть "особые параметры".  https://docs.oracle.com/cd/E18727_01/doc.121/e12892/T354897T361274.htm ------ как вариант. дескриптивные гибкие поля - в таблице одно поле задает тип, а кучка других строковых интерпретируется системой в зависимости от поля типа. Ключевые - там посложнее немного, выносится в отдельную таблицу. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 04.12.2017, 16:43 | 
  
  
  
   | 
||
| 
 | 

start [/forum/search_topic.php?author=natjer&author_mode=last_posts&do_search=1]:  | 
    0ms | 
get settings:  | 
    7ms | 
get forum list:  | 
    13ms | 
get settings:  | 
    10ms | 
get forum list:  | 
    14ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    12ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    14ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    58ms | 
get topic data:  | 
    11ms | 
get forum data:  | 
    2ms | 
get page messages:  | 
    44ms | 
get tp. blocked users:  | 
    1ms | 
| others: | 1556ms | 
| total: | 1768ms | 

| 0 / 0 | 

На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.