172 похожих чатов

Парни, привет. Для каких целей правильно будет использовать JSON поля

в постгре?
Для того чтобы избегать null в ячейках?

9 ответов

11 просмотров

Для всякого хлама и нужно ) Т.е. когда вы не уверены в том, какая будет структура и не можете на этот факт повлиять или она может очень сильно меняться и вам неохота делать адекватную разбивку на таблицы.

Роман Жарков
А это вообще из серии "вредные советы".

Почему же? Если складываешь в json - значит происходит какая-то херня.

Стас-Донцов Автор вопроса
Евгений Смирнов
Для всякого хлама и нужно ) Т.е. когда вы не увере...

тогда это как отстойник можно использовать: внутри проекта устоялось понимание того, что поле "field":123 которое сейчас хранится в json будет здесь и всегда - вытащил его оттуда и добавил как обычный столбец таблицы.. как один из вариантов применения - верно понял?

Евгений Смирнов
Почему же? Если складываешь в json - значит происх...

Представьте, что вы по API от некоего источника получаете данные, структурой которых не управляете. То есть может придти всё, что угодно. Но при этом вам нужно обеспечить фиксацию факта запроса и ответа Вот вам и json

Стас-Донцов Автор вопроса
Альберт Степанцев
Представьте, что вы по API от некоего источника по...

ну кстати этот вариант тоже используется: например так у нас хранят историю изменений, само изменение всегда разное и по этой причине лижит в json (там может от одного поля до 10 поменяться в рамках запроса в API)

Стас Донцов
тогда это как отстойник можно использовать: внутри...

Наверное лучше обозначить, почему JSON опасен: 1. Вы лишаетесь уверенности, что там лежит именно то, что вы ожидаете. Вы ждёте, что там всегда массив, но кто-то может впендюрить NULL (причём либо SQL NULL, либо JSON null), может бахнуть скаляр или объект. Массив может внезапно стать объектом. 2. Неэффективное хранение. Названия ключей тоже занимают место. 3. Неэффективный поиск.

Похожие вопросы

Обсуждают сегодня

У меня это всегда вопрос вызывало.. Нафига писать код так, чтобы потом ошибки вылавливать?
Nik
44
Всем привет. Сейчас я изучаю erlang по книге Erlang and OTP in action. Дошел до главы где реализуется первый gen server на примере tcp rpc сервера. Меня очень сильно смутил ко...
Freezing Death
9
что за асемблер кста?
Shvabrikk Nya
19
Добрый день! Пробую отловить исключение EConvertError: function _TryTextToDouble(var DoubleVar: Extended; Text: String): Boolean; begin try DoubleVar := StrToFloat...
Kirill Filippenok
19
Подскажите... Есть ли название у способа разработки кода, в котором: сперва пишут минимальную рабочую структуру: Напр. ввод, обработка, вывод, контроль. Потом эту структуру д...
Budemposmotret
6
В дизассемблере вижу, что строки пихают в регистры через lea, почему так, а не через mov?
Oleg
8
всем привет. реально ли понять чем в процессе занята память? delphi/linux, процесс свой
Handatros
12
А где @Grinyaha уважаемый пропал?
Am Ambrion
14
Коллеги, а не могли бы вы подсказать, как происходит оптимизация кода при выполнении кода julia? (Точнее, как управлять уровнем оптимизации, аналогично LLVM/GCC). Потому что...
Илья Гаража
5
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Карта сайта