user_of_toster
@user_of_toster

Плохая ли идея хранить oneToMany связи в json колонке?

У таблицы есть большое количество связей с другими таблицами, скажем, 6 oneToMany связей, которые при каждом запросе в бекенд нужно парсить в виде:
name: "Name",
surname: "Surname",
relation1: [{id: 1}],
relation1: [{id: 2}],
relation1: [{id: 3}],
relation1: [{id: 4}],
relation1: [{id: 5}],
relation1: [{id: 6}],


Можно имплементировать для каждой связи свою таблицу вида table1id:table2id и при каждом запросе джоинить. Можно не плодить таблицы и сделать json колонку, в которой будут храниться все связи.

JSON-вариант кажется проще, меньше кода, меньше джоинов, но что-то подсказывает, что так делать не нужно. Можете подсказать, какой вариант когда лучше выбрать?

UPD: база данных - postgresql
  • Вопрос задан
  • 65 просмотров
Решения вопроса 1
Tomio
@Tomio
backend developer (python, php)
А что за база данных у вас? Если это реляционная база, то таким образом вы рушите её концепцию) Таким подходом вы лишаете себя (и базу), как минимум, автоматической проверки на существование записи в таблице, на которую ссылаетесь (Foreign Key Constraint)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
20 янв. 2022, в 13:00
2000 руб./в час
21 янв. 2022, в 13:52
5000 руб./за проект
21 янв. 2022, в 13:07
1100 руб./в час