Что произойдёт с записью в БД после вызова PATCH (изменить цену на 70 тысяч), а затем PUT (бренд не указан, цвет black, цена не указана)?

При вызове PATCH с изменением цены на 70 тысяч в записи в базе данных обновится только поле цены, остальные поля останутся без изменений.

Короткий ответ

Что ответить на собеседовании

При вызове PATCH с изменением цены на 70 тысяч в записи в базе данных обновится только поле цены, остальные поля останутся без изменений.

Подробный разбор

Ответ с пояснениями

Условие

Что произойдёт с записью в БД после вызова PATCH (изменить цену на 70 тысяч), а затем PUT (бренд не указан, цвет black, цена не указана)?

Ответ

При вызове PATCH с изменением цены на 70 тысяч в записи в базе данных обновится только поле цены, остальные поля останутся без изменений.

Затем при вызове PUT, если в теле запроса не указан бренд, но указан цвет (black), а цена не указана, то запись будет полностью заменена данными из PUT-запроса. Это значит, что поле бренд станет пустым или null (в зависимости от реализации), цвет обновится на black, а цена, так как не указана, будет сброшена или установлена в значение по умолчанию.

Итог: PATCH частично обновляет запись, сохраняя остальные поля, а PUT заменяет всю запись целиком, поэтому отсутствие поля в PUT приводит к его удалению или обнулению в базе.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее