ТОРА (9) - Семинар №6 - Синтез хорошей БД

Материал из Кафедра ИУ5 МГТУ им. Н.Э.Баумана - студенческое сообщество
Перейти к: навигация, поиск
Этот конспект ещё не дописан.
Здесь не хватает:
   - окончания первой задачи второго ДЗ.

...начало

Arrow left.png

Разбираем задачи из ДЗ прошлого семинара.

ДЗ 1

Продолжаем задачу из прошлого семинара.

Строим схему отношений:

9sTORAs6pic1.png

Перерисовываем её с синтетическими ключами:

9sTORAs6pic2.png

Для генерации синтетических ключей используются объекты последовательности.

Например:

CREATE SEQUENCE имя_объекта_последовательности;
...
INSERT INTO имя_таблицы VALUES(имя_объекта_последовательности.NEXTVAL ...);

ДЗ 2

Первая задача

Из 5 семинара.

Задание:

Задана предметная область про пилотов, но ФЗ другие:

$F = (B\rightarrow D, D\rightarrow B, AB\rightarrow D, AD\rightarrow B, BC\rightarrow A, BC\rightarrow D, CD\rightarrow A, CD\rightarrow B,$ $ABC\rightarrow D, ACD\rightarrow B, BCD\rightarrow A)$

Синтезировать БД с помощью алгоритма.

1)

$УНП = (B\rightarrow D, D\rightarrow B, AB\rightarrow D, BC\rightarrow AD, CD\rightarrow AB, AD\rightarrow B, ABC\rightarrow D, ACD\rightarrow B, BCD\rightarrow A)$


3) сначала этот пункт:

$A^+ = A$
$B^+ = BD$
$C^+ = C$
$D^+ = DB$
$(BC)^+ = BCAD$
$УНП = (B\rightarrow D, D\rightarrow B, CD\rightarrow AB, BC\rightarrow AD)$

2)

как-то куда-то делся этот пункт.

4)

$B\rightarrow D$
$D\rightarrow B$
$K_1 = BD$
$BC\rightarrow AD$
$CD\rightarrow AB$
$K_2 = ABCD$

5)

9sTORAs6pic3.png

6)

$K_2$:
$BC\rightarrow D$
$СD\rightarrow B$
вторую вычеркнули
$K_1$
вторую вычеркнули

7)

9sTORAs6pic4.png

и дальше по алгоритму.

Вторая задача

Всё также из 5 семинара.

$U = A, B, C, D, E, K, L, N, O, P, R, S, T, V, X$

$F = A\rightarrow CNO, B\rightarrow PRS, ADE\rightarrow X, K\rightarrow DEL, L\rightarrow T, X\rightarrow VT, ET\rightarrow V, D\rightarrow XBE$

Синтезируем схему БД:

1)

$УНП = (A\rightarrow CNO, B\rightarrow PRS, ADE\rightarrow CNOXVTBPRS, K\rightarrow DELXBTVPRS,$
$L\rightarrow T, X\rightarrow VT, ET\rightarrow V, D\rightarrow XBEPRSVT)$

2)

так как нет ФЗ, включающей в себя все атрибуты, то добавляем её сами:
$УНП = (A\rightarrow CNO, B\rightarrow PRS, ADE\rightarrow CNOXVTBPRS, K\rightarrow DELXBTVPRS,$
$L\rightarrow T, X\rightarrow VT, ET\rightarrow V, D\rightarrow XBEPRSVT, ABCDEKLNOPRSTVX\rightarrow\varnothing)$

3)

смотрим замыкания:
$A^+ = ACNO$
$E^+ = E$
$(AD)^+ = ADCNOXBEPRSVT$
$T^+ = T$
получили $УНП = (A\rightarrow CNO, B\rightarrow PRS, AD\rightarrow CNOXBEPRSVTE, K\rightarrow DELXBTVPRS,$
$L\rightarrow T, X\rightarrow VT, ET\rightarrow V, D\rightarrow XBEPRSVT, ABCDEKLNOPRSTVX\rightarrow\varnothing)$

Arrow right.png

продолжение...