1. System zarządzania bazą danych (SZBD) – system
Transkrypt
1. System zarządzania bazą danych (SZBD) – system
1. 2. System zarządzania bazą danych (SZBD) – system oprogramowania, który pozwala użytkownikom definiować, tworzyć i utrzymywać bazę danych oraz kontrolować do niej dostęp. Elementy SZBD to: sprzęt, oprogramowanie, dane, procedury i ludzie. Zalety SZBD: kontrola redundancji, spójność danych, wspólny dostęp do danych, poprawa integralności i bezpieczeństwa danych. Wady: złożoność, możliwy spadek efektywności, większy zasięg awarii. Trójwarstwowa architektura ANSI-SPARC. Głównym zadaniem trójwarstwowej architektury jest oddzielenie fizycznej reprezentacji bazy danych od różnych sposobów widzenia danych w bazie przez użytkowników. Warstwa zewnętrzna – opisuje jak użytkownicy widzą bazę danych i w jaki sposób uzyskują do niej dostęp. W tej warstwie zawarte są wszystkie istotne dla jej użytkowników informacje o bazie danych. Warstwa konceptualna – to zebrany, zbiorowy sposób widzenia bazy danych. Warstwa ta opisuje, jakie dane są przechowywane w bazie i jakie są ich wzajemne związki. Zawiera zatem logiczną strukturę całej bazy danych. Warstwa ta przedstawia więc: Wszystkie encje, ich atrybuty i występujące pomiędzy nimi związki; Reguły spójności danych; Informacje semantyczne o danych; Informacje dotyczące bezpieczeństwa i integralności danych. Warstwa wewnętrzna – to fizyczna reprezentacja bazy danych w komputerze. Opisuje sposób przechowywania danych w bazie. 3. Języki bazy danych. Języki definicji danych (JDD) – to język, który pozwala administratorowi lub użytkownikowi opisywać i nazywać encje, atrybuty i relacje wymagane przez aplikacje, a także więzy (warunki) integralności i bezpieczeństwa – czyli definiowane struktury danych zawartych w bazie. Język manipulowania danymi (JZD) – język, który dostarcza zestawu operacji przeznaczonych do manipulowania danymi przechowywanymi w bazie, czyli: Dopisywanie nowych danych do bazy; Modyfikowanie danych przechowywanych w bazie; Usuwanie danych z bazy; Wyszukiwanie danych zwartych w bazie. Język sterowania danych (Data Control Language – DCL) – umożliwia sterowanie transakcjami tj. akceptacja lub wycofanie. Język zapytań (Query Language) – umożliwia pobieranie informacji z bazy za pośrednictwem określonych zapytań, warunków. 4. Klucze główne i klucze obce. Klucz główny – to jedna lub więcej kolumn tabeli, w których wartości jednoznacznie identyfikują każdy wiersz w tabeli. Każda relacja musi mieć klucz główny. Dzięki temu możemy zapewnić, aby wiersze nie powtarzały się. Jest najważniejszym ze wszystkich kluczy. To on reprezentuje całą tabelę w bazie danych. Musi też spełniać wszystkie te same kryteria, co klucz kandydujący, składa się z jednego lub wielu pól, których wartości jednoznacznie identyfikują wartości w tabeli. W polu zadeklarowanym jako klucz główny nie może być wartość pusta oraz każda wartość musi być unikatowa. Dzięki niemu możliwe jest tworzenie relacji pomiędzy tabelami. Klucz obcy – jest kolumną lub grupą kolumn tabeli, która czerpie swoje wartości z tej samej dziedziny co klucz główny tabeli powiązanej z nią w bazie danych. Ciągłość jest utworzona pomiędzy tabelami poprzez zaznaczenie, iż wartość z jednej tabeli, której jest kluczem obcym, jest powiązana z wartością z innej tabeli, gdzie jest kluczem głównym. Wartość klucza obcego nie może istnieć bez powiązania z kluczem głównym. 5. Anomalie aktualizacji. Anomalie aktualizacji dzieli się na: Anomalie wstawienia – przy nowym pracowniku informacje o biurze mogą być błędnie wpisane – niespójność bazy; Anomalie usuwania – po usunięciu informacji o pracowniku znikają informacje o biurze; Anomalie modyfikacji – gdy zmiana adresu biura trzeba zmienić we wszystkich rekordach pracowników tego biura. 6. Więzy integralności. Wymagana obecność danych (NOT NULL); Więzy dziedzin atrybutów (dopuszczalny zbiór wartości atrybutu, dopuszczalny zakres długości i format atrybutu); Integralność encji: każda tabela musi posiadać klucz główny, a wartość klucza głównego muszą być w ramach tabeli unikalne i nie równe NULL; Integralność referencyjna: każda wartość klucza obcego może być albo równa jakiejś wartości klucza głównego występującej w tabeli powiązanej lub ewentualnie NULL; Więzy ogólne (dodatkowe warunki poprawności danych określone przez użytkowników lub administratorów bazy danych). Podaj 3 podstawowe grupy poleceń definicji i modyfikacji obiektów SQL. Na język SQL składają się 3 podstawowe grupy poleceń. Rozróżnienie to jest ważne ze względu na charakterystyczne cechy i ograniczony zakres stosowania poleceń z każdej z grup. Polecenia DDL – służą do tworzenia, usuwania i modyfikacji obiektów bazodanowych a także do zarządzania przywilejami. CREATE, DROP, ALTER, RENAME, GRANT i REVOKE Polecenia DML – służą do operowania na danych znajdujących się w bazie, a więc do odczytywania, wstawiania, usuwania i modyfikacji tych danych. SELECT, INSERT, DELETE, UPDATE Polecenia TCL – pozwalają zarządzać transakcjami. COMMIT, ROLLBACK, SAVEPOINT, SET TRANSACTION 8. Co realizuje polecenie SELECT. Polecenie SELECT pozwala na wyszukiwanie danych w bazie. Jest najczęściej używaną instrukcją SQL i ma następującą postać ogólną: SELECT [DISTINCT | ALL]{*|[wyrażenie_kolumnowe [AS nowa_nazwa]],} FROM NazwaTabeli [alias[, [WHERE warunek_selekcji_wierszy] [GROUP BY lista_kolumn][HAVING warunek_selekcji_grup] [ORDER BY lista_kolumn]; gdzie SELECT – wskazuje, które kolumny powinny pojawić się w wyniku; DISTINCT – eliminuje powtórzenie po wykonaniu rzutowania na wybrane kolumny; FROM – określa tabelę, z której będziemy korzystać; WHERE – pozwala wybrać wiersze spełniające zadany warunek selekcji wierszy; GROUP BY – tworzy grupy wierszy po tej samej wartości wskazanej kolumny; HAVING – pozwala wybrać grupy ze względu na podany warunek selekcji grup; ORDER BY – określa uporządkowanie wyniku. 7. 9. Co realizuje klauzula GROUP BY. Klauzula GROUP BY tworzy grupy wierszy o tej samej wartości wskazanej kolumny. 10. Jaki jest zakres stosowania funkcji agregujących. Za pomocą funkcji agregujących dostępnych w języku SQL można obliczyć różnego rodzaju wartości statystyczne dla zbiorów wartości. Takie funkcje można stosować w kwerendach i wyrażeniach agregujących we właściwości SQL obiektu Query Def lub przy tworzeniu obiektu Recordset opartego na kwerendzie SQL Zastosowanie funkcji agregujących: W standardzie ISO zdefiniowanych jest pięć funkcji agregujących: COUNT – zwraca liczbę wartości występujących w określonej kolumnie; SUM – zwraca sumę wartości występujących w określonej kolumnie; AVG – zwraca średnią wartość występujących w określonej kolumnie; MIN – zwraca najmniejszą wartość występującą w określonej kolumnie; MAX – zwraca największą wartość występującą w określonej kolumnie. Funkcje agregujące mogą być stosowane jedynie na liście SELECT i w klauzuli HAVING