Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laby / ЛР2 / БД_2(неоконченная) от 10 окт.doc
Скачиваний:
21
Добавлен:
12.04.2015
Размер:
177.15 Кб
Скачать

13 Методические указания к лабораторной работе №2 "Управление транзакциями. Вставка и удаление записей"

Методические указания к выполнению лабораторной работы №2

по курсу "Базы данных"

Управление транзакциями. Вставка и удаление записей

Цель лабораторной работы: изучить операторы SQL для модификации данных (вставки, удаления и обновления строк), научиться создавать хранимые процедуры и триггеры.

Планируемое время выполнения: 1 пара (2 академических часа).

Порядок выполнения работы

  1. Изучить теоретическую часть.

  2. В каждую таблицу из лабораторной работы №1 «вручную» добавить по 2-3 и более строки произвольных данных.

  3. Анализируя задание на разработку БД из ЛР№1, выписать все пользовательские операции с базой данных, связанные с добавлением, удалением или изменением данных. Для каждой операции разработать алгоритм модификации таблиц.

  4. Если при проектировании БД в ЛР№1 были введены отложенные ограничения целостности, реализовать алгоритм проверки этих ограничений, используя средства выбранной СУБД (написать триггеры или дополнить алгоритмы из п.3 проверками целостности).

  5. Создать хранимые процедуры, реализующие пользовательские действия из п.3. Каждое действие оформляется в виде хранимой процедуры (если выбранная СУБД вообще поддерживает хранимые процедуры. В противном случае запишите последовательность SQL-операторов).

  6. Протестировать работу хранимых процедур, добавив новые данные в базу.

  7. Принять решение об уровне изолированности транзакций.

  8. Оформить отчет.

Содержание отчета

  1. Задание на разработку базы данных.

  2. Таблица со списком пользовательских действий (образец на стр. ХХ)

  3. Текст SQL-запросов: на создание хранимых процедур, триггеров, изменения уровня изолированности транзакций, вызов хранимых процедур. Если выбранная СУБД хранимые процедуры не поддерживает, то список SQL-операторов для реализации каждого пользовательского действия.

Теоретическая часть

Изменять содержимое реляционных таблиц позволяют SQL-операторы:

  • INSERT – добавление новых строк;

  • DELETE – удаление строк из таблицы;

  • UPDATE – изменение ячеек существующих строк.

Добавление строк

Оператор INSERT существует в двух модификациях: 1) однострочная инструкция – добавляет одну строку в таблицу; 2) многострочная инструкция – добавляет сразу несколько строк.

Синтаксис однострочной инструкции INSERT:

INSERT INTO Имя_таблицы( Имя_столбца_1, Имя_столбца_2, и т.д.)

VALUES( Значение_столбца_1, Значение_столбца_2, и т.д.)

В качестве значений столбцов могут указываться: константы, слова NULL или DEFAULT (в этом случае берутся значения по умолчаниюиз ограничений целостности столбца). Если какой-то из столбцов не указать, в эту ячейку запишется значение по умолчанию или NULL.

Пример вставки в таблицу Сотрудники( КодСотрудника, ФИО, ГодРождения):

INSERT INTO “Сотрудники”( “КодСотрудника”, “ФИО”, “ГодРождения”)

VALUES (517, “Каменев Виктор Павлович”, 1981);

Список столбцов в скобках можно не указывать – тогда значения ячеек перечисляются в порядке следования столбцов в заголовке таблицы. Предыдущий запрос можно переписать так:

INSERT INTO “Сотрудники”

VALUES (517, “Каменев Виктор Павлович”, 1981);

Как показывает практика, структура таблиц нередко меняется: в них появляются новые столбцы и удаляются не нужные, может измениться порядок следования столбцов. Если в запросе INSERT столбцы не указывать, то при реструктуризации таблицы этот запрос приведет к ошибке.

Многострочная инструкция INSERT добавляет в таблицу несколько строк (одну и более). Значения для новых строк явно не задаются, а являются результатом выборки SELECT.