Тема: понятие реляционной модели данных. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Тема: понятие реляционной модели данных.



ПЛАН

1 Основные определения и понятия

2Свойства отношения

3Обновление отношений

 

1 Основные определения и понятия.

Реляционная база данных (РБД) - это конечный (ограниченный) набор отношений (таблиц) различной арности, то есть имеющих различное число столбцов (атрибутов). Назначением отношения является представление объектных множеств и связей между ними.

Строка в таблице (кортеж) - представляет некоторый объект реального мира или соотношение между объектами.

Схема отношения г - это конечное множество имен атрибутов («шапка» таблицы). Если г – отношение, то его схемой будет конечное множество имён атрибутов {A1, A2,.., An} или r = R(Ai).

Пример 2.1.

1. Объектное множество ИНЖЕНЕР {Таб_№, Фамилия И.О.,Должность} представляется отношением (табл. 2.1):

Название отношения ИНЖЕНЕР Таблица 2.1

Таб_№ Фамилия И.О. Должность
  Васин В.Г. Механик
  Попов А.Д. Электрик
  Рогов В.П. Технолог

Схема отношения

Объекты

отношения

(кортежи)

 

Значения атрибутов

{ D1} { D2} { D3}

 

Каждому имени атрибута Аi, где 1≤ i ≤ n, ставится в соответствие множество допустимых для соответствующего столбца значений. Это множество Di называется доменом данного атрибута и содержит потенциальное множество допустимых значений данного типа. В отношении ИНЖЕНЕР домен D1 содержит все допустимые значения табельных номеров, тип данного – «целый», домен D2 – допустимое множество фамилий инженеров, тип «текстовый» и домен D3 - допустимое множество должностей инженеров, тип - «текстовый».

Семантически понятие домена подразумевает, что данные считаются сравнимыми, если они относятся к одному домену. Например, значения доменов "Фамилия И.О." и "Должность" относятся к типу «текстовый», но не являются сравнимыми. Для сравнимых данных могут быть определены операции разного рода - соединение, пересечение и др.

Отображение каждого множества атрибутов Ri на свой домен Di называется кортежем отношения (строка таблицы). Каждая строка таблицы (кортеж отношения) является множеством значений, взятых по одному из домена каждого атрибута. В общем случае, для всего отношения, домены образуют множество:

D = D1 U D2 U... U Dn (U – логический знак объединения).

Отношение г со схемой R - это конечное множество отображений {t1 t2,... tp} из R в D.

Таким образом, таблица в РБД – это отношение, её шапка – схема, которая состоит из имён атрибутов (названий столбцов), строка таблицы является кортежем отношения и состоит из значений атрибутов из соответствующего домена.

Каждый кортеж является отображением реального объекта с атрибутами-свойствами этого объекта.

Реляционная БД - это набор конечных отношений, отображающих объектные множества и связи между ними. Отношения изображаются в виде таблиц, где имена атрибутов выносятся в шапку таблицы (табл. 2.1):

r Таблица 2.1

А1 B2 C3 Kn
a1 b1 c1   k1
a2 b2 c2   k2
a3 bn cn   kn

R

R1

R2

Rn

Свойства отношения

 

Отношение может находиться в разных состояниях.

1. Отношение называется нормализованным, если каждый компонент кортежа является простым, атомарным значением, не состоящим из группы

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

2. Нормализованное отношение представляется в виде таблицы. Имя таблицы соответствует имени отношения, имена столбцов - именам атрибутов, строки - кортежам.

3. Все строки (кортежи) должны быть различны.

4. Отношение может иметь «пустой» атрибут, если его значения не применяются или пока неизвестны.

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

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

Внешний ключ – набор атрибутов (или один атрибут) одного отношения, являющийся ключом другого отношения. Атрибуты внешнего ключа могут иметь имена, отличные от имён ключа другого отношения, с которым устанавливается связь.

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

Подведем итоги:

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

• Степень отношения - число его атрибутов. Отношение степени
один называют унарным, степени два - бинарным, степени три - тернарным, а степени n - n-арным.

• Кардинальное число или мощность отношения - это число его
кортежей. Кардинальное число отношения изменяется во времени в отличие от его степени.

