Łączenie tabel, a relacje

0

Witam, mam banalne i pewnie dla większości głupie pytanie.. Skoro możemy łączyć kilka tabel używając JOINów, to dlaczego używamy także relacji? 1-1, 1-*, czy -?

1
  1. Relacyjne bazy danych opierają się na algebrze relacji. Algebra jak to algebra, definiuje pewne działania, np: selekcja, projekcja, złączenie (i jeszcze kilka innych). Złączenie to po angielsku join, a w językach programowania zazwyczaj używa się angielskich słów na nazwy instrukcji, więc instrukcja złączenia dwóch relacji w języku SQL to join.
  2. W relacyjnych bazach danych, "fizycznym" odzwierciedleniem relacji jest tabela.
  3. Nie ma zatem czegoś takiego jak relacja 1-1 czy 1-*. To są krotności związków encji, które istnieją wyłącznie na diagramach ERD, nie w bazie danych. W bazie danych są one implementowane jako klucz obcy, a w przypadku krotności M:N, także jako tabela pośrednia.

P.S. Zadałeś bardzo mądre pytanie. Szkoda, że nie zadaje go sobie większość "programistów" i "magistrów informatyki" zamiast bredzić coś o "relacjach między tabelami".

1 użytkowników online, w tym zalogowanych: 0, gości: 1