«Базы данных»: Домашний архив

Автор: Пользователь скрыл имя, 12 Декабря 2011 в 15:54, курсовая работа

Описание работы

Целью данной курсовой работы является создание работающей посредством конкретной СУБД базы данных. При этом будут рассмотрены все этапы создания БД.

Содержание

ВВЕДЕНИЕ 3
1. ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ «ДОМАШНИЙ АРХИВ» 4
1.1. Описание предметной области 4
1.2. Основные понятия 5
1.3. Цель проектирования, определение пользователя 6
1.4. Постановка задач и запросов, реализуемых в курсовой работе 6
2. КОНЦЕПТУАЛЬНЫЙ УРОВЕНЬ ПРОЕКТИРОВАНИЯ БД «ДОМАШНИЙ АРХИВ» 8
2.1. Описание сущностей и их атрибутов 8
2.2. Описание связей 11
3. ЛОГИЧЕСКИЙ УРОВЕНЬ ПРОЕКТИРОВАНИЯ БД «ДОМАШНИЙ АРХИВ» 12
3.1. Определение реляционной модели данных, ее основные элементы 12
3.2. Проектирование реляционной модели 12
3.3. Целостность реляционной модели 16
3.4. Индексы 17
4. ОБОСНОВАНИЕ ВЫБОРА СУБД И ТЕХНИЧЕСКИХ СРЕДСТВ 18
4.1. СУБД Microsoft Access 2002 18
4.2. СУБД MySQL 18
4.3. СУБД PostgreSQL 19
4.4. Выбор СУБД 20
4.5. Выбор технических средств 20
5. ФИЗИЧЕСКИЙ УРОВЕНЬ ПРОЕКТИРОВАНИЯ БД «ДОМАШНИЙ АРХИВ» 22
5.1. Физическая модель 22
5.2. Примеры запросов 25
5.3. Примеры отчетов 26
ЗАКЛЮЧЕНИЕ 28
СПИСОК ЛИТЕРАТУРЫ 29

Работа содержит 1 файл

kurs-arch.doc

— 854.50 Кб (Скачать)

Персона

    Данная  сущность содержит информацию о персоне  и имеет следующие атрибуты:

    • код персоны;
    • фамилия;
    • имя;
    • отчество;
    • адрес;
    • телефон.

 

    1. Описание  связей

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

    Концептуальная  модель данных отражает самые общие  представления о предметной области.

Рис. 2.1. Концептуальная схема БД

 

  1. ЛОГИЧЕСКИЙ  УРОВЕНЬ ПРОЕКТИРОВАНИЯ БД «ДОМАШНИЙ АРХИВ»
    1. Определение реляционной модели данных, ее основные элементы

    Реляционная модель данных (РМД) некоторой предметной области представляет собой набор  отношений, изменяющихся во времени (т.е. РМД — представление данных в виде совокупности двумерных таблиц). При создании информационной системы совокупность отношений позволяет  хранить данные об объектах предметной области и моделировать связи между ними.

    Элементами реляционной модели данных являются:

    • отношение (таблица);
    • схема отношений (строка заголовков столбцов таблицы);
    • кортеж (строка таблицы);
    • сущность (описание свойств объекта);
    • атрибут (заголовок столбца таблицы);
    • домен (множество допустимых значений атрибута);
    • значение атрибута (значение поля в записи);
    • первичный ключ (один или несколько атрибутов);
    • тип данных (тип значений элементов таблицы). /3/
    1. Проектирование  реляционной модели

    Существует 2 метода построения реляционной модели:

    • метод декомпозиции (используется при числе ключевых атрибутов не более 20);
    • диаграммы сущность-связь (универсальный).

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

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

    Основные свойства нормальных форм:

    • каждая следующая нормальная форма в некотором смысле лучше предыдущей;
    • при переходе к следующей нормальной форме свойства предыдущих нормальных свойств сохраняются.

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

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

    Определение 1. Функциональная зависимость

    В отношении R атрибут Y функционально  зависит от атрибута X (X и Y могут  быть составными) в том и только в том случае, если каждому значению X соответствует в точности одно значение Y: R.X (r) R.Y.

    Определение 2. Полная функциональная зависимость

    Функциональная  зависимость R.X (r) R.Y называется полной, если атрибут Y не зависит функционально от любого точного подмножества X.

    Определение 3. Транзитивная функциональная зависимость

    Функциональная зависимость R.X (r) R.Y называется транзитивной, если существует такой атрибут Z, что имеются функциональные зависимости R.X (r) R.Z и R.Z (r) R.Y и отсутствует функциональная зависимость R.Z → R.X. (При отсутствии последнего требования мы имели бы «неинтересные» транзитивные зависимости в любом отношении, обладающем несколькими ключами.).

    Определение 4. Неключевой атрибут

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

    Определение 5. Взаимно независимые атрибуты

    Два или более атрибута взаимно независимы, если ни один из этих атрибутов не является функционально зависимым от других.

    Рассмотрим  следующий пример схемы отношений:

    Определение 6. Вторая нормальная форма (в этом определении предполагается, что единственным ключом отношения является первичный ключ)

    Отношение R находится во второй нормальной форме (2NF) в том и только в том случае, когда находится в 1NF, и каждый неключевой атрибут полностью зависит от первичного ключа.

    Таким образом, мы получили вторую нормальную форму.

    Определение 7. Третья нормальная форма (снова определение дается в предположении существования единственного ключа).

    Отношение R находится в третьей нормальной форме (3NF) в том и только в том  случае, если находится в 2NF и каждый неключевой атрибут нетранзитивно зависит от первичного ключа.

    Теперь ознакомимся с сущностями-таблицами поближе. Выше по тексту, Вы можете видеть описание отношений и некоторые характеристики соответствующим атрибутам. Теперь дадим некоторые пояснения. Для краткости описания выше изложенного материала мы ввели некоторые обозначения. Атрибуты сущностей характеризуются тремя параметрами: ключевой атрибут или нет, обязательность поля и метод получения. Ключевой атрибут обозначен подчеркиванием имени этого атрибута. Обязательность поля обозначена в скобках (0 – необязательно, 1- обязательно). Метод получения указан в скобках, через запятую после критерия обязательности (1 – путем ввода, 0 – выбор из предоставленного списка).

    Определение 8. Четвертая нормальная форма

    Отношение R находится в четвертой нормальной форме (4NF) в том и только в том  случае, если в случае существования  многозначной зависимости A (r) (r) B все  остальные атрибуты R функционально зависят от A.

