Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Разработка БД для АСУ «Оборудование компьютерных классов учебного заведения».docx
Скачиваний:
78
Добавлен:
10.04.2019
Размер:
393.2 Кб
Скачать

Глава 3. Программная реализация бд асу «Оборудование компьютерных классов учебного заведения»

В данной главе проведем анализ и выбор СУБД. База данных АСУ «Оборудование компьютерных классов учебного заведения» содержит 10 таблиц, которые будут спроектированы в разделе Физическое проектирование БД. Также будут показаны скриншоты готовых таблиц. В конце главы буду написаны 3 триггера и показана их реализация.

3.1. Анализ и выбор СУБД

Для проектирования базы данных была выбрана СУБД PostgreSQL исходя из следующих особенностей:

        • Позволяет работать с удаленной базой данных, что дает возможность осуществлять доступ к одной базе с разных компьютеров в учебном заведении;

  • Поддерживает одновременную работу сразу нескольких пользователей с базой данных;

  • Предоставляет высокий уровень защиты данных;

  • Обладает невысокими требованиями к аппаратной части серверов;

  • Является бесплатной СУБД на рынке;

  • Требует минимальной начальной настройки и дальнейшего администрирования;

  • Является развивающейся СУБД (частые релизы, усовершенствование базы, исправление ошибок).

3.2. Физическое проектирование БД

На основе реляционной модели произведена программная реализация. База данных содержит 10 таблиц:

  • Аудитория

  • Оснащение аудитории

  • Рабочее место

  • Оснащение рабочего места

  • Оборудование

  • Характеристики

  • Комплектующие

  • Тип оборудования

  • Тип комплектующих

  • Авторизация

Таблица Аудитория (room)

Таблица Рабочее место (workPlace)

Таблица Оснащение аудитории (osnRoom)

Таблица Тип оборудования (TypeOfObor)

Таблица Характеристики (character)

Таблица Тип комплектующих (TypeOfCompl)

Таблица Оборудование (Obor)

Таблица Комплектующие (Complect)

Таблица Оснащение рабочего места (osnWorkplace)

Таблица Авторизация (autorisation)

3.3. Реализация ограничений

С базой данных могут работать 2 типа пользователей: администратор и обычный пользователь.

Администраторы организуют работу всей базы данных. Они могут изменять структуры таблиц и данные в них.

Пользователь может только просматривать необходимую ему информацию.

Триггер, предусматривающий ограничение нумерации аудиторий.

CREATE OR REPLACE FUNCTION roomz()

RETURNS TRIGGER

AS $$

BEGIN

if new.num > 500 Then

RAISE EXCEPTION 'error';

else

RETURN NEW;

END if;

END;

$$ LANGUAGE plpgsql;

CREATE TRIGGER On_Room_Insert

AFTER INSERT ON room

FOR EACH ROW

EXECUTE PROCEDURE roomz();

Триггер, предусматривающий ограничение нумерации серийного номера

CREATE OR REPLACE FUNCTION obordah()

RETURNS TRIGGER

AS $$

BEGIN

if new.SerNum > 25000000 Then

RAISE EXCEPTION 'error';

else

RETURN NEW;

END if;

END;

$$ LANGUAGE plpgsql;

CREATE TRIGGER On_Obor_Insert

AFTER INSERT ON Obor

FOR EACH ROW

EXECUTE PROCEDURE obordah();

Триггер предусматривающий автоматическое заполнение оборудования аудиторий

CREATE OR REPLACE FUNCTION working()

RETURNS TRIGGER

AS $$

BEGIN

insert into osnRoom(osnRoomID,roomID, workID) VALUES (nextVal('idOsnRom'), new.roomID, new.workID);

RETURN new;

END;

$$ LANGUAGE plpgsql;

CREATE TRIGGER On_work_Insert

AFTER INSERT ON WorkPlace

FOR EACH ROW

EXECUTE PROCEDURE working();

3.4. Безопасность и контроль

Средства безопасности в postgresql можно разделить на две категории:

  • Безопасность доступа.

  • Безопасность данных.

Безопасность доступа.

В postgresql имеется целый ряд механизмов для идентификации и верификации пользователей. Самый простой из них – обязательное указание пользователем своих имени и пароля при каждом подключении. Эта верификация должна выполняться независимо от того, какое внешнее интерфейсное средство используется для доступа к базе данных. Идея состоит в том, чтобы допустить пользователей к работе со средствами базы данных только после того, как он установит санкционированное соединение с ней. Имя пользователя и пароль сверяются с указанными в таблице SYS.USERS, куда пароль заносится в зашифрованной форме.

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

Безопасность данных.

Если подключаться к базе данных могут лишь уполномоченные пользователи, и они могут запускать только те модули, на выполнение которых им явно предоставлено право, то нужно подумать о следующем уровне безопасности – ограничении доступа этих пользователей к данным.

Для добавления пользователя в базу данных администратор базы данных создает учетную запись с именем пользователя и паролем. Каждому пользователю присваивается профиль — характеристика предельных объемов системных ресурсов, которые могут быть выделены данному пользователю.

Выводы

В данной главе произведено физическое проектирование базы данных АСУ “Оборудование компьютерных классов учебного заведения”. Создано три триггера. Определены ограничения. Произведен анализ безопасности в СУБД PostgreSQL.