Co to jest baza danych?
# Co to jest baza danych?
# Wymień rodzaje baz danych i je krótko scharakteryzuj.
# Co to jest relacyjna baza danych?
# Wymień i scharakteryzuj obiekty MS Access (np. tabele).
# Co to jest klucz podstawowy (główny) w bazie danych?
# Co to jest klucz obcy w bazie danych?
BAZA DANYCH
Baza danych to zbiór kartotek i informacji, które można przetwarzać za pomocą odpowiednich programów komputerowych. Multimedialne bazy danych zawierają pola różnorodnego typu: numeryczne, znakowe, tekstowe, a także wskaźnikowe odnoszące się do zapamiętanych w komputerze cyfrowych obrazów, animacji, dźwięków. W zależności od charakteru przedmiotu zainteresowania bazy danych tworzą wielokolumnowe tabele spełniające ścisłe wymogi.
Bazę danych można nazwać bazą informacji, ponieważ obejmuje wszelkiego rodzaju zbiory informacji, które tworzone są za pomocą kartotek, segregatorów, teczek na dokumenty, itp. Bazy danych umożliwiają szybkie wyszukiwanie informacji według określonego kryterium nawet z bardzo dużego zbioru.
Informatycy mogą tworzyć programy - systemy informatyczne umożliwiające przetwarzanie danych. Do tworzenia tego typu systemów używają odpowiednich programów, np.: Access lub FoxPro.
Aby program mógł przetworzyć informacje użytkownik musi je najpierw zgromadzić, np.: na twardym dysku.
Niektóre bazy danych zawierają już pewne informacje wprowadzone przez autorów programów - tak jest na przykład w słownikach czy encyklopediach. Tymi informacjami mogą być np.: rysunki, animacje, muzyka umieszczone w programie.
Każdy użytkownik komputera może stworzyć własna bazę danych, pod warunkiem, że zna podstawowe metody jej tworzenia. Baza danych może zawierać jedną lub więcej tabel, w których przechowywane będą połączone informacje.
Tabela bazy danych zwana również arkuszem danych podzielona jest na kolumny i wiersze. Pola tabeli określają rodzaj informacji zawartych w poszczególnych w poszczególnych kolumnach. Wiersze tabeli to rekordy, zawierają informacje o jednym elemencie tabeli bazy danych i są ponumerowane. Aby posortować (uporządkować) rekordy, należy wskazać pola, według których mają być posortowane, oraz ustalić porządek - rosnący lub malejący. Na rekordach można wykonywać różne operacje, np.: usuwanie lub wstawianie nowych rekordów.
Aby wyszukać informację należy utworzyć kryterium wyboru, które będziemy nazywać zapytaniem lub filtrem.
Ze względu na budowę:
a) Relacyjne bazy danych
b) Hierarchiczne bazy danych
c) Sieciowe bazy danych
d) Obiektowe bazy danych
e) Obiektowo - relacyjne bazy danych
Ze względu na sposób zarządzania nimi:
a) Operacyjne bazy danych
b) Analityczne bazy danych
Wszystkie te typy baz łączą kilka podstawowych cech, które powinny spełniać systemy baz danych:
Możliwość bezpośredniego, interakcyjnego, uzyskiwania informacji z bazy poprzez formułowanie pytań.
Możliwość przechowywania danych w postaci trwałej i zarządzanie pamięcią wtórną, w której przechowuje się informacje bazy danych.
Zapewnienie kontroli jednoczesnego dostępu do danych.
Możliwość odzyskiwania danych w wypadku błędów pracy systemu i ochrony danych przed niepowołanymi użytkownikami.
Analityczne bazy danych. Ten typ baz wykorzystywany jest przede wszystkim do przechowywania danych historycznych i informacji związanych z pewnymi wydarzeniami. Są to dane, które nie wymagają modyfikowania, są one statyczne tzn. bardzo rzadko, lub w ogóle nie ulegają zmianom. Bazy te są wykorzystywane po to, aby np. przeanalizować tendencje rynkowe lub na podstawie długoterminowych danych statystycznych przewidzieć prognozy na przyszłość. Przykładem takiej bazy są np. bazy testów chemicznych lub danych pomiarowych.
Operacyjne bazy danych. Bazy operacyjne są to bazy wykorzystywane wszędzie tam, gdzie istnieje potrzeba nie tylko na gromadzenie danych, ale również na możliwość ich modyfikowania. Ten typ baz przechowuje dane dynamiczne, tzn. takie, które ulegają ciągłym zmianom i przedstawiają aktualny stan rzeczy, której dotyczą. Zazwyczaj to ten typ bazy można spotkać w różnych organizacjach, firmach. Przykładem takiej bazy danych są np. bazy inwentaryzacyjne lub bazy obsługi zamówień.
Hierarchiczne bazy danych Jest to pierwsza udana elektroniczna baza danych, do tej pory jeszcze używana w dużych magazynach. Powstała na początku lat sześćdziesiątych, oparta jest o strukturę drzewiastą o wielu gałęziach. Wszystkie elementy danych w bazie hierarchicznej są zorganizowane w bardzo logiczny sposób, to znaczy każda wartość obiektu danych jest logicznie powiązaną z jedną lub kilkoma wartościami innego obiektu danych. Hierarchiczna baza danych ma wiele zalet: przede wszystkim jest łatwa do wdrożenia, ma bardzo prostą i łatwą do zrozumienia strukturę, oraz zazwyczaj bardzo krótki czas dostępu (o ile baza danych jest poprawnie napisana oraz poprawnie są stworzone relacje). Wadą takiej bazy jest to, że pozwala zobrazować jedynie relacje jedno-jedno i jedno-wiele lub wiele-jedno.
Sieciowe bazy danych Jest to zmodyfikowana wersja modelu hierarchicznego, stworzona przede wszystkim w celu rozwiązania problemów związanych z bazami danych opartych właśnie o model hierarchiczny. Elementy danych w tym modelu, są zorganizowane w strukturę drzewiasta podobnie jak w przypadku modelu hierarchicznego. Jednak, inaczej niż w modelu hierarchicznym, model sieciowy pozwala na definiowanie relacji wiele-wiele w postaci struktury drzewiastej bez powtarzania poszczególnych wartości w ramach obiektu danych. Zaletą sieciowego modelu baz danych jest szybkość, z jaką można odczytać dane, oraz większe możliwości bazy.
Obiektowe bazy danych (ODBMS)Obiektowe bazy danych nie są określone żadnym oficjalnym standardem, nie ma żadnych teorii, czy nawet ogólnie przyjętego zbioru zasad dotyczących konstruowania obiektowych systemów zarządzania bazami danych (OSZBD). Nie ma, tak jak jest to w przypadku relacyjnych baz danych, ogólnie przyjętej metody projektowania takich baz, ani jednolitej terminologii dotyczącej tej tematyki. Obiektowe bazy danych są efektem połączenia koncepcji opracowanych na gruncie: bazy danych, obiektowych języków programowania i ogólnych rozważań na temat obiektowego postrzegania świata. Jednym z podstawowych celów tego typu bazy danych jest bezpośrednie odwzorowanie obiektów i powiązań między nimi wchodzących w skład aplikacji na zbiór obiektów i powiązań w bazie danych. Cechą ODBMS jest to, że pozwala na przechowywanie danych o dowolnej strukturze, zdefiniowanej przez projektanta, co powoduje że taka baza sprawdza się wszędzie tam, gdzie relacyjna baza danych napotyka trudności, przede wszystkim chodzi tutaj dynamicznie rozwijający się Internet i WWW.
Relacyjno - obiektowe bazy danych (ORDBMS)
ORDBMS jest stosunkowo nowym modelem baz danych, który powstał w wyniku ewolucji systemów relacyjnych w kierunku obiektowych. Posiada wszystkie cechy bazy relacyjnej rozszerzonej o możliwości bazy obiektowej, chodzi tutaj przede wszystkim o możliwość przechowywania danych multimedialnych, przestrzennych, czy np. abstrakcyjnych; co do tej pory dla bazy relacyjnej nie było możliwe do uzyskania. Jednocześnie prosty interfejs powoduje, że ORDBMS są zdecydowanie bardziej "przyjazne" dla przeciętnego użytkownika w porównaniu z bazami obiektowymi
Operacyjne bazy danych
Operacyjne bazy danych.Bazy operacyjne są to bazy wykorzystywane wszędzie tam, gdzie istnieje potrzeba nie tylko na gromadzenie danych, ale również na możliwość ich modyfikowania. Ten typ baz przechowuje dane dynamiczne, tzn. takie, które ulegają ciągłym zmianom i przedstawiają aktualny stan rzeczy, której dotyczą. Zazwyczaj to ten typ bazy można spotkać w różnych organizacjach, firmach. Przykładem takiej bazy danych są np. bazy inwentaryzacyjne lub bazy obsługi zamówień.
Analityczne bazy danych
Analityczne bazy danych.Ten typ baz wykorzystywany jest przede wszystkim do przechowywania danych historycznych i informacji związanych z pewnymi wydarzeniami. Są to dane, które nie wymagają modyfikowania, są one statyczne tzn. bardzo rzadko, lub w ogóle nie ulegają zmianom. Bazy te są wykorzystywane po to, aby np. przeanalizować tendencje rynkowe lub na podstawie długoterminowych danych statystycznych przewidzieć prognozy na przyszłość. Przykładem takiej bazy są np. bazy testów chemicznych lub danych pomiarowych
Relacyjne bazy danych (RDBMS)
Za autora technologii relacyjnych baz danych uważa się E. F. Codda. Ostatecznie standard RDBMS został opracowany przez ANSI X3H2. Zwykle produkt kwalifikuje się przy pomocy wersji specyfikacji języka SQL’96 ostatni to SQL’92.
Model danych
Dane przechowywane są w tabelach, z których każda ma stalą ilość kolumn i dowolna ilość wierszy. Wiersze odpowiadają niepodzielnym krotkom (tuple), a kolumny odpowiednim atrybutom (attribute). Kolumny zawierają dane określonego typu, po jednej wartości w wierszu. Typy są zdefiniowane na etapie projektowania bazy danych i jest ich określona ilość, maja stały rozmiar i zwykle są to ogólnie znane typy proste (liczba, data, godzina, ciąg znaków, znak, itp.). Każda tabela (relacja) ma zdefiniowany klucz (key) - wyróżniony atrybut lub kilka atrybutów, którego wartość jednoznacznie identyfikuje dany wiersz.
Język zapytań
Dane z bazy są wybierane na podstawie wartości z konkretnych pól w krotkach. Zapytania mogą mieć prosta postać i wymagać danych z wyłącznie jednej tabeli, jak również mogą być bardzo wyrafinowane wymagając od systemu operowania łączeniem (join), zagnieżdżaniem (nesting), różnica i suma teorii zbiorów (set union/difference) oraz innymi operacjami.
Model obliczeniowy
Wszelkie przetwarzanie danych oparte jest na wartościach pól w krotkach. Krotki nie posiadają uniwersalnego identyfikatora. Nie ma tez zabezpieczenia przed odnoszeniem się do innego wiersza tej samej tabeli. Przeglądanie wyników zapytań odbywa się przy pomocy \"kursora\" umożliwiającego przeglądanie wiersza po wierszu. Podobnie ma się sprawa uaktualniania danych. Manipulacja relacjami odbywa się w sposób globalny przy użyciu operatorów algebry relacji lub temu podobnych jeżyków - przetwarzanie wiersza po wierszu nie jest dozwolone.
Relacyjna baza danych dominuje w zastosowaniach komercyjnych: ok. 95% rynku baz danych.
Liczące się na rynku RDBMS
Oracle (wersje 7.x / 8.x), Access 2000 [Microsoft], System 10/11 [Sybase], Dynamic Server [Informix], DB/2 [IBM], OpenIngres [Computer Associates].
ACCESS
Access jest systemem zarządzania bazami danych, działającym w środowisku WINDOWS. Dzięki specyficznej organizacji bazy danych w postaci jednego pliku o rozszerzeniu .mdb Access oferuje znacznie bogatsze konwencje dotyczące nazewnictwa obiektów bazy danych niż systemy, w których pojedynczym obiektom odpowiadają osobne pliki. Został on pomyślany tak, aby pomagać w zbieraniu, odzyskiwaniu i prezentowaniu danych.
Access oferuje użytkownikom sześć zasadniczych rodzajów obiektów przeznaczonych do budowy systemu bazy danych. Są to tabele, zapytania, formularze, raporty, makropolecenia i moduły. Każdemu z tych elementów można nadać nazwę składającą się maksymalnie z 64 znaków. Dozwolone są przy tym wszystkie znaki alfanumeryczne ( litery i cyfry ), spacje i znaki specjalne.
(1. Projektowanie bazy danych
Przy pierwszym uruchomieniu okno Accessa nie wygląda zbyt imponująco. Pasek menu zawiera tylko dwie pozycje: Plik i Pomoc. Pasek narzędzi zawiera szereg przycisków, z których dostępne są na razie: Nowa baza danych, Otwórz bazę danych, Sufler i Pomoc.
Access oferuje cały zestaw pasków narzędzi, które są wyświetlane stosownie do wykonywanych przez nas czynności. Jedną z ciekawych cech paska narzędziowego jest jego mobilność. Można go przeciągnąć myszką w dowolne miejsce i tak zmienić rozmiar okienka, w którym wyświetlane są przyciski, by uzyskać największy komfort pracy.
2. Tabela w Accessie
Definiowanie tabeli w Accessie jest rzeczą łatwą, wystarczy bowiem w oknie bazy danych kliknąć zakładkę Tabela, a następnie przycisk Nowy. Access wyświetli wtedy pole dialogowe z dwoma przyciskami: Kreatory tabel i Nowa tabela. Pierwszy z nich uruchamia jednego z wielu „pomocników” - podprogramów, których zadaniem jest automatyczne tworzenie obiektów bazy danych według życzeń użytkownika.
3. Projektowanie zapytań
Projektowanie zapytań odbywa się w oknie projektu zapytania. Aby je otworzyć należy:
- w oknie bazy danych kliknąć zakładkę Zapytanie, a następnie przycisk Nowy
- wybrać polecenie Plik | Nowy | Zapytanie
- kliknąć znajdujący się na pasku narzędziowym przycisk nowego zapytania.
W każdym przypadku pojawi się pole dialogowe z dwoma przyciskami: Kreatory zapytań i Nowe zapytanie. Tylko wybór tego drugiego spowoduje otworzenie okna projektu zapytania. Pierwszy uruchomi procedurę automatycznego tworzenia zapytań, czyli jednego z asystentów.
4. Projektowanie formularzy
Aby zbudować nowy formularz na „fundamencie” wybranej tabeli należy wyróżnić jej nazwę w oknie bazy danych i kliknąć przycisk nowego formularza na pasku narzędziowym. Spowoduje to pojawienie się pola dialogowego Nowy formularz, w którym znajduje się lista wszystkich tabel i zapytań Wybierz z nazwą wskazaną w oknie bazy danych oraz dwa duże przyciski: Kreatory formularzy i Pusty formularz. Wybierając jeden z nich decydujemy się na skorzystanie z pomocy Accessa lub na budowę formularza od początku.
5. Projektowanie raportów
Aby utworzyć raport należy wyróżnić jego nazwę w oknie bazy danych i nacisnąć przycisk nowego raportu na pasku narzędzi lub użyć polecenia Plik | Nowy | Raport. O ile rozwijana lista w polu dialogowym Nowy raport zawiera nazwę właściwego zapytania, klękamy przycisk Kreator raportów. Pierwszy krok to wybór jednego z kilku dostępnych rodzajów raportów: Jednokolumnowego, Grupy podsumowania, Wydruku seryjnego S Ford, Podsumowania lub Tabelarycznego.
6. Makropolecenia
Makropolecenia w Accessie to procedury, które można uruchomić i, których działanie powoduje wykonanie jednej lub kilku predefiniowanych czynności, zwanych także akcjami. Każde makropolecenie to po prostu lista czynności wraz z ich argumentami i ewentualnymi warunkami, decydującymi o tym, czy dana czynność jest wykonywana czy nie.
Na pojedyncze makropolecenie może składać się nie więcej niż 999 osobnych czynności. Wyrażenie warunkowe musi dać się zapisać za pomocą maksymalnie 255 znaków. Z tylu też znaków może składać się komentarz, opisujący pojedynczą czynność w makropoleceniu. Liczba ta jest także górną granicą długości pojedynczego argumentu czynności.
Najważniejsze z zastosowań makropoleceń:
- wykonanie dowolnego polecenia z dowolnego menu dostępnego w Accessie
- stworzenie indywidualnego paska menu wraz z poleceniami dla dowolnego formularza
- obsługa systemowych pól dialogowych, emulacja działań z użyciem klawiatury
- wyświetlanie własnych pól dialogowych z komunikatami
- sprawdzanie poprawności wprowadzanych danych
- zmiana wartości danych w dowolnych detalach formularzy i niektórych detalach raportów
- zmiana wartości prawie wszystkich atrybutów formularzy, raportów, ich sekcji i znajdujących się na nich detali
- filtrowanie wierszy wyświetlanych w formularzu, dowolna zmiana wiersza bieżącego, wyszukiwanie wierszy według wyspecyfikowanych kryteriów
- otwieranie i zamykanie formularzy, drukowanie raportów, uruchamianie zapytań wyszukujących i modyfikujących, automatyczne dostarczanie danych dla zapytań z parametrem
- uruchamianie innych aplikacji, zarówno dla Windows, jak i dla DOS-u, wymiana danych pomiędzy aplikacjami, import, eksport i dołączanie tabel innych baz danych, arkuszy roboczych i plików tekstowych
- uruchamianie i zatrzymywanie makropoleceń, anulowanie zdarzenia, które uruchomiło makropoleceniem, „zamrożenie” ekranu na czas działania makropolecenia, zatrzymanie aplikacji.
7. Moduły
Moduły są to zbiory procedur i funkcji napisane w języku Access Basic.)
KLUCZ PODSTAWOWY
Klucz podstawowy: 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. Dzięki niemu możliwe jest tworzenie relacji pomiędzy tabelami.
Klucz podstawowy wybieramy spośród kluczy kandydujących. Zasady definiowania klucza podstawowego: 1) Każda tabela powinna posiadać dokładnie jeden klucz podstawowy ( kluczy kandydujących może być kilka); 2) Wszystkie klucze podstawowe w bazie danych muszą się od siebie różnić - dwie tabele nie mogą posiadać identycznego klucza podstawowego.
KLUCZ OBCY
Klucz obcy wykorzystywany jest do tworzenia relacji pomiędzy parą tabel. Jest on kombinacją jednego lub więcej atrybutów przedstawionych w dwóch lub większej liczbie relacji.