ТОРА (9) - Семинар №6 - Синтез хорошей БД: различия между версиями
ILobster (обсуждение | вклад) м (чего не хватает в этом семинаре) |
Bit (обсуждение | вклад) мНет описания правки |
||
(не показаны 3 промежуточные версии 2 участников) | |||
Строка 1: | Строка 1: | ||
{{Tabli4ka warning undone summary|text= - окончания [[#Первая задача | первой задачи]] | {{Tabli4ka warning undone summary|text= - окончания [[#Первая задача | первой задачи]] второго ДЗ.}} | ||
{{Backward|l=ТОРА (9) - Семинар №5 - Синтез хорошей БД}} | {{Backward|l=ТОРА (9) - Семинар №5 - Синтез хорошей БД}} | ||
Разбираем задачи из ДЗ прошлого семинара. | Разбираем задачи из ДЗ прошлого семинара. | ||
Строка 27: | Строка 27: | ||
=== Первая задача === | === Первая задача === | ||
Из [[ТОРА (9) - Семинар №5 - Синтез хорошей БД#Первая задача | 5 семинара]]. | |||
<u>Задание:</u> | <u>Задание:</u> | ||
Строка 87: | Строка 89: | ||
=== Вторая задача === | === Вторая задача === | ||
Всё также из [[ТОРА (9) - Семинар №5 - Синтез хорошей БД#Вторая задача | 5 семинара]]. | |||
{{Формула|f=U = A, B, C, D, E, K, L, N, O, P, R, S, T, V, X}} | |||
{{Формула|f=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) | |||
:{{Формула|f=УНП = (A\rightarrow CNO, B\rightarrow PRS, ADE\rightarrow CNOXVTBPRS, K\rightarrow DELXBTVPRS,}} | |||
:{{Формула|f=L\rightarrow T, X\rightarrow VT, ET\rightarrow V, D\rightarrow XBEPRSVT)}} | |||
2) | |||
:так как нет ФЗ, включающей в себя все атрибуты, то добавляем её сами: | |||
:{{Формула|f=УНП = (A\rightarrow CNO, B\rightarrow PRS, ADE\rightarrow CNOXVTBPRS, K\rightarrow DELXBTVPRS,}} | |||
:{{Формула|f=L\rightarrow T, X\rightarrow VT, ET\rightarrow V, D\rightarrow XBEPRSVT, ABCDEKLNOPRSTVX\rightarrow\varnothing)}} | |||
3) | |||
:смотрим замыкания: | |||
::{{Формула|f=A^+ = ACNO}} | |||
::{{Формула|f=E^+ = E}} | |||
::{{Формула|f=(AD)^+ = ADCNOXBEPRSVT}} | |||
::{{Формула|f=T^+ = T}} | |||
:получили {{Формула|f=УНП = (A\rightarrow CNO, B\rightarrow PRS, AD\rightarrow CNOXBEPRSVTE, K\rightarrow DELXBTVPRS,}} | |||
:{{Формула|f=L\rightarrow T, X\rightarrow VT, ET\rightarrow V, D\rightarrow XBEPRSVT, ABCDEKLNOPRSTVX\rightarrow\varnothing)}} | |||
{{Forward|l=ТОРА (9) - Семинар №7 - Синтез хорошей БД}} | |||
[[Категория:Теоретические основы реляционной алгебры (9 семестр)|С]] | [[Категория:Теоретические основы реляционной алгебры (9 семестр)|С]] | ||
[[Категория:Конспекты лекций и семинаров]] | [[Категория:Конспекты лекций и семинаров]] | ||
Текущая версия от 10:36, 21 апреля 2013
Этот конспект ещё не дописан. Здесь не хватает: - окончания первой задачи второго ДЗ. |
...начало
Разбираем задачи из ДЗ прошлого семинара.
ДЗ 1
Продолжаем задачу из прошлого семинара.
Строим схему отношений:
Перерисовываем её с синтетическими ключами:
Для генерации синтетических ключей используются объекты последовательности.
Например:
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)
6)
- $$K_2$$:
- $$BC\rightarrow D$$
- $$СD\rightarrow B$$
- вторую вычеркнули
- $$K_1$$
- вторую вычеркнули
7)
и дальше по алгоритму.
Вторая задача
Всё также из 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)$$
продолжение...