@gelerum

Как реализовать обновление пользователя в базе?

Без привязанности к языку.
У меня api, по эндпоинту я отправляю json c данными для обновления(username, имя, почта. пароль).
Проблема в том, что не все данные могут присутствовать в json, а только те, которые нужно обновлять.

Мне пришла идея,проверять, какие данные присутствуют в json файле. И Отдельно для каждого поля json вызывать функцию обновления соответствующего столбца. Но это ведь не эффективно? Эффективнее же отправлять 1 запрос на обновление 4 столбцов.

Как реализовать функцию обновления на высоком уровне?
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 1
@Akela_wolf
Extreme Programmer
Если у вас есть ORM - то загружаете сущность, обновляете пришедшие в запросе поля, сохраняете в БД. Два запроса (на чтение и на апдейт).

Если работаете на уровне обычных SQL-запросов, то делаете что-то вроде:
UPDATE table SET field1=value1, field2=value2, ... WHERE id=idvalue;

где блок после SET собираете динамически в зависимости от того что пришло в JSON (и это вовсе необязательно делать текстом, например такая библиотека как jooq предоставляет удобный API для сборки подобных запросов)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы