В этом руководстве вы узнаете, как обновлять записи в таблице базы данных MySQL с помощью запросов SQL.
Обновление данных
В предыдущих главах мы узнали, как вставлять данные, а также как выбирать данные из таблицы базы данных на основе различных условий. В этом уроке мы выполним еще одну важную задачу - обновление существующих записей в таблице базы данных.
Синтаксис
Оператор UPDATE используется для обновления существующих данных в таблице.
UPDATE table_name SET column1_name = value1, column2_name = value2,... WHERE condition;
Здесь column1_name, column2_name, ... являются именами столбцов или полей таблицы базы данных, значения которых вы хотите обновить. Вы также можете комбинировать несколько условий, используя операторы AND или OR.
Условие WHERE в инструкции UPDATE указывает, какая запись или записи должны быть обновлены. Если вы пропустите условие WHERE, будут обновлены все записи.
Давайте посмотрим на некоторые примеры, которые демонстрируют, как это на самом деле работает.
Обновление одной ячейки базы данных в MySQL
Предположим, у нас есть таблица сотрудников в нашей базе данных, которая имеет следующие записи:
+--------+--------------+------------+--------+---------+ | emp_id | emp_name | hire_date | salary | dept_id | +--------+--------------+------------+--------+---------+ | 1 | Vasya Pupkin | 2001-05-01 | 5000 | 4 | | 2 | Vanya Pupkin | 2002-07-15 | 6500 | 1 | | 3 | Petya Pupkin | 2005-10-18 | 8000 | 5 | +--------+--------------+------------+--------+---------+
Следующая команда SQL обновит поле emp_name таблицы сотрудников и установит новое значение, где идентификатор сотрудника, т.е. emp_id, равен 3.
UPDATE employees SET emp_name = 'Sanya Pupkin' WHERE emp_id = 3;
После выполнения таблица будет выглядеть примерно так:
+--------+--------------+------------+--------+---------+ | emp_id | emp_name | hire_date | salary | dept_id | +--------+--------------+------------+--------+---------+ | 1 | Vasya Pupkin | 2001-05-01 | 5000 | 4 | | 2 | Vanya Pupkin | 2002-07-15 | 6500 | 1 | | 3 | Sanya Pupkin | 2005-10-18 | 8000 | 5 | +--------+--------------+------------+--------+---------+
Обновление нескольких ячеек базы данных MySQL
UPDATE employees SET salary = 6000, dept_id = 2 WHERE emp_id = 2;
После выполнения таблица будет выглядеть примерно так:
+--------+--------------+------------+--------+---------+ | emp_id | emp_name | hire_date | salary | dept_id | +--------+--------------+------------+--------+---------+ | 1 | Vasya Pupkin | 2001-05-01 | 5000 | 4 | | 2 | Vanya Pupkin | 2002-07-15 | 6000 | 2 | | 3 | Sanya Pupkin | 2005-10-18 | 8000 | 5 | +--------+--------------+------------+--------+---------+
Оставить комментарий