В прошлых уроках ты научился доставать данные из таблиц с помощью SELECT и WHERE. Но база — это не музей, где экспонаты стоят на месте: данные постоянно появляются и меняются. Сегодня разберём две команды, которые за это отвечают, — INSERT и UPDATE. Звучит строго, но по сути это просто «добавить новое» и «поправить старое».
INSERT — добавить новую строку
Представь таблицу users, где каждая строка — это один пользователь. Зарегистрировался новый человек — значит, в таблице должна появиться ещё одна строка. Именно это и делает INSERT:
INSERT INTO users (name, email)
VALUES ('Аня', 'anya@mail.ru');
Читается почти как обычное предложение: «вставь в таблицу users поля имя и email со значениями Аня и её адрес». Раньше этой строки не было — теперь она есть. Ключевое слово тут — новая. INSERT всегда добавляет, а не трогает то, что уже лежит в таблице.
UPDATE — изменить существующую строку
А что, если Аня сменила почту? Заводить нового пользователя нелепо — Аня-то одна. Нам нужно просто поправить email в её строке. Для этого есть UPDATE:
UPDATE users
SET email = 'anya@gmail.com'
WHERE name = 'Аня';
Здесь мы говорим: «в таблице users поставь новый email той строке, где имя — Аня». Обрати внимание на WHERE — он показывает, какую именно строку менять. Без него база поменяла бы email сразу у всех, а это вряд ли то, чего ты хотел.
Простое правило: если данных ещё нет — это INSERT (добавить). Если данные уже есть и их надо поправить — это UPDATE (изменить). Перепутать сложно, как только держишь в голове разницу «новое против имеющегося».
Попробуй
Задания в терминале тут нет — урок про идею. Проговори про себя: новый клиент пришёл в магазин — какая команда? (INSERT). Старый клиент поменял адрес доставки — какая команда? (UPDATE). Если ответил уверенно, переходи к вопросам ниже.