Реляционные базы данных-правила формирования отношений

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

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

Задачами данной работы являются:
- дать основные понятия баз данных, описать
архитектуру СУБД, модели данных;
- раскрыть модель сущность-связь, описать
характеристику связей, классификацию сущностей, структуру первичных и внешних
ключей, определить понятие целостности данных;
- описать реляционную структуру данных, реляционные
базы данных и способы манипулирования ими.

Содержание работы

Введение

Глава 1. Основные понятия БД и СУБД
...............5

1.1 Данные и
ЭВМ..........................5

1.2 Архитектура
СУБД......................7

1.3 Модели
данных......................10
Глава 2. Инфологическая модель данных
"Сущность-связь".....12
2.1 Основные
понятия.......................12

2.2 Характеристика связей и язык
моделирования.........14

2.3 Классификация
сущностей..................16

2.4 Первичные и внешние
ключи.................19

2.5 Ограничения
целостности....................23

Глава 3. Реляционный
подход..................25

3.1 Реляционная структура
данных.................25

3.2 Реляционная база
данных.....................28

3.3 Манипулирование реляционными
данными...........30

Заключение

Список используемой
литературы

Содержимое работы - 1 файл

Курсовая.docx

— 40.61 Кб (Скачать файл)

буква, заменяющая слово "много") и необходимое  пояснение.

Между двумя сущностям, например, А и В возможны четыре вида связей.

     Первый тип – связь ОДИН-К-ОДНОМУ (1:1): в каждый момент времени  каждому

представителю (экземпляру) сущности А соответствует 1 или 0 представителей

сущности В:

    

Студент может не "заработать" стипендию, получить обычную или одну из

повышенных  стипендий.

     Второй тип – связь ОДИН-КО-МНОГИМ (1:М): одному представителю сущности А

соответствуют 0, 1 или несколько представителей сущности В.

    

Квартира  может пустовать, в ней может  жить один или несколько жильцов.

Так как  между двумя сущностями возможны связи в обоих направлениях, то

существует  еще два типа связи МНОГИЕ-К-ОДНОМУ (М:1) и МНОГИЕ-КО-МНОГИМ (М:N).

     Пример. Если связь между сущностями  МУЖЧИНЫ и ЖЕНЩИНЫ называется  БРАК, то

существует  четыре возможныхпредставления такой связи:

    

Характер  связей между сущностями не ограничивается перечисленными. Существуют

и более  сложные связи:

·  множество  связей между одними и теми же сущностями

    

(пациент,  имея одного лечащего врача,  может иметь также несколько  врачей-

консультантов; врач может быть лечащим врачом нескольких пациентов и может

одновременно  консультировать несколько других пациентов);

·  тренарные связи

    

(врач  может назначить несколько пациентов  на несколько анализов, анализ  может

быть  назначен несколькими врачами нескольким пациентам и пациент может быть

назначен на несколько анализов несколькими врачами);

·  связи  более высоких порядков, семантика (смысл) которых иногда очень сложна.

    

2.3                   Классификация сущностей 

Существуют  три основные класса сущностей: стержневые, ассоциативные

и характеристические, а также подкласс ассоциативных сущностей –

обозначения.

     Стержневая сущность (стержень) –  это независимая сущность

(несколько  подробнее она будет определена  ниже).

В рассмотренных  ранее примерах стержни – это "Студент", "Квартира", "Мужчины",

"Врач", "Брак" и другие, названия которых  помещены в прямоугольники.

Ассоциативная сущность (ассоциация) – это связь  вида

"многие-ко-многим" ("-ко-многим" и т.д.) между двумя или более сущностями или

экземплярами  сущности . Ассоциации рассматриваются как полноправные сущности:

- они  могут участвовать в других  ассоциациях и обозначениях точно  так же, как

стержневые  сущности;

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

необходимых для указания связей, но и любое  число других атрибутов,

характеризующих связь.

     Характеристическая сущность (характеристика) – это связь вида

"многие-к-одной" или "одна-к-одной" между двумя сущностями (частный случай

ассоциации). Единственная цель характеристики в  рамках рассматриваемой

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

Необходимость в них возникает в связи  с тем, что сущности реального  мира имеют

иногда  многозначные свойства. Муж может  иметь несколько жен , книга – несколько

характеристик переиздания (исправленное, дополненное, переработанное, ...) и

т.д.

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

женщины лишаются статуса жен, если умирает  их муж.

     Обозначающая сущность или обозначение  – это связь вида

"многие-к-одной" или "одна-к-одной" между двумя сущностями и отличается от

характеристики  тем, что не зависит от обозначаемой сущности.

В заключение рассмотрим пример построения инфологической модели базы данных

"Питание", где должна храниться информация  о блюдах, их ежедневном

