Атрибуты: ФИО, Год рождения, Год поступления, Номер зачетки, Курс, Факультет, Стипендия.
Каждая строчка таблицы — кортеж (за исключением шапки).
Строки — отношение Студент.
Шапка таблицы — схема отношений.
Опр. Ключом отношения называется минимальный набор атрибутов, уникальным образом идентифицирующий кортеж.
1) для любых t1 ≠ t2 t1(K) ≠ t2(K)
2) ∄ K' ⊂ K
K = (НЗК, Год Рожд)
Опр. Ключ, состоящий из одного атрибута называется простым.
Опр. Ключ, состоящий из нескольких атрибутов называется составным.
Выбираем один — первичный.
Опр. Атрибуты, которые входят в первичный ключ, называются первичными или ключевыми. Остальные называются не первичными или не ключевыми.
Студент
Наим. Атрибута | Домен | Ключ | Описание |
ФИО | Стр 50 | ФИО студента | |
Год Рождения | 4-х знач. Целое пол. число | Год рождения студента | |
Год поступления | 4-х знач. Целое пол. Число | Год поступления в универ | |
Номер зачетки | 6-ти знач. Целое пол | РК(Primary key) | Номер зачетки студента |
Курс | {1,2,3,4,5,6} | Курс обучения | |
Факультет | Стр 50 | Факультет обучения | |
Стипендия | Вещ, число 2 зн. | Сумма ежемес. стипендии |
Опр. Внешний ключ(Foreign Key(FK)) — это совокупность атрибутов, принимающих значения первичного ключа, отношения, на которое ссылается внешний ключ.
|
|
Соревнования.
Наим. Атрибута | Домен | Ключ | Описание |
Вид спорта | стр(100) | PK | |
Номер зч | Целое пол. число | PK | |
НЗК | 6-ти знач. Целое пол. число | FK(Студент) | Студент |
Студент <----------- Соревнования
|___________
|
Предмет <----------- Экзамен
Операции:
1) Операции обновления отношений
2) Операции реляционной алгебры
- операции над множествами
- специальные операции
Операции обновления отношений: добавление, удаление, изменение кортежа.
1) Добавление. Цель: добавить в таблицу(отношение) один кортеж
r(A1, A2, … An) - схема
<d1, d2, …, dn> - кортеж с данными
ADD(r; A1 = d1, A2 = d2, …, An = dn)
2)Удаление. Цель: удалить кортеж из отношений.
r(A1, A2, …, An)
<d1,d2,...,dn>
DEL(r; A1 = d1, A2 = d2,..., An = dn)
DEL(r; K = <k>) - можем указать только те, которые соответствуют первичным атрибутам
3)Изменение.
r(A1,...,An)
<d1,d2,...,dn>
<e1,e2,...,en>
CH(r; A1 = d1, A2 = d2, …, An = dn; A1 = e1, A2 = e2...)
Сначала данные, которые будем изменять, а потом данные, которые подставим вместо имеющихся. Операцию изменения можно заменить на совокупность двух операций — удаление, добавление.
Операции реляционной алгебры. Операции над множествами.
Все операции над множествами выполняются над отношениями с одинаковыми схемами отношений.
1) Объединение. Мы получим новое отношение с той же самой схемой. Это оношение будет содержать все кортежи первого отношения и второго, но без дубликатов.
|
|
2) Пересечение. В результате получается отношение с той же схемой и новое отношение содержит только те кортежи, которые есть в обоих отношениях.
3) Разность.
4) Дополнение. r' = D-r. D — декартово произведение доменов. Дополнение определено тогда и только тогда, когда все домены конечны. Если хотя бы один домен бесконечен, то мы не сможем построить дополнение.Если множество D бесконечно, то мы построим активное дополнение. Прежде чем построить активное дополнение, надо построить активные домены.
adom(Ai, r) = {d ∈ Di | ∃t∈r: t(Ai) = d}
r'' = adom(A1, r) x adom(A2, r) x … x adom(An, r) — r
Специальные операции.
1) Селекция.
СигмаA=a (r) = {t ∈ r | t(A) = a}.
СигмаA>a
2) Проекция. pi. Проекция отношения r на атрибут А.
Pi A(r) = {t(a) | t ∈ r}
3) Соединение. |х|
r(R), s(S), R⋂S ≠ ∅
4) Деление. r(R), s(S), S⊆R