Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД - ответы госы.doc
Скачиваний:
52
Добавлен:
11.05.2015
Размер:
238.08 Кб
Скачать
  1. Специальные операции реляционной алгебры.

Специальные реляционные операции включают:

  • ограничение отношения (выборка)

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

Фамилия

Пол

Специализация

Количество иждивенцев

Стаж

1

Иванов

М

Инженер

1

5

2

Федоров

М

Инженер

1

5

3

Иванова

Ж

Бухгалтер

2

10

4

Петров

М

Техник

0

3

Стаж>5 – в результат попадет 3 строка

Специализация = 'Бухгалтер' and Пол = 'М' – в результате пустое множество

  • проекцию отношения

Это унарная операция, отсеивает ненужные столбцы и оставляет нужные

Сотрудник [Фамилия, Пол]

Фамилия

Пол

Иванов

М

Федоров

М

Иванова

Ж

Петров

М

  • соединение отношений

Выполняется над отношениями с одинаковыми атрибутами, является объединением декартова произведения и выборки.

  • деление отношений.

Эта операция наименее очевидна из всех операций реляционной алгебры и поэтому нуждается в более подробном объяснении. Пусть заданы два отношения - A с заголовком {a1, a2, ..., an, b1, b2, ..., bm} и B с заголовком {b1, b2, ..., bm}. Будем считать, что атрибут bi отношения A и атрибут bi отношения B не только обладают одним и тем же именем, но и определены на одном и том же домене. Назовем множество атрибутов {aj} составным атрибутом a, а множество атрибутов {bj} - составным атрибутом b. После этого будем говорить о реляционном делении бинарного отношения A(a, b) на унарное отношение B(b).

Результатом деления A на B является унарное отношение C(a), состоящее из кортежей v таких, что в отношении A имеются кортежи <v, w> такие, что множество значений {w} включает множество значений атрибута b в отношении B.

Предположим, что в базе данных сотрудников поддерживаются два отношения: СОТРУДНИКИ (ИМЯ, ОТД_НОМЕР) и ИМЕНА (ИМЯ), причем унарное отношение ИМЕНА содержит все фамилии, которыми обладают сотрудники организации. Тогда после выполнения операции реляционного деления отношения СОТРУДНИКИ на отношение ИМЕНА будет получено унарное отношение, содержащее номера отделов, сотрудники которых обладают всеми возможными в этой организации именами.

  1. Понятие функциональной зависимости. Символическая запись фз.

ПОСТАВКИ

Номер_поставщика

Город

Номер_детали

Количество_деталей

S1

Лондон

Р1

100

S1

Лондон

Р2

100

S2

Париж

Р1

200

S2

Париж

Р2

200

S3

Париж

Р2

300

S4

Лондон

Р2

400

S4

Лондон

Р4

400

S4

Лондон

Р5

400

Символическая запись: X->Y (X – детерминант, Y – зависимая часть). «Y функционально зависит от X»,«X функционально определяет Y».

Существуют 2 случая:

  • Статический – рассматривается значение переменной-отношения в определенный момент времени.

Пусть r – отношение, X, Y – произвольные подмножества атрибутов r. Говорят, что Y функционально зависит от X тогда и только тогда, когда одному значению X в точности соответствует единственное значение Y. Обратное не обязательно.

Если 2 кортежа совпадают по значению X, они должны совпадать и по значению Y, но не наоборот.

Пример:

Номер_поставщика -> Город (поставщик может находиться только в 1 городе)

Номер_поставщика -> Количество_деталей (поставщик поставляет в точности заданное количество деталей)

  • Динамический – рассматривается набор всех возможных значений, которые может принимать переменная-отношение в различные моменты времени.

Пусть R – переменная-отношение, X, Y – подмножества атрибутов R. Говорят, что Y функционально зависит от X тогда и только тогда, когда для любого допустимого значения R какому-либо значению X соответствует единственное значение Y.

Некоторые ФЗ могут выполняться для r и не выполняться для R.

Пример: пусть в отношении ПОСТАВКИ появится строка:

S1

Лондон

Р1

200

ФЗ Номер_поставщика -> Количество_деталей перестанет выполняться.

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