• Если атрибут неприменяется или его значение неизвестно, то ему
должно быть приписано специальное значение, которое называется "пустым".

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

Пример 2.2. Дана локальная ПрО, состоящая из объектных множеств Лектор (с атрибутами ФИО, должность, учёное звание) и Предмет (с атрибутами Наименование и Количество часов).

Составить концептуальную и реляционную модели БД для такой ПрО.

1. Рассмотрим локальную ПрО с концептуальных позиций:

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

• между объектами ЛЕКТОР и ПРЕДМЕТ действует связь Читает мощностью N: M, поскольку один лектор может читать несколько предметов, и один предмет может читаться разными лекторами (рис. 1.25).

 

Рис. 1.25 Концептуальная модель ЛПрО «Лектор-Предмет»

Реализация такой связи выполняется её заменой на новый объект

Читает (на рис. 1,25 не показан) с двумя связями с теми же объектами, но мощностью 1:N между объектами ЛЕКТОР и ЧИТАЕТ и связью 1:1 между объектами ЧИТАЕТ и ПРЕДМЕТ.

2. преобразуем концептуальную модель в реляционную (рис. 26).

Схема отношения Читает состоит из двух имён атрибутов - Код лекции и Код предмета, а значения атрибутов составлены из значений первичных ключей отношений ЛЕКТОР и ПРЕДМЕТ.

Пример 2.3. Определить по разработанной РМД, какой лектор читает дисциплину «Базы данных».

Из отношения ПРЕДМЕТ определяем, что код дисциплины «Базы данных», 42 час. равен 03, по этому первичному (он же внешний) ключу входим в отношение ЧИТАЕТ и определяем, что коду предмета 03 соответствует код лектора 02. По первичному ключу отношения ЛЕКТОР определяем, что курс «Базы данных» читает Ветров С.С., к.т.н., доцент.

ЛЕКТОР

Код лектора Фамилия И.О. Должность Уч_степень
  Васин П.П. Доцент к.т.н.
  Ветров С.С. Доцент к.т.н.
  Краев В.В. Профессор д.т.н.
04 Мухин И.И. Ст. препод. -

N ЧИТАЕТ 1 1 ПРЕДМЕТ

Код лектора Код предмета   Код предмета Название предмета Кол-во часов
        Теор.экон.инфор.  
        Сист.программ.  
        Базы данных  
        Имитац.моделир.  
        Теор.транслятор.  
        Структ.алгоритм  

Рис. 1.26 Реляционная модель данных ЛПрО «Лектор-Предмет»

Обновление отношений

 

Обновление отношений выполняется следующими операциями:

• добавление кортежа;

• удаление кортежа;

• изменение кортежа.

Эти действия выполняются следующими операторами ЯМД:

1. Операция добавления для отношения r (A1, A2,... Аn) имеет вид:

ADD (г; A1=d1, А2=d2,... An=dn).

Если порядок атрибутов фиксирован, возможна более короткая запись:

ADD (r; d1, d2,... dn).

Если в отношение ЛЕКТОР (пример 2.2) потребуется добавить новый кортеж {05_Сомов_ Ассистент}, то команда добавления примет вид:

ADD (ЛЕКТОР; A1=05, А2=Сомов, А3= ассистент, A4= -).

После выполнения команды нужно добавить новый кортеж в объект ЧИТАЕТ с кодом лектора 05 и необходимым кодом предмета и в объект ПРЕДМЕТ (если добавилась новая дисциплина), а также установить новые связи между объектами.

2. Операция удаления кортежа записывается аналогично:

DEL (r; A1=d1 A2=d2,... An=dn),

или для упорядоченных атрибутов:

DEL (r; d1 d2,... dn).

Часто достаточно указать только значение ключа кортежа:

DEL (r; ключ).

Если указанный кортеж в отношении r отсутствует, то отношение не изменится.

Для примера 2.2 удаление предмета «Теория трансляторов» при фиксированных атрибутах выполняется командой:



Поделиться:


Последнее изменение этой страницы: 2017-01-27; просмотров: 156; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.119.199 (0.014 с.)