Кафедра комплексной информационной безопасности электронных вычислительных систем
2005
Федеральное агентство по образованиюТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)
Кафедра комплексной информационной безопасности электронных вычислительных систем (КИБЭВС)
ЗАДАНИЕ
Необходимо создать базу данных паспортно-визовой службы. Исследовать заданную предметную область, выбрать существенные атрибуты. Построить концептуальную модель предметной области.
На основе концептуальной модели построить реляционную модель, установить связи между объектами. Задать первичные и внешние ключи. Провести нормализацию. Объяснить выполненные преобразования.
Провести исследование полученной модели, задав несколько сложных запросов к полученной модели.
Дата выдачи задания: “____”_______ 2005 г.
Задание принято к исполнению
«____» ___________ 2005г. Подпись студента___________
Содержание
1 Введение…………………………………………………………….…….4
2 Построение концептуальной модели…………………………………...5
3 Построение реляционной модели………………………………………7
4 Нормализация………………………………………………………….…9
5 Проектирование базы данных в ACCESS……………………………..12
6 Создание SQL запросов……………………………………………..…16
7 Заключение…………………………………………………………...…18
Список использованных источников…………………………………..19
1 Введение
Система с базой данных – это любая информационная система на базе компьютера, в которой данные могут совместно использоваться многими приложениями. Это означает, что данные организованны таким образом, чтобы поддерживать не только одно конкретное приложение. Основное отличие системы с базой данных от традиционной файловой системы – это многократное и разнообразное использование одних и тех же данных. Данные не привязаны к какому-либо конкретному приложению и не контролируется им. Отдельные приложения больше не отвечают за создание и ведение данных. Эти обязанности возлагаются на нижележащий уровень программного обеспечения – систему управления базой данных (СУБД). СУБД выполняет роль посредника между пользователями приложений и данными. Также СУБД должна обеспечивать гарантии безопасности и целостности базы данных. Пользователи компьютера должны иметь возможность защитить свои данные от несанкционированного доступа, а также восстановить их в случае неких системных сбоев. Централизованное обеспечение безопасности данных – важная особенность СУБД. Наиболее значительное преимущество систем с базами данных – это централизованное обеспечение целостности данных.
2 Построение концептуальной модели.
При изучении баз данных важнейшее значение имеет их проектирование. Построение концептуальной модели представляет собой процесс моделирования смыслового наполнения базы данных. Концептуальная модель состоит из следующих трёх основных компонентов.
1 Сущности. Это элементы реального мира, которые могут существовать независимо. В моем случае сущностями являются: гражданин, документы, паспортист, паспорт РФ, заграничный паспорт. Сущность представляется в концептуальной модели прямоугольником, в котором указано её имя.
2 Атрибуты. Они описывают сущность. Атрибуты представляются овалами с указанием имен, которые прикреплены к сущности. В моем случае гражданину соответствуют: ФИО, адрес, ИНН, номер свидетельства о рождении. Документам соответствуют: прописка, номер заявления, квитанция об оплате. Паспортисту соответствуют: ФИО, ИНН, адрес, id – паспортиста. Паспорту РФ соответствуют: ФИО, номер паспорта РФ, серия паспорта РФ, регистрация, пол, смена фамилии, дата рождения, дата выдачи, кем выдан. Заграничному паспорту соответствуют: ФИО, номер заграничного паспорта, тип, дата рождения, дата выдачи, место рождения, пол, кем выдан, дата окончания действия, гражданство.
3 Связи. Связь представляет взаимодействие между сущностями. На диаграмме она изображается ромбом, который соединяет сущности, участвующие в связи. В моем случае связь между паспортистом и документами будет один ко многим, так как конкретный пакет документов обслуживает один паспортист, который в свою очередь обрабатывает произвольное количество документов. Все остальные связи будут один к одному, так как каждому гражданину соответствует свой пакет документов, каждому набору документов соответствует один паспорт РФ и один заграничный паспорт.
На рисунке 2.1 представлена концептуальная модель заданной базы данных.
Рисунок 2.1 – Концептуальная модель
3 Построение реляционной модели
В настоящее время преобладает технология реляционных баз данных. Она обеспечивает относительно простые средства представления данных и манипулирования ими. В реляционной базе данных все данные хранятся в таблицах. Названия сущностей станут заголовками таблиц, а атрибуты станут столбцами. Целостность данных в реляционной базе данных основывается на концепции ключей. Первичный ключ (PK) – это атрибут который можно использовать для уникальной идентификации таблицы. Так у таблицы “гражданин” первичным ключом станет “номер свидетельства о рождении”, у таблицы “паспортист” – “id-паспортиста”, у таблицы “документы” – “номер заявления”, таблица “паспорт РФ” будет идентифицироваться атрибутом “номер паспорта РФ”, а таблица “заграничный паспорт” – “номер заграничного паспорта”. Внешний ключ (FK) – это атрибут, который существует в нескольких таблицах и является первичным ключом одной из этих таблиц. Связь проводим от первичного ключа одой таблицы до внешнего ключа другой таблицы. Реляционная модель представлена на рисунке 3.1.
Рисунок 3.1- Реляционная модель
4 Нормализация
Нормализация – это процесс, позволяющий гарантировать эффективность структур данных в реляционной базе данных.
Первая нормальная форма требует, чтобы все значения полей были атомарными и все записи уникальными. Реляционная модель представленная на рисунке 3.1 находится в первой нормальной форме.
Модель находится во второй нормальной форме, если она, во-первых, находиться в первой нормальной форме; и, во-вторых, не содержит неключевых атрибутов, находящихся в частичной функциональной зависимости от первичного ключа. Исходя из определения, разбиваем таблицу “гражданин” на две таблицы, вторую образовавшеюся таблицу назовем “данные гражданина”. В таблице “гражданин ” у нас остался только один идентификатор “номер свидетельства о рождении” значит неключевые атрибуты зависят от всего первичного ключа. В таблице “данные гражданина” нет неключевых атрибутов, значит частичной зависимости быть не может. Таким же образом разбиваем таблицы “паспортист” и “заграничный паспорт”. Реляционная модель во второй нормальной форме представлена на рисунке 4.1.
Модель находится в третьей нормальной форме, если она находится во второй нормальной форме и не имеет транзитивных зависимостей. Транзитивная зависимость – это зависимость между неключевыми атрибутами. Таким образом, выделяем из таблицы “заграничный паспорт” неключевые атрибуты “гражданство” и “код государства”, которые находятся в зависимости, в отдельную таблицу “соответствия кодов и государств”. Получаем модель в третьей нормальной форме, которая представлена на рисунке 4.2.
Рисунок 4.1 – Вторая нормальная форма
Рисунок 4.2 – Третья нормальная форма
5 Проектирование базы данных в ACCESS.
Microsoft Access – это СУБД предназначенная для хранения и поиска информации, её представления в удобном виде и автоматизации часто повторяющихся операций (рис. 5.1). Чтобы реализовать базу данных в access надо ввести через режим конструктора свою модель. Для начала надо ввести название таблиц и всех их атрибутов. Здесь же задается тип данных и первичный ключ .
Затем реализуем свою реляционную модель третей нормальной формы в схеме данных.
После этого вводим в таблицы данные и делаем запросы. Для этого создаем запросы через режим конструктора: добавляем нужные таблицы (связи выставляются сами) и указываем поля, необходимые отобразить после запроса.
В результате на экран выведутся те поля, которые были указаны в запросе.
Можно создавать запросы с условиями отбора, или сортируя данные. К примеру, нужно вывести граждан, которые получили паспорт раньше 05.05.2000г. Для этого вводим ограничение в графу “Условие отбора”. В результате появиться таблица с гражданином Окрушко Сергеем Александровичем, который получил паспорт 01.03.1995г.
6 Создание SQL запросов
SQL – это язык реляционных баз данных, позволяющий пользователю создавать и удалять данные, содержащиеся в базе, управлять ими и налагать правила, обеспечивающие целостность реляционных данных. Чтобы войти в режим SQL в access нужно в поле конструктора запроса нажать правой кнопкой и в появившемся окне нажать “Режим SQL”.