rozwiązanie zadań do zaliczenia
I0G1S4 // indeks 40430
MODEL RELACYJNY MODEL OBIEKTOWY Dane umiejscowione są w tabelach, a te z kolei składają
się z kolumn
Podstawową jednostką jest obiekt, który to reprezentuje rzeczywisty obiekt
Typy predefiniowalne Klasy – złożone typy danych
Klucze zewnętrzne Wskaźniki
Niezależny od języka programowania Tylko jeden język programowania
Mało naturalna reprezentacja danych Łatwa reprezentacja obiektów rzeczywistych Dobre mechanizmy kontroli dostępu do danych Słaba kontrola dostępu
Dużo tabel w przypadku próby rozwiązania większego problemu
Możliwość pokazania złożonych zależności pomiędzy obiektami
Ograniczona podatność na zmiany Łatwość edycji
Trudne operowanie na danych złożonych Możliwość definiowania własnych typów, metod Możliwość używania złożonych kryteriów
wyszukiwawczych Słaba obsługa przeszukiwania danych
Bardziej popularny Mniej popularny
Podsumowując model relacyjny lepiej sprawdza się w przypadku prostych danych, łatwych do umieszczenia w tablicy oraz w przypadku kiedy trzeba będzie wyszukiwać z niej dane spełniające różnorodne warunki. Natomiast model obiektowy lepiej sprawdzi się gdy dane mają złożoną lub zagnieżdżoną strukturę oraz w przypadku kiedy dane tworzą hierarchie.
ALGEBRA RELACYJNA RACHUNEK RELACYJNY
Zapytanie ma charakter proceduralny (operacyjny) Zapytanie ma charakter nieproceduralny (deklaratywny) Rezultatem działania, jak również argumentami tych
operatorów są relacje Formułujemy wyrażenie, które określa co konkretnie ma być wyszukane.
Operatory można podzielić na dwie grupy: operacje na zbiorach oraz operatory zaprojektowane dla modelu relacyjnego
Oparty na logicznym rachunku predykatów (funkcji zdaniowych). Na rachunek relacyjny składa się alfabet oraz zbiór reguł tworzenia zapytań
Posiada operacje takie jak: selekcja, projekcja, iloczyn kartezjański, różnica zbiorów, suma, przeciążenie, złączenie, dzielenie, zmiana nazwy pola
Posiada zmienne, stałe, opcje porównywania, logiczne połączenia i kwantyfikatory
Sprowadzenie zapytania do postaci wyrażenia algebry relacji pomaga w przekształceniach prowadzących do optymalizacji zapytania
Sprowadzenie zapytania do wyrażenia rachunku relacyjnego określa jego formalną semantykę.
Wykorzystywany w języku SQL (wariant rachunku na krotkach) oraz jako podstawa interfejsu QBE (wariant rachunku na dziedzinach)
Rachunek relacyjny jest alternatywą algebry relacyjnej. Są one równoważne, a więc każde wyszukiwanie danych określone w algebrze można wyrazić w rachunku i odwrotnie. Zdecydowanie bliższe mi jest użycie języka opartego na rachunku relacyjnym, ze względu na bardziej przejrzystą i zrozumiałą dla mnie budowę. Nie bez znaczenia jest także fakt, że formułujemy wyrażenie, które określa co ma być wyszukiwane a nie jak to wyszukać jak jest to w przypadku algebry relacyjnej. Ponadto w przypadku skomplikowanych problemów zdecydowanie łatwiej stworzyć zapytanie w rachunku relacyjnym (np. dzięki kwantyfikatorom „istnieje…” czy „dla każdego…”).