Целостность базы данных

Автор: Пользователь скрыл имя, 02 Апреля 2014 в 01:05, курсовая работа

Краткое описание

Целостность базы данных — соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным правилам. Каждое правило, налагающее некоторое ограничение на возможное состояние базы данных, называется ограничением целостности.
Целостность БД не гарантирует достоверности содержащейся в ней информации, но обеспечивает, по крайней мере, правдоподобность этой информации, отвергая заведомо невероятные, невозможные значения. Таким образом, не следует путать целостность БД с достоверностью БД

Файлы: 1 файл

Целостность БД.docx

— 3.20 Мб (Скачать)

Логическая модель базы данных приведена на рисунке 2.2.

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 2.2 – Логическая модель данных

 

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

 

 

    1. Физическая модель данных

 

Физическое проектирование рассматривает вопросы физической реализации логической модели посредством выбранной СУБД. На этом этапе происходит определение структур хранения данных, методов доступа к данным, разработка средств защиты базы данных.

Приступим к физическому проектированию базы данных. Любая база данных состоит из таблиц (отношений), поэтому теперь наша задача построить таблицы и наполнить их данными, необходимыми для работы системы.

Для создания таблицы Игра необходимо открыть Конструктор таблиц на вкладке Создание. В колонке Имя поля задаем имена полей: Код_игры, Название_игры, Вид_игры. Выбираем соответственно тип данных этих полей: Счетчик, Текстовый, Числовой. Поле Код_игры необходимо сделать ключевым, для связи этой таблицы с другими. Для этого нужно нажать кнопку Ключевое поля на вкладке Сервис. Данная таблица приводится в режиме Конструктор на рисунке 2.3 и в Режиме таблицы на рисунке 2.4.

 

 

Рисунок 2.3 – Таблица Игра в режиме Конструктор

 

 

Рисунок 2.4 – Таблица Игра в режиме таблицы

 

Аналогичным образом создаем таблицы Игрок, Учет и Вид_игры. Структура всех таблиц приведена в таблице 2.1.

 

Таблица 2.1 – Информационные объекты  и их атрибуты

 

Имя объекта

Атрибут

Признак ключа

Тип данных

Игрок

Код_игрока

Ключ

Счетчик

Фамилия

 

Текстовый

Имя

 

Текстовый

Пол

 

Текстовый

Дата_рождения

 

Дата/Время

Игра

Код_игры

Ключ

Счетчик

Название_игры

 

Текстовый

Вид_игры

 

Числовой

Учет

Код_игрока

Поле связи, входит в составной ключ

Числовой

Код_игры

Поле связи, входит в составной ключ

Числовой

Дата_игры

 

Дата/Время

Продолжительность_игры

 

Числовой

Результат

 

Текстовый

Вид_игры

Код

Ключ

Счетчик

Вид_игры

 

Текстовый


 

 

 

Для функционирования базы данных между таблицами необходимо установить связи. Схема данных приведена на рисунке 2.5.

 

 

Рисунок 2.5 – Схема данных БД «Компьютерные игры»

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3 РАЗРАБОТКА ПРИЛОЖЕНИЙ  С БАЗОЙ ДАННЫХ «КОМПЬЮТЕРНЫЕИГРЫ»

 

 

3.1 Запросы

 

Запросы создаются для выборки данных из одной или нескольких связанных таблиц по заданным условиям, для проведения вычислений и статистической обработки данных.

При разработке запросов в СУБД можно использовать: режим мастера, режим конструктора, язык SQL.

Первый запрос назовем «Игроки_Девушки». Здесь необходимо отобрать всех игроков женского пола. Данный запрос в режиме SQL будет выглядеть следующим образом:

 

SELECT Игрок.Фамилия, Игрок.Имя, Игрок.Пол, Игрок.Дата_рождения

FROM Игрок

WHERE (((Игрок.Пол)="жен"));

 

В режиме конструктор этот запрос приведен на рисунке 3.1.

 

 

Рисунок 3.1 – Запрос «Игроки_Девушки» в режиме Конструктор

 

Данный запрос приведем в режиме таблицы на рисунке 3.2.

 

 

 

Рисунок 3.2 – Запрос «Игроки_Девушки» в режиме тадлицы

 

Во втором запросе – «Игры заданного года» – в качестве параметра будет задаваться год, а после его выполнения будут отображаться все игры, проведенные в этом году. В SQL данный запрос выглядит следующим образом:

 

SELECT Игра.Название_игры, Учет.Дата_игры

FROM Игра INNER JOIN Учет ON Игра.Код_игры=Учет.Код_игры

WHERE YEAR(Учет.Дата_игры)=год;

 

Этот запрос приведем в режиме Конструктор (рисунок 3.3) и в режиме таблицы (рисунок 3.4).

 

 

Рисунок 3.3 – Запрос «Игры заданного года» в режиме Конструктор

 

 

Рисунок 3.4 – Запрос «Игры заданного года» в режиме таблицы

 

В качестве следующего запроса рассмотрим запрос на обновление, который позволит изменить название игры Косынка на Солитер в таблице Игра. На языке SQL этот запрос выглядит следующим образом:

 

UPDATE Игра SET Игра.Название_игры = "Солитер"

WHERE (((Игра.Название_игры)="Косынка"));

 

На рисунке 3.5 приведем данный запрос в режиме Конструктор

 

 