Переход от концептуальной модели к реляционной

    1. Реализация  связи 1:М (один-ко-многим) 
       
      Альбом (код альбома, название альбома, год выхода, количество треков, код жанра, код страны, постоянное расположение). 
      ЖанрАльбома (код жанра, название жанра). 
      Правило: в этом случае строится по одному отношению для каждой сущности. Ключ односвязной сущности добавляется в качестве внешнего ключа в другое отношение.
    2. Реализация связи М:М (многие-ко-многим) 
       
      Книга (код книги, название книги, год выхода, ;количество страниц, код жанра, код страны, постоянное расположение). 
      Книга-Писатель (код книги, код писателя). 
      Писатель (код писателя, фамилия, имя). 
      Правило: не зависимо от обязательности связи строятся 3 отношения. Ключ отношения для связи состоит из ключей обеих сущностей.

    Далее приступим к непосредственному  описанию определенных выше элементов  реляционной модели и заданию  множества их значений:

    АЛЬБОМ (код альбома, название альбома, год выхода, количество треков, код жанра, код страны, постоянное расположение).

    Описание  ключа:

    ("x,y АЛЬБОМ) [код альбома (x) = [код альбома (y)] x = y,

    где x,y – цепочка символов следующих друг за другом;

    Dom(код альбома) = {x | 0 < x };

    Dom(название альбома) = { x | STR(x)}, где STR — предикат, проверяющий является ли цепочка символов следующих друг за другом x строкой символов;

    Dom(год выхода) = {x | 1900 < x };

    Dom(количество треков) = {x | 0 < x };

    Dom(код жанра) = {x | 0 < x };

    Dom(код страны) = {x | 0 < x };

    Dom(постоянное расположение) = { x | STR(x)}, где STR — предикат, проверяющий является ли цепочка символов следующих друг за другом x строкой символов;

    ПИСАТЕЛЬ (код писателя, фамилия, имя).

    Описание  ключа:

    ("x,y ПИСАТЕЛЬ) [код писателя (x) = [код писателя (y)] x = y,

    где x,y – цепочка символов следующих друг за другом;

    Dom(код писателя) = {x | 0 < x };

    Dom(фамилия) = { x | STR(x)}, где STR — предикат, проверяющий является ли цепочка символов следующих друг за другом x строкой символов;

    Dom(имя) = { x | STR(x)}, где STR — предикат, проверяющий является ли цепочка символов следующих друг за другом x строкой символов;

    ЖАНР (код жанра, название жанра).

    Описание  ключа:

    ("x,y ЖАНР) [код жанра (x) = [код жанра (y)] x = y,

    где x,y – цепочка символов следующих друг за другом;

    Dom(код жанра) = {x | 0 < x };

    Dom(название жанра) = { x | STR(x)}, где STR — предикат, проверяющий является ли цепочка символов следующих друг за другом x строкой символов;

    1. Целостность реляционной модели

    Под целостностью понимают свойство БД, означающее, что она содержит полную непротиворечивую информацию, которая адекватно отражает предметную область. /3/

    Существует  «целостность по ссылкам», анализ содержимого двух таблиц на соблюдение следующих правил:

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

    Другими словами, внешний ключ должен быть равным какому-либо значению первичного ключа или может быть полностью неопределенным.

    Над данными  двух таблиц существуют три основные операции:

    • ввод новых записей;
    • модификация записей (каскадное обновление связанных полей);
    • удаление записей (каскадное удаление связанных полей). /3/

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

Информация о работе «Базы данных»: Домашний архив