Обновление данных. Команда UPDATE

Команда UPDATE применяется для обновления уже имеющихся строк. Она имеет следующий формальный синтаксис:


UPDATE имятаблицы SET столбец1 = значение1, столбец2 = значение2, … столбецN = значениеN [WHERE условиеобновления]


Например, увеличим у всех товаров цену на 3000:


UPDATE Products
SET Price = Price + 3000;


Однако при выполнении данного запроса в MySQL Workbench мы можем столкнуться с ошибкой:

Ошибка говорит о том, что мы находимся в безопасном режиме. И чтобы его отключить, в MySQL Workbench надо перейти в меню Edit -> Preferences и в открывшемся окне перейти к пункту SQL Editor:

В открывшейся вкладке в самом низу надо снять флажок с поля “Safe Updates (reject UPDATEs and DELETEs with no restrictions)” и затем сохранить изменения, нажав на кнопку OK. После этого надо переподключиться к серверу.

Используем выражение WHERE и изменим название производителя с “Samsung” на “Samsung Inc.”:


UPDATE Products
SET Manufacturer = ‘Samsung Inc.’
WHERE Manufacturer = ‘Samsung’;


Также можно обновлять сразу несколько столбцов:


UPDATE Products
SET Manufacturer = ‘Samsung’,
ProductCount = ProductCount + 3
WHERE Manufacturer = ‘Samsung Inc.’;


При обновлении вместо конкретных значений и выражений мы можем использовать ключевые слова DEFAULT и NULL для установки соответственно значения по умолчанию или NULL:


UPDATE Products
SET ProductCount= DEFAULT
WHERE Manufacturer = ‘Huawei’;