Przystępując do czytania wykładów z przedmiotu Komunikacja z Bazami Danych, należy zapoznać się ogólnie z koncepcją modelu relacyjnego danych (Postulaty Codd’a) oraz z podstawowymi pojęciami modelu relacyjnego danych, takimi jak tabela, kolumna, typ danych, klucz, klucz główny, klucz obcy, związek, wiersz (rekord), widok (perspektywa), pseudowartość logiczna NULL. Materiały dotyczące tych zagadnień znajdują się w wykładach z przedmiotu Projektowanie Baz Danych (PBD).
Celem tego cyklu wykładów jest zapoznanie czytelnika z podstawowymi informacjami o składni i możliwościach wykorzystania języka SQL. Pominięto w nim szczegóły implementacyjne, uznane za mniej istotne przy nauce podstaw języka. Niemniej należy przyjąć, że w przypadku wszystkich instrukcji pełna informacja znajduje się w dokumentacji technicznej każdego serwera baz danych. Wyczerpujące informacje można znaleźć na stronach http://msdn.microsoft.com dla MS SQL Server i http://psoug.org i http://www.oracle.com/technetwork/indexes/downloads/index.htmldla ORACLE.
Wszystkie przykłady zawarte w treści wykładu, a także zadania do ćwiczeń z zapytań języka SQL można wykonać na przykładowej bazie danych. Szczegółowy opis tej bazy znajduje się w wykładzie 3. Skrypty dla MS SQL Server oraz ORACLE, tworzące tą bazę i wypełniające ją danymi, znajdą się w materiałach dodatkowych, udostępnianych przez osoby prowadzące ćwiczenia. Sposób uruchomienia skryptów też zostanie podany w materiałach do ćwiczeń.
Podstawowym środowiskiem, w którym zaprezentowano wszystkie przykłady, oraz w którym będą przeprowadzane ćwiczenia, jest MS SQL Server 2008 R2. Środowiskiem pomocniczym, w którym studenci mogą równolegle prowadzić swoje prace i rozwiązywać zadania, jest ORACLE.
Każdy student będzie miał założoną bazę danych w MS SQL Server na serwerze w PJWSTK. Nazwą bazy danych będzie numer indeksu, wraz z poprzedzającymi go literami. Aplikacją kliencką, którą należy zainstalować lokalnie na swoim komputerze jest MS SQL Management Studio, dostępne bezpłatnie na stronach firmy Microsoft, a także w ramach licencji ELMS. Szczegółowe informacje dotyczące dostępnego oprogramowania, oraz warunków licencji ELMS, można znaleźć pod adresem http://bss.pjwstk.edu.pl. Każdy ze studentów, ma także możliwość lokalnego zainstalowania serwera MS SQL Server w ramach licencji ELMS. Szczegółowe instrukcje dotyczące instalacji tego oprogramowania znajdują się w wykładzie z przedmiotu Administrowanie Bazami Danych (ABD). Jednak bez dokładnego zapoznania się z zasadami instalacji tego serwera, można go zainstalować korzystając z ustawień domyślnych, co będzie zupełnie wystarczającym rozwiązaniem na potrzeby ćwiczeń z przedmiotu KBD.
W przypadku chęci prowadzenia równolegle ćwiczeń w środowisku ORACLE, należy skorzystać z darmowej instalacji bazy danych ORACLE Enterprise, oraz klienta SQL Developer, dostępnych na stronie internetowej ORACLE. Skrótowy opis instalacji znajduje się poniżej.
Oczywiście,zarówno w przypadku licencji ELMS firmy Microsoft, jak też w przypadku darmowego wykorzystywania produktów ORACLE, należy bezwzględnie przestrzegać warunków określonych w licencjach, ze szczególnym uwzględnieniem zakazu użycia tych produktów do jakichkolwiek zastosowań komercyjnych.
Proces instalacji Microsoft SQL Server został szczegółowo opisany w trzecim wykładzie przedmiotu "Administrowanie bazami danych". W tym miejscu prezentujemy jedynie skróconą instrukcję pozwalającą przygotować serwer do ćwiczeń z przedmiotu KBD. Studenci mają możliwość pobrania pakietu instalacyjnego z serwisu ELMS (http://elms.pjwstk.edu.pl). Sugerowaną wersją jest 2008 R2 Standard, Enterprise lub Developer.
Po uruchomieniu instalatora wybieramy opcję New installation or add features to an existing installation.
Na kolejnym ekranie zaznaczamy opcję SQL Server feature installation:
Zatrzymujemy się na ekranie przedstawionym poniżej. Zaznaczamy opcje:
Na poniższym ekranie musimy określić, którzy użytkownicy systemu Windows będą mieli prawa administracyjne w instalowanej instancji MS SQL Server. Możemy dodać bieżącego użytkownika oraz dowolne inne konta.
Pozostawiamy domyślne ustawienia na pozostałych ekranach instalatora.
SQL Server Management Studio to graficzna konsola pozwalająca na wykonywanie większości czynności na serwerze. Z jej poziomu możemy też pisać kod SQL. Będzie to podstawowe narzędzie używane w tym przedmiocie.
Po uruchomieniu Management Studio pojawi się okno pozwalające określić sposób, w jaki chcemy być uwierzytelnieni. Mechanizm ten jest omówiony szczegółowo w ramach przedmiotu "Administrowanie bazami danych". My pozostawimy domyślną opcję Windows authentication. Pamiętajmy, że w systemie Windows musimy być zalogowani na konto, które ma prawa administracyjne w serwerze SQL. Konto to określiliśmy w trakcie instalacji
W lewej części ekranu zauważymy rozwijane drzewo zawierające bazy danych oraz inne obiekty. Rozwijając drzewo możemy wyświetlić obiekty zawarte w wybranej bazie danych. Prawa część ekranu będzie pokazywała szczegóły dotyczące elementu zaznaczonego w drzewie.
Aby przygotować nasz serwer do ćwiczeń musimy założyć nową bazę danych. Zrobimy to po kliknięciu prawym przyciskiem myszy na gałąź Databases i wybraniu New database. Wpisujemy nazwę bazy danych (Database name). Nie zmieniamy pozostałych ustawień. Naciskamy OK. Po chwili baza zostanie utworzona.
Aby rozpocząć pracę z językiem SQL, należy nacisnąć przycisk New query znajdujący się na pasku narzędzi. Otworzy się nowa zakładka umożliwiająca pisanie kodu. Zauważmy, że jednocześnie możemy mieć otwartych wiele zakładek. Zawartość okna można zapisać do pliku tekstowego. Można też wczytać przygotowany wcześniej skrypt SQL. Postąpimy w ten sposób, aby przygotować tabele do ćwiczeń. Prowadzący udostępni skrypt SQL budujący zawartość przykładowej bazy danych, która będzie używana w dalszej części kursu.
Uruchomienie kodu SQL następuje po naciśnięciu przycisku Execute znajdującego się na pasku narzędzi lub naciśnięciu przycisku F5. Warto zauważyć, że jeśli zaznaczymy fragment kodu, to tylko ten fragment zostanie uruchomiony. Jeśli nic nie jest zaznaczone, uruchomi się cała zawartość okna. Pamiętajmy, że każdy kod SQL uruchamiany jest w kontekście wybranej bazy danych. Rozpoczynając pracę zwróćmy uwagę, czy w liście rozwijanej znajdującej się na pasku narzędzi wybrana jest właściwa baza danych.
Po uruchomieniu zapytania wyniki zostaną przedstawione w dolnej części ekranu w postaci tabeli (zakładka Results). Komunikaty dotyczące wykonania znajdziemy na zakładce Messages.
Film - SQL Server Management Studio - wstęp
Film - SQL Server Management Studio c.d., tworzenie tabel "Emp" i "Dept"
Przedstawiamy skróconą instrukcję instalacji bazy danych ORACLE. Dotyczy ona wyłącznie instalacji lokalnej, nie sieciowej!
Po pobraniu, przeczytaniu instrukcji i rozpakowaniu plików instalacyjnych, uruchamiamy plik Setup.exe. Wyświetlone zostaje pierwsze okno instalatora:
Zalecana jest instalacja w miejscu wskazanym na ścieżkach na Rysunku 1. Global Database Name to czteroznakowy identyfikator bazy danych, który musi zostać wypełniony (można pozostawić domyślny).
Po przejściu do następnego okna:
i uzgodnieniu wymogów i ustawień środowiskowych, dalsza instalacja powinna przebiegać bez zakłóceń.
SQL Developer to najnowsze z trzech narzędzi developerskich, wykorzystywanych w PJWSTK (oczywiście, nie tylko w PJWSTK) do pracy z bazami danych ORACLE. Poza SQL Developerem, zdecydowanie najnowocześniejszym i najwygodniejszym, używane są jeszcze: prosty interfejs tekstowy SQL Plus, oraz iSQLPlus – narzędzie internetowe, wykorzystujące przeglądarki internetowe, jako interfejs użytkownika.
SQL Developer, narzędzie utworzone w języku Java, nie wymaga instalacji. Program Sqldeveloper.exe po uruchomieniu otwiera okno edycji połączenia, pozwalające zdefiniować i zapisać połączenie do bazy danych:
Connection name (nazwa połaczenia) – dowolna nazwa alfanumeryczna, definiująca całe połaczenie.
Password (hasło) – zgodne z hasłem podanym przy instalacji bazy danych.
Hostaname (nazwa serwera) – przy instalacji lokalnej można pozostawić locahost.
SID – zgodny z Global Database Name podanym przy instalacji bazy danych.
Po pozytywnym przejściu testu, zapisujemy nazwane połączenie do bazy danych. Odtąd odwołanie się do jego nazwy będzie skutkowało nawiązaniem połaczenia z bazą.
Po dokonaniu połączenia, zostanie wyświetlone okno robocze aplikacji:
Okno robocze Sqldevelopera podzielone jest na trzy części: panel nawigacji po lewej stronie, okno edycji poleceń po prawej stronie u góry i okno prezentacji wyników po prawej stronie u dołu.
Panel nawigacyjny prezentuje wszystkie obiekty bazy danych, pogrupowane według ich klas. Na Rysunku 4 rozwinięte są wszystkie tabele. Z kolei rozwinięcie konkretnego obiektu, pozwala zapoznac się z jego elementami – w przypadku tabeli, są to nazwy kolumn.
W oknie poleceń mogą pojawiać się instrukcje języka SQL, Pl/SQL oraz SQL*Plus (nie wchodzi w zakres niniejszego cyklu wykładów). Pojedyncza instrukcja, wskazana kursorem lub podświetlona (zaznaczona), uruchamiana jest ikoną z dużym zielonym trójkątem (Execute statement). Ikona z symbolem kartki i małym, zielonym trójkątem (Run Script), uruchamia skrypt, czyli wszystkie instrukcje znajdujące się w oknie edytora poleceń. Rezultat wykonania polecenia SQL wyświetlany jest w oknie prezentacji danych na zakładce Results. Informacje o wykonaniu skryptu (np. kompilacji procedury), wyświetlane są na zakładce Script Output.
Okien edycji poleceń i prezentacji wyników można uruchomić kilka, przełączanych poprzez kolejne zakładki. W celu utworzenia nowego okna należy użyć ikony z paska ikon Open SQL Worksheet.
W przypadku tworzenia i uruchamiania procedur, procedura już utworzona może zostać uruchomiona poleceniem Run z menu kontekstowgo, po wskazaniu nazwy procedury w panelu nawigacyjnym. Ponowną kompilację procedury uruchamiamy poleceniem Compile, procedurę kompilującą się z błędami uruchamiamy poleceniem Compile For Debug.
Aby rozpocząć pracę z ORACLE w ramach ćwiczeń do niniejszego wykładu, należy skopiować do okna edycji poleceń skrypt tworzący tabele i wypełniający je danymi, który znajduje się w pliku opisanym w materiałacj pomocniczych do wykładu. Po skopiowaniu skrypt uruchamiamy ikoną Run Script.
Na tym kończymy krótkie wprowadzenie do aplikacji Sqldeveloper. Oczywiście nie zostały tutaj omówione wszystkie możliwości oferowane przez to narzędzie, a tylko te, które umożliwią samodzielne wykonanie dołączonych do wykładu zadań.