Смекни!
smekni.com

Разработка СУБД "Кондитерские фабрики" (стр. 3 из 3)

Все отношения в базе данных находятся в первой нормальной форме, т.к. все значения полей – неделимы (в каждом из полей таблиц БД нет повторений).

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

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


4 ГРУПЫ ПОЛЬЗОВАТЕЛЕЙ И УРОВНИ ДОСТУПА

СУБД MS Access обеспечивает базы данных защитой двумя самыми распространенными способами защиты: установка пароля, требуемого при открытии базы данных, и защита на уровне пользователей, которая позволяет ограничить, к какой части базы данных пользователь будет иметь доступ или какую ее часть он сможет изменять.

Установка пароля при открытии базы данных – самый распространенный способ защиты. После установки пароля, при открытии базы данных появляется диалоговое окно, предлагающее пользователю ввести пароль. Открыть базу данных смогут лишь те пользователи, которые введут правильный пароль. Этот способ достаточно надежен (MS Access шифрует пароль таким образом, что к нему нет прямого доступа при чтении файла базы данных), но он применяется только при открытии базы данных. После открытия базы данных все объекты становятся доступными для пользователя (пока не определена защита на уровне пользователей). Для базы данных, которой совместно пользуется небольшая группа пользователей или на автономном компьютере, установка пароля обычно оказывается достаточной.

Наиболее гибким и распространенным способом защиты базы данных является защита данных на уровне пользователей. Этот способ защиты подобен способам, используемым в большинстве сетевых систем. От пользователей требуется идентифицировать себя и ввести пароль, когда они запускают MS Access. Внутри файла рабочей группы они идентифицируются как члены группы. MS Access по умолчанию создает две группы: администраторы (группа «Admins») и пользователи (группа «Users»). Допускается также определение других групп. Группам и пользователям предоставляются разрешения на доступ, ограничивающие возможность доступа к каждому объекту базы данных.

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

- программа защищается как интеллектуальная собственность;

- приложение защищается от повреждения из-за неумышленного из- менения пользователями программ или объектов, от которых зависит работа приложения;

- защищаются конфиденциальные сведения в базе данных.

СУБД «Кондитерские фабрики Украины» работают различные пользователи. В зависимости от конкретного пользователя определяются уровни доступа для каждого. Выбор пользователя обеспечивается следующим образом: при запуске БД «Кондитерские фабрики Украины» открывается форма «Пуск» (рисунок 4.1) с кнопками 3 – х различных уровней доступа к данным базы: «Гость», «Пользователь», «Администратор».

Рисунок 4.1 – Форма «Пуск»

При нажатии на каждую из этих кнопок появляется окошко с запросом пароля (рисунок 4.2). Для каждого уровня доступа свой пароль. При вводе не правильного пароля – окно об ошибке ввода.


Рисунок 4.2 – Окно с запросом пароля


5 ФУНКЦИОНИРОВАНИЕ СИСТЕМЫ БАЗ ДАННЫХ

5.1 Схема функционирования форм:

Поставка
Добавить продукцию
Выход

Рисунок 5.1.1 – Схема функционирования форм

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


5.2 Описание программных модулей

Первый модуль «add» контролирует уникальность значения элемента в символьном поле. В таблице "Города", перед добавлением названия нового города, проверяет, не встречается ли она ранее в списке городов.

Sub ADD()

Dim str, tmp1, tmp2 As String

Dim c, i, t, f As Integer

str = ""

Do While str = ""

str = InputBox("Введите название города", "Добавление города")

If str = "" Then

t = MsgBox("Строка не может быть пустой")

End If

Loop

DoCmd.OpenForm "Города", acNormal

c = [Forms]![Город]![Название города].ListCount

Set ctllist = [Forms]![Город]![Название]

Dim varitem

For i = 0 To 100

varitem = ctllist.Column(1, i)

If UCase(Trim(varitem)) = UCase(Trim(str)) Then

f = 1

t = MsgBox("Такой город уже есть добавление невозможно")

Exit Sub

End If

Next i

If f = 0 Then

t = MsgBox("Вы действительно хотите добавить город?", vbYesNo)

If t = 6 Then

Dim sql As String

sql = "Insert into Город([Название]) values (" & str & ")"

DoCmd.RunSQL sql

ctllist.Requery

z = MsgBox("Добавлен новый город" & str, vbInformation)

ElseIf t = 7 Then

t = MsgBox("Прервано пользователем", vbOKOnly + vbCritical, "Error")

End If

End If

DoCmd.Close

End Sub

Для управления параметрами элементов форм в зависимости от уровня пользователя создан модуль «User». Он контролирует доступ к данным для обеспечения безопасности информации.

Public User As String