Алгебра отношений: проверка соединения без потерь

Мы знаем функциональную зависимость:

artist -> members, genre
msin -> mfn, mln, inst
isrc -> title, album, syear, artist
artist, label -> enddate, rep
rep -> label
label -> lcity, lcountry
isrc, wsin -> royalty
wsin -> wfn, wln

Схема отношений:

Artist = {artist, members, genre}
Musician = {msin, mfn, mln, inst}
Song = {isrc, title, album, syear, artist}
Plays = {artist, msin}
Label = {label, lcity, lcountry}
Publishes = {artist, rep, enddate}
Reps = {label, rep}
Writer = {wsin, wln, wfn}
Writes = {isrc, wsin, royalty}

Это разложение без потерь?

Есть 2 таблицы:

Plays = {artist, msin}
Publishes = {artist, rep, enddate}

Мы видим, что Song Song Publishes = {Artist}, но:

{artist} --/--> Song
{artist} --/--> Publishes

"художник" не может подразумевать ни одну из двух таблиц, противоречит ли это определению объединения без потерь?

Это именно то, где я запутался: если R1, R2,...Ri, ...Rj,..Rn, образуют разложение R, какое из них верно для разложения без потерь?

  • Для любого Ri, Rj, Ri ∩ Rj, -> Ri или Rj.
  • Для любого Ri существует Rj, что Ri ∩ Rj, -> Ri или Rj.
  • или ничего из вышеперечисленного не является правильным.

0 ответов

Другие вопросы по тегам