«Средства манипулирования данными в MySQL с использованием операторов Replace, Update, Delete»
Цель: отработать навыки манипулирования данными в таблицах базы данных в MySQL.
Задание:
1. Добавление данных с использованием оператора Replace.
2. Использование оператора Update для модификации существующих строк
3. Использование оператора Delete для удаления строк в существующих таблицах.
Задание на самостоятельную работу
4. Оформить отчет по практической работе и подготовиться к ее защите.
Содержание отчета
1. Тема, цель работы, задание
2. Описание выполняемых команд
3. Описание полученных результатов
Ход работы
Пример выполнения задания.
6.1 Добавление данных с использованием оператора Replace
Оператор Replace работает аналогично оператору Insert, за исключением того, что если старая запись в данной таблице имеет то же значение индекса Unique или Primary key, что и новая, то старая запись перед занесением новой будет удалена.
В таблицу tbl вставляются значения, определяемые в списке после ключевого слова Values. Задать порядок столбцов можно при помощи необязательного списка col_name, следующего за именем таблицы tbl. Оператор Replace допускает как однострочный, так и многострочный формат ввода значений.
На рисунке 6.1 отображена таблица Objects с данными.
Рисунок 6.1 – Таблица Objects с данными
На рисунке 6.2 отображен пример добавление данных в таблицу Objects с использованием оператора Replace. При этом были изменены две записи – 4 и 5.
Рисунок 6.2 – Использование оператора Replace
6.2. Использование оператора Update для модификации существующих строк
Оператор Update имеет следующий синтаксис:
UPDATE [IGNORE] tbl
SET col1=expr1 [, col2=expr2 …]
[WHERE where_definition]
[ORDER BY …]
[LIMIT rows]
В инструкции, сразу после ключевого слова UPDATE указывается таблица tbl, которая подвергается изменению. В предложении SET перечисляются столбцы, которые подвергаются обновлению, и устанавливаются их новые значения. Необязательное условие WHERE позволяет задать критерий отбора строк – обновлению будут подвергаться только те строки, которые удовлетворяют условию where_definition.
На рисунке 6.3 отображен пример использования оператора UPDATE, в котором запись «Здание» в таблице Objects изменяются на «Сооружение».
Рисунок 6.3 – Использование оператора UPDATE
На рисунке 6.4 отображена исходная таблица Специальность (specialty).
Рисунок 6.4 – Таблица Specialty с данными
Пусть требуется увеличить ставки (rate) в таблице Специальность (specialty) на 30%. Команда для выполнения данной операции отражена на рисунке 6.5.
Рисунок 6.5 – Команда увеличения ставки (rate)
Результат выполнения команда увеличения ставки (rate) отображен на рисунке 6.6.
Рисунок 6.6 – Результат выполнения команда увеличения ставки (rate)
Пусть требуется уменьшить ставки (rate) в таблице Специальность (specialty) на 10% для 2 само больше оплачиваемых специальностей. Команда для выполнения данной операции отражена на рисунке 6.7.
Рисунок 6.7 – Команда изменения ставок
На рисунке 6.8 отображен результат выполнения команды изменения ставок.
Рисунок 6.8 – Команда изменения ставок
6.3. Использование оператора Delete для удаления строк в существующих таблицах.
Оператор Delete имеет следующий синтаксис:
DELETE FROM tb1
WHERE where_definition
ORDER BY …
LIMIT rows
На рисунке 6.10 из таблицы Objects удаляются записи, имеющие значения первичного ключа kod_obj больше 7. Исходная таблица Objects отображена на рисунке 6.9.
Рисунок 6.9 – Исходная таблица Objects
Рисунок 6.10 – Команда и результат удаления записей
Ограничение LIMIT позволяет задать максимальное число записей, которые могут быть удалены.
На рисунке 6.11 удаляются 2 записи из таблицы Objects с максимальным значением поля kod_obj.
Рисунок 6.11 – Команда и результат удаления записей
На рисунке 6.12 удаляются все записи из таблицы Objects.
Рисунок 6.12 – Удаление всех записей из таблицы Objects