Содержание
-
Реляционное исчисление
-
Общая характеристика
Запрос – формуланекоторой формально-логической теории; описывает свойства желаемого результата. Ответ – множествообъектов из области интерпретации (базы данных), на котором истинна формула, соответствующая запросу. Формально-логическая теория – теория исчисления предикатов первого порядка, в которой формула задается в виде предиката.
-
Понятие предиката (1)
Даны произвольные множества D1, D2, …, Dn, DiDj = 0 для любых i j, и переменные x1, x2, …, xn, xiDiдля любыхi = 1, 2, …, n. Предикатом (или предикатной функцией) называется функция P(x1, x2, …, xn), принимающая одно из двух значений – 1 или 0 (истина или ложь). x1, x2, …, xn – предикатные переменные D1, D2, …, Dn – область интерпретации предиката
-
Понятие предиката (2)
Логические операции – (и), (или), (не) Кванторы – (всеобщности), (существования) x (f(x)) – для всех значений x из области интерпретации предиката формула f(x) имеет значение "истина"; x (f(x)) – существует, по крайней мере, одно значение x из области интерпретации предиката, для которого формула f(x) имеет значение "истина" x (f(x)) эквивалентноx (f(x))
-
Связь предиката с базой данных
Область интерпретации предиката – база данных Соответствие между предикатом P(x1, x2, …, xn) и отношением r(R), R(A1:D1, A2:D2,..., An:Dn): a1 D1, a2 D2, …, an Dn 1. ЕслиP(a1, a2, ..., an) = 1, то естьвыборкаотношения R(A1:D1, A2:D2,..., An:Dn),т.е. r 2. ЕслиP(a1, a2, ..., an) = 0, то r
-
Реляционное исчисление с переменными-кортежами
1. Областью определения переменных являются отношения 2. Переменные-кортежи должны удовлетворять определенной схеме отношения R 3. Предикат – это правильно построенная формула (wff – well formulated formula)(t). Выбираются те кортежи t, для которых (t) дает значение 1
-
Атомы wff (1)
1. Пусть r(R) – некоторая реализация отношения, удовлетворяющая схеме R; t – некоторая переменная-кортеж, удовлетворяющая схеме R. Тогда r(t) – атом; означает, чтоt есть кортеж в отношенииr (т.е. формула истинна, если t r)
-
Атомы wff (2)
2. Пусть r(R) – некоторая реализация отношения, удовлетворяющая схеме R; u и v – переменные-кортежи из отношения r(R) (т.е. u r, v r); – арифметическая операция сравнения (, , , , , ); A, B – атрибуты схемы отношения R, сравнимые по операции . Тогда u[A] v[B] – атом t[X] – значение переменной t по атрибуту X
-
Атомы wff (3)
3. Пусть u – переменная-кортеж из отношения r(R) (т.е. u r); – арифметическая операция сравнения (, , , , , ); A, B – атрибуты схемы отношения R, сравнимые по операции ; c – константа из домена, на котором определен атрибут B. Тогда u[A] c (или c u[A]) – атом
-
Выражение реляционного исчисления (1)
{t(R) | (t)}, где t – переменная-кортеж, удовлетворяющая схеме отношения R; единственная переменная, имеющая свободное вхождение в формулу (t); (t) – правильно построенная формула Интерпретация: множество кортежей t, удовлетворяющих схеме отношения R, таких, для которых правильно построенная формула (t) истинна
-
Выражение реляционного исчисления (2)
Пример Есть отношение R(Имя, Стипендия); атрибут Стипендия определен на домене D = {«да», «нет»}. Получить из отношения имена всех студентов, получающих стипендию: { t(Имя) | x(R) (r(x) x[Стипендия] = «да» x[Имя] = t[Имя]}
-
Безопасные выражения
{t|r( t) } – в общем случае, определяет бесконечное отношение, что недопустимо. Безопасные выражения вида { t|( t) } гарантированно дают ограниченное множество кортежей. Значения атрибутов кортежей t являются элементами некоторого ограниченного универсального множества – DOM(). DOM() – унарное отношение, элементами которого являются символы, которые либо явно появляются в , либо служат компонентами какого-либо кортежа в некотором отношении R, упоминаемом в
-
Реляционное исчисление с переменными на доменах (1)
Атомы: r(x1 ,x2 ,… ,xn), где r – отношение, удовлетворяющее схеме R(A1 ,A2 ,…An), и каждое xiесть константа или переменная на домене; u v, гдеuиv– константы или переменные, определенные на доменах, совместимых по операции , – арифметическая операция сравнения (, , , , , );
-
Реляционное исчисление с переменными на доменах (2)
Формула реляционного исчисления (t), а также свободные и связанные вхождения переменных определяются так же, как и для исчисления с переменными-кортежами.
-
Реляционное исчисление с переменными на доменах (3)
Пример. Пусть мы имеем базу данных служащих. Будем считать, что мы определили доменные переменные, имена которых совпадают с именами атрибутов отношения СЛУЖАЩИЕ WFF исчисления доменов: СЛУЖАЩИЕ (СЛУ_НОМ:2934, СЛУ_ИМЯ:'Иванов', СЛУ_ЗАРП:22400.00, ПРО_НОМ:1) примет значение true в том и только в том случае, когда в теле отношения СЛУЖАЩИЕ содержится кортеж . Соответствующие значения доменных переменных образуют область истинности этой WFF.
-
Реляционное исчисление с переменными на доменах (4)
Пример. (продолжение) Запрос: "Выдать номера и имена служащих, не получающих минимальную заработную плату": СЛУ_НОМ, СЛУ_ИМЯ WHERE EXISTS СЛУ_ЗАРП1 (СЛУЖАЩИЕ (СЛУ_ЗАРП1) AND СЛУЖАЩИЕ (СЛУ_НОМ, СЛУ_ИМЯ, СЛУ_ЗАРП) AND СЛУ_ЗАРП > СЛУ_ЗАРП1)
Нет комментариев для данной презентации
Помогите другим пользователям — будьте первым, кто поделится своим мнением об этой презентации.