Podstawy SQL ćwiczenia praktyczne.pdf

(5337 KB) Pobierz
Microsoft Word - 17 Arkadiusz Jakubowski - Podstawy SQL.doc
Arkadiusz Jakubowski – Podstawy SQL – ćwiczenia praktyczne
___________________________________________________________________________________________________
Rozdział 1. Jak korzystać z ćwiczeń
Ćwiczenia te są kierowane do osób, które chcą się nauczyć języka SQL i mam nadzieję,
że w znacznym stopniu okażą się one pomocne. Do nauki języka SQL potrzebny jest jego interpreter,
czyli baza danych. Do studiowania języka SQL zostały wykorzystane:
baza danych InterBase firmy Inprise (Borland) oraz baza danych DB2 firmy IBM.
Dlaczego InterBase? Dlaczego IBM DB2? Po pierwsze są to systemy relacyjnej bazy danych,
w których została zaimplementowana pełna składnia języka SQL. Po drugie zarówno InterBase firmy
Inprise (Borland) i DB2 firmy IBM w wersji Personal Edition są dostępne za darmo. Po trzecie są to w
pełni profesjonalne i popularne systemy, które dodatkowo są łatwe w obsłudze i administrowaniu.
Oba systemy bazy, jak już wspomniałem są dostępne w Internecie za darmo. Na pewno większość
z czytelników wybierze InterBase'a z powodów objętości wersji instalacyjnej. Prawdą jest, że DB2
firmy IBM posiada więcej możliwości, ale jeśli chodzi o zakres interpretowanego języka SQL oba
systemy są sobie równe. Dla osób nie posiadających łącza do Internetu o większej niż przeciętna
przepustowości, InterBase będzie lepszym wyborem.
Dlaczego nie MS Access
Nie chcę umniejszać możliwościom MS Access. W pewnych zastosowaniach, jest to w pełni
funkcjonalny i wystarczający system bazy danych. MS Access został szczelnie obudowany
pomocniczymi narzędziami, które ułatwiają zarządzanie danymi oraz ułatwiają zarządzanie samym
systemem bazy MS Access. Pomimo ze istnieje możliwość „rozmowy" z MS Access za pomocą
języka SQL, jest ona niewygodna do tego stopnia, że staje się nieprzyjemna
i zniechęcająca.
Studiowanie ćwiczeń z InterBase
Aby móc pracować z InterBase, musimy go najpierw zainstalować. Instalacja InterBase została
opisana w rozdziale 13. Tam również znajdziemy informacje o miejscu skąd można skopiować wersję
instalacyjną. Serwer bazy danych InterBase dostępny jest również z większością produktów, narzędzi
programistycznych firmy Inprise (Borland), min: Delphi, JBuilder, C++ Builder. W rozdziale 13.
znajduje się również opis narzędzi InterBase, które umożliwiają na pracę z bazą danych i które
oczywiście umożliwią wykonywanie ćwiczeń. Przed rozpoczęciem studiowania ćwiczeń, ale już po
zainstalowaniu InterBase należy:
1. Stworzyć bazę WYPAUT. Informacje o tym, jak to zrobić znajdziemy w sekcji „Tworzenie bazy
danych w Interbase" w rozdziale 13.
2. Po stworzeniu bazy WYPAUT musimy uruchomić skrypty tworzące i wypełniające danymi tabele
w bazie WYPAUT. Skrypty te można skopiować z serwera ftp wydawnictwa Helion
( ftp://ftp.helion.com.pl/przyklady/cwsql.zip - znajdziesz skrypty dla DB2 i InterBase'a). Skrypty te
znajdują się również na końcu tych ćwiczeń. Zostały one jednak opublikowane dla DB2.
Informacje o tym, jak je dostosować dla InterBase'a znajdziesz w rozdziale 14. w sekcji „Skrypty
tworzące strukturę bazy WYPAUT".
3. Po zainstalowaniu InterBase'a oraz stworzeniu bazy WYPAUT i jej struktury jesteśmy gotowi do
pracy z ćwiczeniami, które polegają na wykonywaniu poleceń SQL.
1
Arkadiusz Jakubowski – Podstawy SQL – ćwiczenia praktyczne
___________________________________________________________________________________________________
Studiowanie ćwiczeń z DB2
Poniżej zamieszone informacje pozwolą nam na usystematyzowanie czynności, jakie musimy
wykonać, aby móc swobodnie korzystać z ćwiczeń, pracując z systemem DB2. Należy przejść przez
następujące kroki:
1. Musimy zainstalować DB2. Zostało to opisane w rozdziale 10. W tym rozdziale znajdziemy
również informacje o tym, skąd zdobyć kopię instalacji DB2 w wersji 7.1 Personal Edition.
2. Następnie musimy uruchomić menedżera DB2. Do tego celu służy polecenie db2start, które należy
wydać w wierszu poleceń systemu operacyjnego lub z poziomu menu Start | Uruchom. W wersji
DB2 dla Windows 95 lub 98 menedżer DB2 startuje automatycznie. W Windows NT również
może okazać się to niekonieczne, gdy podczas instalacji DB2 wyraźnie zaznaczymy, że menedżer
DB2 ma startować automatycznie podczas startu systemu operacyjnego. Jeżeli posiadamy system
Windows NT, możemy użyć narzędzia Usługi z Panelu sterowania. Tam również możemy
uruchomić menedżera DB2.
3. Po upewnieniu się, że menedżer DB2 został uruchomiony, tworzymy bazę danych WYPAUT
w aplikacji Command Linę Processor. Opis procesu tworzenia bazy WYPAUT znajduje się
w rozdziale 12. Narzędzia DB2 w sekcji „Tworzenie bazy" opisującej narzędzie Command Linę
Processor.
4. Teraz musimy dokonać pewnych ustawień w narzędziu Tools Settings. Musimy określić znak
średnika jako znak oddzielający poszczególne wyrażenia SQL wprowadzane m.in. w aplikacji
Command Center oraz w skryptach tworzących strukturę bazy danych. Więcej informacji na temat
tych ustawień znajdziesz w rozdziale 12. „Narzędzia DB2" w sekcji „Ustawienia narzędzi DB2".
5. Po stworzeniu bazy WYPAUT i ustaleniu znaku średnika jako znaku oddzielającego poszczególne
zapytania w skrypcie, musimy uruchomić skrypty tworzące i wypełniające danymi tabele w bazie
WYPAUT. Skrypty te można skopiować z serwera ftp://ftp.helion.com.pl/przyklady/cwsql.zip.
Skrypty te znajdują się również na końcu tych ćwiczeń. Jeżeli nie mamy dostępu do Intemetu,
należy skrypty przepisać do plików, a następnie je uruchomić. Wykonywanie skryptów zostało
opisane w rozdziale 12. „Narzędzia DB2" w sekcji opisującej narzędzie Command Center.
6. Po wykonaniu powyższych zadań jesteśmy gotowi do pracy z ćwiczeniami, które polegają na
wykonywaniu poleceń SQL.
Zapraszam do ćwiczeń
Uff. Mam nadzieję, że wszyscy przebrną przez powyższe i będą się czuć swobodnie podczas
studiowania tych ćwiczeń. Równie dobrze można zacząć od poznania systemu, jak i narzędzi
wchodzących w skład systemu DB2 lub InterBase. Po zapoznaniu się z nimi i nabraniu pewnej
wprawy w posługiwaniu się nimi, możemy przejść do realizacji zadań wypunktowanych powyżej.
Życzę miłej lektury Autor
2
Arkadiusz Jakubowski – Podstawy SQL – ćwiczenia praktyczne
___________________________________________________________________________________________________
Rozdział 2. Koncepcja bazy danych
W tym rozdziale przedstawiona zostanie koncepcja bazy danych, jej podstawowe elementy składowe
jak tabele i widoki. Omówione zostaną również typy danych, definiowanie tabel oraz rola
i zastosowanie języka SQL w relacyjnych bazach danych.
Tradycyjne bazy danych
W czasie kiedy komputery nie były wykorzystywane tak powszechnie jak dzisiaj,
informacje były gromadzone na papierze.
Pracownik firmy musiał ręcznie organizować dane. Zapisywał je, wyszukiwał, aktualizował itd.
Dzisiaj, oprócz operacji, które musi wykonać ręcznie, pozostałe wykonuje za pomocą funkcji, które
dostarcza relacyjny system bazy danych.
Rys.2.1.
Relacyjny system bazy danych
Relacyjny system bazy danych przechowuje wszystkie dane w tabelach. Każda tabela zawiera dane na
konkretny temat, np dane o klientach, dane o pracownikach, towarach itp. System bazy danych
zarządza tymi danymi, pozwala m.in. na szybsze ich wyszukanie i zorganizowanie
Za każdym razem gdy potrzebujemy informacji z bazy danych, musimy „zapytać" system bazy
danych w języku, który on rozumie. Tym językiem jest SQL - Structured Qu-ery Language
3
4772289.002.png
Arkadiusz Jakubowski – Podstawy SQL – ćwiczenia praktyczne
___________________________________________________________________________________________________
Rys.2.2.
Wydobywanie informacji z tradycyjnej bazy danych oraz z systemu relacyjnej
bazy danych
Do dzisiaj istnieją tzw. tradycyjne bazy danych. Są to bazy informacji, których nośnikiem jest po
prostu papier. Wiele instytucji w tym niestety policja oraz szpitale korzysta do dziś z takich baz.
Scenariusz wydobywania danych w takich instytucjach jest następujący:
§ l osoba potrzebująca danych np. przełożony prosi drugą osobę o pewne dane;
§ pracownik po otrzymaniu polecenia szuka informacji wśród dokumentów, które zostały złożone
albo w archiwum lub w po prostu w szafie;
§ pracownik po zebraniu pewnej ilości segregatorów z danego okresu przegląda je, a następnie
przygotowuje zbiorczy dokument zawierający żądane informacje;
§ l po wydobyciu danych i zorganizowaniu ich do odpowiedniej formy wysyła je do przełożonego.
Czas wykonania tych operacji jest różny i zależy od wielkości organizacji, jej struktury,
ilości potrzebnych danych oraz od pracowitości osób je zbierających.
Rys.2.3
W systemie relacyjnej bazy danych wszystkie powyższe operacje sprowadzają się do sformułowania
tego samego pytania o dane ale w formie zrozumiałej dla komputera, a ściślej mówiąc, w formie
zrozumiałej dla systemu bazy danych.
Cała operacja wydobywania danych trwa w tym przypadku znacznie krócej. Jakość tych danych jest
przy tym lepsza.
4
4772289.003.png 4772289.004.png
Arkadiusz Jakubowski – Podstawy SQL – ćwiczenia praktyczne
___________________________________________________________________________________________________
Mamy więcej pewności, że dane są prawdziwe, że ktoś się nie pomylił lub pominął pewną część
danych przy zestawianiu żądanych informacji.
Rys.2.4.
SQL - Strukturalny język zapytań
Język SQL jest wykorzystywany w większości relacyjnych systemów baz danych. SQL jest
zaimplementowany m.in. w takich systemach baz danych, jak: DB2, Oracie, Inter-Base, MySQL,
dBase, Paradox. Składnia języka SQL dzieli się na trzy typy:
§ język definiowania struktur danych - DDL (Data Definition Language);
§ R język do wybierania i manipulowania danymi - DML (Data Manipulation Language);
§ l język do zapewniania bezpieczeństwa dostępu do danych - DCL (Data Control Language).
Rys.2.5.
Składnia języka SQL wchodząca w skład języka DDL jest używana przez administratorów systemu
relacyjnej bazy danych w celu utrzymania struktury bazy danych, obiektów bazy danych takich jak
m.in. tabele.
Język DCL jest używany przez administratorów do zapewnienia bezpieczeństwa dostępu do danych,
m.in. do nadawania uprawnień do danych.
Język DML jest używany przez wszystkich użytkowników, którzy mają dostęp do bazy danych. Za
pomocą tego typu składni języka SQL użytkownicy mogą otrzymywać, zmieniać dane, dodawać nowe
itp.
5
4772289.005.png 4772289.001.png
Zgłoś jeśli naruszono regulamin