В этом учебном пособии вы узнаете, как использовать SQLite оператор UPDATE с синтаксисом и примерами.
Описание
SQLite оператор UPDATE используется для обновления существующих записей в таблице в базе данных SQLite. Существует два синтаксиса для оператора UPDATE в зависимости от типа обновления, которое вы хотите выполнить.
Синтаксис
В простейшем виде синтаксис SQLite оператора UPDATE при обновлении одной таблицы:
SET column1 = expression1,
column2 = expression2,
...
[WHERE conditions];
Полный синтаксис SQLite оператора UPDATE при обновлении одной таблицы:
SET column1 = expression1,
column2 = expression2,
...
[WHERE conditions]
[ORDER BY expression [ ASC | DESC ]]
[LIMIT number_rows OFFSET offset_value];
ИЛИ
Синтаксис SQLite оператора UPDATE при обновлении одной таблицы данными из другой таблицы:
SET column1 = (SELECT expression1
FROM table2
WHERE conditions)
[WHERE conditions];
Параметры или аргументы
table
Имя таблицы, которую вы хотите обновить.
column1, column2
Столбцы, которые вы хотите обновить.
expression1, expression2
Новые значения для присвоения column1, column2. Поэтому column1 будет присвоено значение expression1, column2 будет присвоено значение expression2 и т.д.
WHERE conditions
Необязательный. Условия, которые должны быть выполнены для выполнения обновления.
ORDER BY expression
Необязательный. Он может использоваться в сочетании с LIMIT для надлежащей сортировки записей при ограничении количества обновляемых записей. ASC сортирует в порядке возрастания, а DESC - в порядке убывания.
LIMIT number_rows OFFSET offset_value
Необязательный. Если указан LIMIT, он контролирует максимальное количество записей для обновления в таблице. Самое большее, количество записей, указанное number_rows, будет обновлено в таблице. Первая строка, выбранная LIMIT, будет определена как offset_value.
Пример - обновить один столбец
Рассмотрим на очень простой пример SQLite запроса UPDATE.
1 2 3 |
UPDATE employees SET last_name = 'Thomson' WHERE employee_id = 1; |
Этот SQLite пример UPDATE обновит last_name до 'Thomson' в таблице employees, где employee_id равен 1.
Пример - обновить несколько столбцов
Давайте посмотрим на SQLite пример UPDATE, где вы можете обновить несколько столбцов с помощью одного оператора UPDATE.
1 2 3 4 |
UPDATE employees SET last_name = 'Thomson', favorite_website = 'Google.com' WHERE employee_id = 1; |
Если вы хотите обновить несколько столбцов, вы можете сделать это, разделив пары столбец/значение запятыми.
Этот пример SQLite оператора UPDATE обновит last_name до 'Johnson', а favour_website до 'Google.com', где employee_id равен 1.
Пример - обновление таблицы данными из другой таблицы
Давайте рассмотрим пример UPDATE, который показывает, как обновить таблицу данными из другой таблицы в SQLite.
1 2 3 4 5 |
UPDATE employees SET city = (SELECT city FROM offices WHERE office_id = 1) WHERE employee_id > 10; |
Этот пример UPDATE обновил бы все записи только таблицы employees, где employee_id больше 10. city из таблицы offices, где office_id равен 1, будет скопирован в поле city в таблице employees.