MySQL ОБНОВЛЕНИЕ запроса с примером
⚡ Умное резюме
MySQL Запрос UPDATE изменяет существующие строки в таблице, затрагивая одно или несколько полей за один запрос. В этом ресурсе объясняется синтаксис запроса UPDATE, фильтрация WHERE, приводятся примеры работы с таблицей members, а также меры защиты, предотвращающие непреднамеренные массовые обновления.

Что такое запрос UPDATE?
ОБНОВЛЕНИЕ ПО MySQL Команда `update` используется для изменения строк в таблице. Запрос `update` может изменять одно поле или несколько полей одновременно. Он также может использоваться для обновления... MySQL таблица со значениями, взятыми из другой таблицы.
Зачем использовать запрос UPDATE? MySQL?
Данные редко остаются актуальными навсегда. Участники меняют номера телефонов, цены меняются, а заказы переходят из статуса «ожидание» в статус «отправлено». Удаление старой строки и вставка новой нарушит работу первичного ключа и любых ссылок на внешние ключи. Оператор UPDATE редактирует строку на месте, поэтому идентификационные данные и связи сохраняются после изменения.
Запрос UPDATE — это подходящий инструмент в следующих случаях:
- Значение неверно или устарело: Исправьте орфографическую ошибку в имени или обновите номер телефона, не затрагивая остальную часть записи.
- Статус должен двигаться вперед: Измените статус заказа с «ожидает подтверждения» на «отправлен», переписав один столбец.
- Несколько областей изменяются одновременно: В одном запросе можно задать как новое имя, так и новый адрес.
- Необходима коррекция всего объема данных: Условие WHERE, соответствующее нескольким строкам, применяет одно и то же изменение ко всем из них одновременно.
Поскольку команда UPDATE без предложения WHERE перезаписывает каждую строку, фильтр отделяет обычное исправление от случайной перезаписи.
MySQL Обновить синтаксис команды
После определения цели следующим шагом является синтаксис. Базовая форма запроса UPDATE представлена в MySQL показано ниже.
UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition];
ЗДЕСЬ:
- ОБНОВИТЬ `table_name` это команда, которая сообщает MySQL Изменить данные в таблице.
- SET `column_name` = 'new_value' Задает имена и значения полей, на которые будет воздействовать запрос UPDATE. При задании значений строковые типы данных должны быть заключены в одинарные кавычки. Числовые значения не требуют кавычек. Значения дат должны быть заключены в одинарные кавычки и иметь формат 'YYYY-MM-DD'.
- [ГДЕ условие] Этот параметр является необязательным и может использоваться для применения фильтра, ограничивающего количество строк, затрагиваемых запросом UPDATE. Полный список параметров приведен в [ссылка на документацию]. MySQL Руководство по обновлению заявления.
Теперь рассмотрим практический пример обновления данных в таблице участников.
Обновление в MySQL Пример
Предположим, что участникам с номерами 1 и 2 необходимо внести следующие изменения в свои записи.
| Членский номер | Требуются обновления |
|---|---|
| 1 | Измените контактный номер с 999 на 0759 253 532 |
| 2 | Измените имя на Джанет Смит Джонс и обновите физический адрес на Мелроуз 123. |
Обновление одного столбца
Начнём с участника номер 1. Прежде чем вносить какие-либо изменения, давайте получим эту запись.
SELECT * FROM `members` WHERE `membership_number` = 1;
Выполнение приведенного выше сценария дает нам следующие результаты.
| Количество членов | полные имена | пол | Дата рождения | Физический адрес | почтовый_адрес | контактный_номер | |
|---|---|---|---|---|---|---|---|
| 1 | Джанет Джонс | F | 21-07-1980 | Первая улица, участок № 4 | Частная сумка | 999 | janetjones@yagoo.cm |
Давайте теперь обновим контактный номер, используя скрипт, показанный ниже.
UPDATE `members` SET `contact_number` = '0759 253 532' WHERE `membership_number` = 1;
Выполнение приведенного выше скрипта изменяет контактный номер с 999 на 0759 253 532 для участника с номером 1. Повторный запуск SELECT подтверждает новое значение.
| Количество членов | полные имена | пол | Дата рождения | Физический адрес | почтовый_адрес | контактный_номер | |
|---|---|---|---|---|---|---|---|
| 1 | Джанет Джонс | F | 21-07-1980 | Первая улица, участок № 4 | Частная сумка | 0759 253 532 | janetjones@yagoo.cm |
Обновление нескольких столбцов
В записи № 2 необходимо одновременно изменить два поля. Это запись до обновления.
| Количество членов | полные имена | пол | Дата рождения | Физический адрес | почтовый_адрес | контактный_номер | |
|---|---|---|---|---|---|---|---|
| 2 | Смит Джонс | F | 23-06-1980 | Park Street | NULL, | NULL, | jj@fstreet.com |
Следующий скрипт обновляет оба столбца одним оператором. Обратите внимание на запятую, разделяющую два присваивания.
UPDATE `members` SET `full_names` = 'Janet Smith Jones', `physical_address` = 'Melrose 123' WHERE `membership_number` = 2;
Выполнение приведенного выше скрипта обновляет полные имена для участника под номером 2 на имя Джанет Смит Джонс, а физический адрес — на Мелроуз 123.
| Количество членов | полные имена | пол | Дата рождения | Физический адрес | почтовый_адрес | контактный_номер | |
|---|---|---|---|---|---|---|---|
| 2 | Джанет Смит Джонс | F | 23-06-1980 | Мелроуз 123 | NULL, | NULL, | jj@fstreet.com |
💡 Совет: "Предложение WHERE«Этот параметр ограничивает количество строк, затрагиваемых запросом UPDATE. Если его опустить, каждая строка в таблице будет перезаписана».
