Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
03_Пособие.doc
Скачиваний:
21
Добавлен:
01.05.2025
Размер:
2 Мб
Скачать
☆

4Реляционная модель данных

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

Для того чтобы представить, как устроена предметная область, нужно задать множество объектов реального мира. Объект – семантическое понятие, которое может быть полезно (существенно) при обсуждении устройства реального мира. Сущности реального мира – объекты – не обязательно материальны. У объектов важным является только понятие существенности и различимости каждого объекта от других. Протекающие в предметной области процессы или явления также попадают под это определение объекта. Будем считать, что объект обладает рядом свойств. Именованное свойство объекта будем называть атрибутом объекта. Примеры атрибутов: фамилия, имя, отчество, дата рождения. Атрибуты могут принимать некоторые значения. Множество, из которого выбираются значения конкретного атрибута, называется доменом этого атрибута.

Схема отношения это конечное множество атрибутов, определяющих объект. Пример схемы отношения:

Детали (Номер детали, Название детали, Вид обработки, Вес).

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

Напомним, что кортежем называется упорядоченное множество. Можно дать еще одно определение отношения.

Отношение это подмножество прямого произведения одного или нескольких доменов атрибутов.

Напомним, что прямое произведение двух множеств называется декартовым произведением.

Поясним данные определения на примерах.

Пример 1. Пусть имеется два домена:

D1 = (0,1); D2 = (a,b,c).

Построим прямое произведение доменов D1,D2:

D1 x D2 = {(0,a),(0,b),(0,c),(1,a),(1,b),(1,c)}.

В качестве отношения, построенного на доменах D1, D2, можно выбрать любое подмножество D1 x D2, например, следующее:

R = {(0,a),(0,c),(1,b),(1,c)}.

Отношение R состоит из четырех кортежей, в каждом кортеже по два элемента, первый выбирают из домена D1, второй – из домена D2.

Пример 2. Пусть имеется четыре домена:

D1 – множество целых чисел, например, множество номеров деталей (101, 34, 23, 109, 147).

D2 – множество символьных строк, например, множество названий деталей (втулка, кронштейн, скоба, муфта, болт).

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

D4 – множество вещественных чисел, например, множество весов деталей (45.8, 6.9, 123, 69.3, 5.2, 2.34).

В качестве отношения, построенного на доменах D1, D2, D3, D4, можно выбрать, например, следующее:

R = { (34, втулка, литье из пластмасс, 69.3), (23, кронштейн, холодная штамповка, 45.8), (101, болт, механическая обработка, 5.2)}.

Отношение R состоит из трех кортежей, в каждом кортеже по четыре элемента.

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

Например:

Детали

Номер детали

Название детали

Вид обработки

Вес

401000

Втулка

Литье из пластмасс

69.3

409857

Кронштейн

Холодная штамповка

45.8

409900

Стойка

Механическая обработка

5.2

409870

Скоба

Холодная штамповка

0.2

409859

Шайба

Токарная обработка

0.3

409887

Шасси

Механическая обработка

1.4

Будем считать, что следующие наборы терминов эквивалентны:

  • отношение, таблица, файл;

  • кортеж, строка, запись;

  • атрибут, столбец, поле.

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

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

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

Схема реляционной базы – множество используемых в приложениях схем отношений данных.

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

Пример фрагмента базы данных:

Отношение 1. Радиоэлементы (транзисторы)

Тип прибора

Материал

Структура

Технология

Мощность

Коллектора

ГТ109Г

Ge

p-n-p

C

30

ГТ115Б

Ge

p-n-p

C

50

КТ208А

Si

p-n-p

ПЭ

200

Отношение 2. Склад

Номер

стеллажа

Тип прибора

Количество

10

ГТ109Г

100

11

ГТ109Г

50

10

КТ208А

12

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

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

Реляционный запрос – описание свойств (условий), которые должны удовлетворять интересующие пользователя данные.

Одной из эквивалентных формой описания запроса является реляционное выражение.

Как и во всякой алгебре, мы приходим к понятиям «переменная» и «значение переменной». В нашем случае – переменная отношения и значение отношения. 

Переменной отношение – это абстрактное понятие, под которым мы будем понимать произвольное отношение. Для некоторых операций произвольное отношение с определенной схемой отношения.

Для того чтобы задать значение отношения необходимо задать:

  • схему отношения, как множество атрибутов, точнее, множество пар вида (имя_атрибута, имя_ домена).

  • множество кортежей (тело отношения).

Каждый кортеж – упорядоченное множество.  С каждым значением в кортеже связано имя атрибута, т.е. кортеж можно понимать как множество пар (имя _ атрибута, значение _атрибута).