Loading...

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

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

1

2

3

UPDATE имя_таблицы

SET столбец1 = значение1, столбец2 = значение2, ... столбецN = значениеN

[WHERE условие_обновления]

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

1

2

UPDATE Products

SET Price = Price + 3000;

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

Safe UPDATE mode in MySQL Workbench

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

Disable safe mode in MySQL Workbench

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

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

1

2

3

UPDATE Products

SET Manufacturer = 'Samsung Inc.'

WHERE Manufacturer = 'Samsung';

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

1

2

3

4

UPDATE Products

SET Manufacturer = 'Samsung',

    ProductCount = ProductCount + 3

WHERE Manufacturer = 'Samsung Inc.';

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

1

2

3

UPDATE Products

SET ProductCount= DEFAULT

WHERE Manufacturer = 'Huawei';