потреблении, продуктах, из которых приготавливаются эти блюда, и поставщиках

этих  продуктов. Информация будет использоваться поваром и руководителем

небольшого  предприятия общественного питания, а также его посетителями.

С помощью  указанных пользователей выделены следующие объекты и характеристики

проектируемой базы:

1.                      Блюда, для описания которых  нужны данные, входящие в

их кулинарные рецепты: номер блюда (например, из книги  кулинарных рецептов),

название  блюда, вид блюда (закуска, суп, горячее  и т.п.), рецепт (технология

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

каждого продукта, входящего в блюдо.

2.                      Для каждого поставщика продуктов:  наименование,

адрес, название поставляемого продукта, дата поставки и цена на момент

поставки.

3.                      Ежедневное потребление блюд (расход): блюдо,

количество  порций, дата.

Анализ  объектов позволяет выделить:

·  стержни  Блюда, Продукты и Города;

·  ассоциации Состав (связывает Блюда с Продуктами) и

Поставки (связывает Поставщиков с Продуктами);

·  обозначение  Поставщики;

·  характеристики Рецепты и Расход.

    

     Рисунок  2. Инфологическая модель  базы данных "Питание"

    

     

2.4       Первичные и внешние ключи 

Напомним, что ключ или возможный ключ –  это минимальный набор

атрибутов, по значениям которых можно однозначно найти требуемый экземпляр

сущности. Минимальность означает, что исключение из набора любого атрибута не

позволяет идентифицировать сущность по оставшимся. Каждая сущность обладает

хотя  бы одним возможным ключом. Один из них принимается за первичный  ключ

. При  выборе первичного ключа следует  отдавать предпочтение несоставным  ключам

или ключам, составленным из минимального числа  атрибутов. Нецелесообразно также

использовать  ключи с длинными текстовыми значениями (предпочтительнее

использовать  целочисленные атрибуты). Так, для  идентификации студента можно

использовать  либо уникальный номер зачетной книжки, либо набор из фамилии,

имени, отчества, номера группы и может  быть дополнительных атрибутов, так  как

не исключено  появление в группе двух студентов (а чаще студенток) с одинаковыми

фамилиями, именами и отчествами. Плохо также  использовать в качестве ключа не

номер блюда, а его название, например, " Закуска из плавленых сырков "Дружба" с

ветчиной  и соленым огурцом" или "Заяц в сметане с картофельными  крокетами и

салатом из красной капусты".

Не допускается, чтобы первичный ключ стержневой сущности (любой атрибут,

участвующий в первичном ключе) принимал неопределенное значение. Иначе

возникнет противоречивая ситуация: появится не обладающий индивидуальностью, и,

следовательно не существующий экземпляр стержневой сущности. По тем же причинам

необходимо  обеспечить уникальность первичного ключа.

Теперь  о внешних ключах:

·  Если сущность С связывает сущности А и В, то она должна включать внешние

ключи, соответствующие первичным ключам сущностей А и В.

·  Если сущность В обозначает сущность А, то она должна включать внешний

ключ, соответствующий  первичному ключу сущности А.

Таким образом, при рассмотрении проблемы выбора способа представления

ассоциаций  и обозначений в базе данных основной вопрос, на который следует

получить  ответ: "Каковы внешние ключи?". И далее, для каждого внешнего ключа

необходимо  решить три вопроса:

1. Может ли данный внешний ключ принимать неопределенные значения (NULL-

значения)? Иначе говоря, может ли существовать некоторый экземпляр сущности

данного типа, для которого неизвестна целевая  сущность, указываемая внешним

ключом? В случае поставок это, вероятно, невозможно – поставка,

осуществляемая  неизвестным поставщиком, или поставка неизвестного продукта не

имеют смысла. Но в случае с сотрудниками такая ситуация однако могла бы иметь

смысл – вполне возможно, что какой-либо сотрудник в данный момент не зачислен

вообще  ни в какой отдел. Заметим, что  ответ на данный вопрос не зависит  от

прихоти проектировщика базы данных, а определяется фактическим образом

действий, принятым в той части реального  мира, которая должна быть

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

отношение и к вопросам, обсуждаемым ниже.

2. Что  должно случиться при попытке  УДАЛЕНИЯ целевой сущности, на  которую

ссылается внешний ключ? Например, при удалении поставщика, который осуществил

по крайней  мере одну поставку. Существует три возможности:

     КАСКАДИРУЕТСЯ  Операция удаления "каскадируется" с тем, чтобы удалить также поставки этого поставщика.

ОГРАНИЧИВАЕТСЯ  Удаляются лишь те поставщики, которые еще не осуществляли поставок. Иначе операция удаления отвергается.

Информация о работе Реляционные базы данных-правила формирования отношений