Выбор ответа Junior Тестирование БД через SQL спрашивают часто обновлено

Проверка записи после POST

Вопрос

После POST /users с email test+1@mail.ru API вернуло {"id": 57}. Какой запрос лучше всего проверит сохранённые данные?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: SELECT email, name, status FROM users WHERE id = 57;. Проверяем конкретную запись по ключу и конкретные поля, которые должны были сохраниться.

Варианты ответа

  1. SELECT * FROM users ORDER BY created_at DESC;
  2. SELECT email, name, status FROM users WHERE id = 57;правильный ответ
  3. SELECT count(*) FROM users WHERE created_at > now();
  4. SELECT * FROM users WHERE email LIKE '%mail%';

Разбор

Проверяем конкретную запись по ключу и конкретные поля, которые должны были сохраниться. Выборка всей таблицы на реальной базе тяжёлая и не проверяет ничего конкретного, count(*) покажет в лучшем случае число строк (а условие > now() вообще ничего не найдёт, и при параллельных тестах счёт соврёт), LIKE по общему шаблону найдёт чужие записи.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме