Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая_БД.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
418.98 Кб
Скачать

1.3 Создание триггеров

Подготовим SQL-скрипты для создания следующих триггеров:

  1. Триггер для проверки корректного ввода даты выдачи номера тс:

CREATE TRIGGER Проверка_даты_выдачи_номера

ON Numbers

AFTER INSERT, UPDATE

AS

IF EXISTS (

SELECT *

FROM Numbers, Users

WHERE Users.Birthdate > Numbers.[Date])

BEGIN

ROLLBACK

PRINT 'Неверная дата выдачи номера'

END

Проверка триггера:

UPDATE Numbers

SET Date = '1970-06-03'

WHERE Date = '2006-06-03'

Результат:

  1. Триггер для проверки корректного ввода даты аварии:

CREATE TRIGGER Проверка_даты_аварии

ON DTP

AFTER INSERT, UPDATE

AS

IF EXISTS (

SELECT *

FROM DTP, PTS

WHERE PTS.[Year] > DTP.Data)

BEGIN

ROLLBACK

PRINT 'Неверная дата аварии'

END

Проверка триггера:

UPDATE DTP

SET Data = '2015-12-12'

WHERE Data = '1999-08-09'

Результат:

  1. Триггер для проверки даты пропажи (кража, либо владелец скрылся с места дтп):

CREATE TRIGGER Проверка_даты_пропажи

ON Stealing

AFTER INSERT, UPDATE

AS

IF EXISTS (

SELECT *

FROM Stealing, PTS

WHERE PTS.[Year] > Stealing.[Date])

BEGIN

ROLLBACK

PRINT 'Неверная дата пропажи транспортного средства'

END

Проверка триггера:

UPDATE Stealing

SET Date = '2015-08-09'

WHERE Date = '1999-08-09'

Результат:

Описание прикладной программы

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

Пример окна для работы с таблицами представлен на рисунке 3.1.

Рисунок 3.1 Окно для работы с таблицами

Здесь пользователь может работать с содержимым одной из таблиц базы данных. При попытке внесения им некорректных данных на экран будет выведено соответствующее сообщение об ошибке (см. рисунок 3.2). Для фиксации всех произведенных изменений пользователю необходимо нажать кнопку «Cохранить» в правом верхнем углу окна, после чего программа проведет необходимые транзакции. Если при этом произойдет срабатывание триггера, то на экран будет выведено соответствующее сообщение (см. рисунок 3.3).

Рисунок 3.2 Сообщение об ошибке внесения данных

Рисунок 3.3 Сообщение о срабатывании триггера

Пример окна для работы с запросами представлен на рисунке 3.4.

Рисунок 3.5 Окно для работы с запросами

Здесь пользователь может задать параметры запроса, запустить его при помощи кнопки «Поиск» и просмотреть результат выполнения.

Для переключения между окнами необходимо использовать меню в верхней части окна. Для завершения работы с программой необходимо нажать кнопку «Закрыть» в правом верхнем углу окна (данная кнопка имеет вид иконки с изображением крестика).

Заключение

В результате проектирования информационной системы ГИБДД были получены база данных и прикладная программа, обеспечивающая интерфейс между пользователем и базой данных. В процессе выполнения работы были решены следующие задачи:

- Спроектирована схема данных

- Созданы необходимые таблицы согласно полученной схеме

- Реализованы указанные в задании запросы

- Созданы представления, имеющие смысл для данной предметной области

- Созданы пользователи и роли для управления доступом к различным объектам базы данных

- Созданы триггеры и ограничения целостности для поддержания целостности данных в базе данных