ТОРА (9) - Семинар №6 - Синтез хорошей БД
Этот конспект ещё не дописан. Здесь не хватает: - окончания первой задачи; - первых трёх пунктов второй задачи |
...начало
Разбираем задачи из ДЗ прошлого семинара.
ДЗ 1
Продолжаем задачу из прошлого семинара.
Строим схему отношений:
Перерисовываем её с синтетическими ключами:
Для генерации синтетических ключей используются объекты последовательности.
Например:
CREATE SEQUENCE имя_объекта_последовательности;
...
INSERT INTO имя_таблицы VALUES(имя_объекта_последовательности.NEXTVAL ...);
ДЗ 2
Первая задача
Задание:
Задана предметная область про пилотов, но ФЗ другие:
$$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)
6)
- $$K_2$$:
- $$BC\rightarrow D$$
- $$СD\rightarrow B$$
- вторую вычеркнули
- $$K_1$$
- вторую вычеркнули
7)
и дальше по алгоритму.