Рисунок 3.5 – Запрос на обновления в режиме Конструктор

 

Рассмотрим запрос на удаление. После выполнения данного запроса из таблицы Игрок будет удалена запись об игроках, год рождения которых заканчивается на 1. SQL код рассматриваемого запроса приведен ниже

 

DELETE Игрок.*, Игрок.Дата_рождения

FROM Игрок

WHERE (((Игрок.Дата_рождения) Like "*1"));

 

В режиме Конструктор данный запрос приведен на рисунке 3.6.

 

Рисунок 3.6– Запрос на удаление в режиме Конструктор

 

Далее рассмотрим перекрестный запрос «Количество выигрышей и проигрышей по каждой игре». Результаты представлены в виде сводной таблицы с группировкой по строкам и столбцам и вычислениями по заданной функции (Count). В SQL данный запрос выглядит следующим образом

 

TRANSFORM Count(Результат)

SELECT Название_игры

FROM Игра INNER JOIN Учет ON Игра.Код_игры=Учет.Код_игры

GROUP BY Название_игры

PIVOT Результат;

 

Также представим данный запрос в режиме Конструктор (рисунок 3.7) и таблицы (рисунок 3.8).

 

 

Рисунок 3.7 – Запрос «Количество выигрышей и проигрышей по каждой игре» в режиме Конструктор

 

 

Рисунок 3.8 – Запрос «Количество выигрышей и проигрышей по каждой игре» в режиме таблицы

 

 

3.2 Формы

 

Cоздадим три формы: Игра, Игрок, Учет. Для этого необходимо на вкладке Создание выбрать Конструктор форм. В заголовке формы добавить надпись с названием формы. В область данных добавить необходимые поля, а также создать кнопки для удобного перемещения по записям. Форму Игра приведем на рисунке 3.9 в режиме Конструктор и на рисунке 3.10 в режиме формы.

 

 

Рисунок 3.9 – Форма Игра в режиме Конструктор

 

 

Рисунок 3.10 – Форма Игра в режиме формы

 

На рисунках 3.11 и 3.12 представлена форма Игрок в режиме Конструктор и режиме формы соответственно.

 

 

Рисунок 3.11 – Форма Игрок в режиме Конструктор

 

 

Рисунок 3.12 – Форма Игрок в режиме формы

 

Форма Учет приведена в режиме Конструктор (рисунок 3.13) и формы (рисунок 3.14).

 

 

Рисунок 3.13 – Форма Учет в режиме Конструктор

 

 

Рисунок 3.14 – Форма Учет в режиме формы

 

 

3.3 Отчеты

 

Отчеты используются для формирования выходного документа, предназначенного для вывода на печать. Для создания отчета необходимо создать запрос на выборку, включающий поля из таблицы на основе которых базируется отчет. На закладке Создание выбрать кнопку Конструктор отчетов. В качестве источника данных выбрать созданный запрос или таблицу. В режиме конструктора отчетов задать необходимые уровни группировки. Перетащить поля из списка полей в разделы отчета. При этом поля, по которым была задана группировка, размещаются по заголовкам групп, а остальные – в области данных.

Приведем на рисунках 3.15 и 3.16 отчет Игроки_Девушки в режиме Конструктор и режиме представлние отчета соответственно.

 

 

Рисунок 3.15 – Отчет Игроки_Девушки в режиме Конструктор

 

 

Рисунок 3.16 – Отчет Игроки_Девушки в режиме представление отчета

 

Аналогично представлен «Количество выигрышей и проигрышей по каждой игре» отчет (рисунки 3.17 и 3.18)

 

 

Рисунок 3.19 – Отчет «Количество выигрышей и проигрышей по каждой игре» в режиме Конструктор

 

 

Рисунок 3.18 – Отчет «Количество выигрышей и проигрышей по каждой игре» в режиме представление отчета

 

 

3.4 Кнопочная форма и интерфейс пользователя

 

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

Создание и корректировка кнопочной формы производится с помощью надстройки Диспетчер кнопочных форм на закладке Работа с базами данных.

В диалоге Диспетчер кнопочных форм формируются страниы кнопочной формы разных уровней, одна из которых является главной и используется по умолчанию при открытии кнопочной формы. В нашем случае главной является страница БД «Компьютерные игры» (по умолчанию). Кнопка Создать позволяет создавать новые новые страницы кнопочной формы и задавать им имена. Кнопка Изменить вызывает диалог Изменение страницы кнопочной формы, который позволяет создавать элементы и корректировать их названия.

После создания всех страниц кнопочной формы и элементов на каждой странице закрываем диспетчер, а в базе данных кнопочная форма и таблица Switchboard Items, которая описывает иерархические уровни, подписи и действия кнопок формы. [8]

Главная страница кнопочной формы приведена на рисунке 3.19.

 

 

Рисунок 3.19 – главная страница кнопочной формы БД «Компьютерные игры»

 

При нажатии на кнопку Ввод и просмотр данных открывается следующая страница, приведенная на рисунке 3.20.

 

 

Рисунок 3.20 – Ввод и просмотр данных

 

При нажатии кнопок Игрок, Игра и Учет будут соответственно открываться формы с одноименными названиями, приведенные на рисунках 3.10, 3.12 и 3.14.

Информация о работе Целостность базы данных