Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

БазыДанных / Лаб_SQL / Lab_4_INS_DEL_UPDATE

.doc
Скачиваний:
90
Добавлен:
14.04.2015
Размер:
34.3 Кб
Скачать

Лабораторная работа № 4

Тема: Запросы на модификацию данных.

Цель работы: Изучить синтаксис инструкций SQL – INSERT, DELETE и UPDATE определяющие операции модификации данных. Реализовать сформулированные запросы с учетом свойств инструкций модификации. Закрепить навыки работы с SQL.

1. Добавить новую запись в таблицу:

Общий синтаксис инструкции добавления записи имеет вид

INSERT INTO <имя_таблицы> [ (<имя_столбца>,<имя_столбца>,...) ]

VALUES (<значение>,<значение>,..)

Список столбцов в данной команде не является обязательным параметром. В этом случае должны быть указаны значения для всех полей таблицы в том порядке, как эти столбцы были перечислены в команде CREATE TABLE, например:

     INSERT INTO publishers

VALUES (16,"Microsoft Press","http://www.microsoft.com");

Пример с указанием списка столбцов:

     INSERT INTO publishers (publisher,pub_id) 

            VALUES ("Super Computer Publishing",17);

2. Модификация записей:

Общий синтаксис инструкции изменения записи имеет вид

     UPDATE <имя_таблицы> SET <имя_столбца>=<значение>,...

         [WHERE <условие>]

Если задано ключевое слово WHERE и условие, то команда UPDATE применяется только к тем записям, для которых оно выполняется. Если условие не задано, UPDATE применяется ко всем записям. Пример:

     UPDATE publishers SET url="http://www.superpub.com" WHERE pub_id=17;

В качестве условия используются логические выражения над константами и полями. В условиях допускаются:

  • операции сравнения: > , < , >= , <= , = , <> , != . В SQL эти операции могут применяться не только к числовым значениям, но и к строкам ( "<" означает раньше, а ">" позже в алфавитном порядке) и датам ( "<" раньше и ">" позже в хронологическом порядке).

  • операции проверки поля на значение NULL: IS NULL, IS NOT NULL

  • операции проверки на вхождение в диапазон: BETWEEN и NOT BETWEEN.

  • операции проверки на вхождение в список: IN и NOT IN

  • операции проверки на вхождение подстроки: LIKE и NOT LIKE

  • отдельные операции соединяются связями AND, OR, NOT и группируются с помощью скобок.

Подробно все эти ключевые слова описаны и проиллюстрированы в лабораторной работе, посвященной оператору SELECT. В данном случае ограничимся приведением несложного примера:

     UPDATE publishers SET url="url not defined" WHERE url IS NULL;

Эта команда находит в таблице publishers все неопределенные значения столбца url и заменяет их строкой "url not defined".

3. Удаление записей

Общий синтаксис инструкции удаления записи имеет вид

    DELETE FROM <имя_таблицы> [ WHERE <условие> ]

Удаляются все записи, удовлетворяющие указанному условию. Если ключевое слово WHERE и условие отсутствуют, из таблицы удаляются все записи. Пример:

    DELETE FROM publishers WHERE publisher = "Super Computer Publishing";

Эта команда удаляет запись об издательстве Super Computer Publishing.

4. Задание к лабораторной работе

Замечания по ходу выполнения лабораторной работы.

Для просмотра результата выполнения запросов необходимо чтобы в таблицах были внесены данные соответствующими сформулированным запросам. При этом данные в запросах (даты, фамилии, количество и т.п.) могут быть изменены по факту внесенных данных в БД.

Реализовать следующие запросы средствами SQL:

  1. Добавить в таблицу «Изделие» новую запись с данными по заданному изделию.

  2. Добавить данные о новом заказчике.

  3. Изменить цену изделию «Болт».

  4. Добавить дату заказа (в случае если соответствующее поля не заполнено, т.е. на данный момент времени не было ни одного заказа).

  5. Изменить количество поставок для изделия «Болт».

  6. Удалить информацию о заказчиках и поставках, которые были заказаны до 31/12/2000 (учесть связь между таблицами «Заказ» и «Поставка», если не установлено каскадное удаление, то удалить с начало данные из таблицы «Поставка»).

  7. Удалить информацию о поставках изделий «Болт» и «Гвоздь», которые заказывала фирма ООО «Рога и Копыта» (при этом данные о изделия и фирме оставить).

  8. Удалить информацию о поставках, цена которых меньше 100 (удалить данные из таблиц «Поставка»).

5. Контрольные вопросы

Соседние файлы в папке Лаб_SQL