Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Материалы по БД / 8600_бд - Лабораторная работа2.doc
Скачиваний:
49
Добавлен:
13.02.2016
Размер:
112.64 Кб
Скачать

Лабораторная работа № 2.

Реляционные языки.

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

Краткие теоретические сведения.

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

Операции выборка, проекция – унарные, т.к. работают с одним отношением. Другие операции работают с парами отношений и называются бинарными.

Выборка – операция над одним отношением и определяет результирующее отношение, которое содержит только те кортежи исходного отношения, которые удовлетворяют заданному предикату. Например, составьте список все студентов со средним баллом, превышающим 4 - σSRBAL>4(STUDENT)

Проекция – операция над одним отношением. Определяет новое отношение, создаваемое посредством извлечения значений указанных атрибутов и исключения из результатов строк-дубликатов. Например, создать список среднего балла студентов с указанием атрибутов,FIO, NGR, SRBAL – ПFIO,NGR,SRBAL(STUDENT).

Декартово произведение – определяет новое отношение на основании отношенийRиS, которое является результатом конкатенации каждого кортежа из отношенияRс каждым кортежем из отношенияS.(RxS).

Объединение – операция над отношениями R и S, при условии их совместимости с образованием одного отношения в результате их конкатенации с максимальным количеством кортежей и исключением дубликатов.(RÈS).

Разность– разность отношенийRиSсостоит из кортежей, которые имеются в отношенииR, но отсутствуют в отношенииS.RиSдолжны быть совместимыми отношениями.(R-S).

Соединение – определяет отношение, которое содержит кортежи из декартового произведения отношенийRиS, удовлетворяющие предикатуF.(RjoinS).

Пересечение определяет отношение, которое содержит кортежи, которые присутствуют как в отношенииR, так и в отношенииS.(RÇS).

Деление – операция, результатом которой является набор кортежей отношения R, определенных на множестве атрибутов С, которое соответствует комбинации всех кортежей отношенияS.(R¸S).

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

Так, для указания отношения Staffв качестве области определения переменнойSиспользуется следующая форма записи:RANGEOFSISSTAFF. Запрос: отыскать сотрудников, которые получают зарплату > 100 000, запишется следующим образомRANGEOFSISSTAFF{S|S.Salary>100 000}.

Для указания количества экземпляров, к которым должен быть применен предикат в формулах могут использоваться два типа кванторов. Квантор существования ($) используется в формуле, которая должна быть истинной хотя бы для одного экземпляра, например:RANGEOFBISBranch$B(B.Bno=S.BnoÙB.City=”Brest”)/

Квантор общности (") используется в выражениях, которые относятся ко всем экземплярам, например,"B(B.CityØ= “Minsk”.

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

Например, найти имена всех менеджеров , зарплата которых >250000.

{fname, lname | $position, $salary

(Staff(lname, position,salary)Ùposition=”Manager”Ùsalary>250000}

Соседние файлы в папке Материалы по БД