Funkcjonowanie współczesnych systemów relacyjnych baz danych oparte jest głównie na języku SQL (Structured Query Language, strukturalny język zapytań). SQL to strukturalny język zapytań używany do tworzenia, modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych. Został on opracowany w latach siedemdziesiątych w firmie IBM. Stał się on standardem w komunikacji z serwerami relacyjnych baz danych. Ponieważ SQL jest językiem standaryzowanym, dostęp do danych jest możliwy przez wiele różnych platform sprzętowych, w tym komputery osobiste, mikrokomputery i duże komputery. Inna korzyść związana z SQL polega na tym, że takie oprogramowanie jak arkusze kalkulacyjne czy procesory tekstów może importować dane z baz danych opartych na SQL. Polecenia SQL maja postać zbliżoną do zdań w języku angielskim i są stosowane w celu uzyskania dostępu do danych i sterowania operacjami w bazie danych. Użytkownik mający małe doświadczenie w przetwarzaniu danych lub niemający go wcale, może szybko nauczyć się podstawowych konstrukcji SQL, a ekspert od przetwarzania danych może znaleźć w tym języku pełny zestaw potrzebnych mu narzędzi. Zatem jest to język, którego używają zarówno zwykli użytkownicy, jak i fachowcy od przetwarzania danych. SQL jest językiem strukturalnym, zdefiniowanym za pomocą reguł składniowych.
Zasady ogólne:
• Język SQL nie rozróżnia małych i wielkich liter w słowach kluczowych i nazwach (baz danych, tabel, indeksów i kolumn). Legalne są nazwy zbudowane ze znaków alfanumerycznych, nie zaczynających się od cyfry. Nie są dozwolone nazwy składające się wyłącznie z cyfr. Nie należy w nazwach stosować znaków przestankowych i "@";
• Każda komenda SQL kończy się średnikiem (;) i może składać się z wielu linii tekstu;
• Wartości napisowe podaje się tak: "napis", lub tak: 'napis';
• Wartości liczbowe zapisuje się w "zwykły'' sposób, ewentualnie z kropką dziesiętną lub w notacji wykładniczej (np. -32032.6809e+10), gdy chodzi o wartości zmiennoprzecinkowe.
Język SQL jest przeznaczony dla wielu różnych grup odbiorców
• Zwykłych użytkowników
• Ekspertów od przetwarzania danych
• Twórców programów użytkowych (aplikacji)
• Administratorów baz danych
• Kadry kierowniczej
• Personelu centrum informacji i dla wielu innych
Kiedy używa się SQL, wszystkie dane są dostępne za pomocą standardowego interfejsu użytkownika. Użytkownicy i komputery komunikują się jednym i tym samym językiem. Ze względu na stosowanie SQL zmniejsza się czas szkolenia potrzebnego przy zmianie miejsca pracy i systemu przez pracownika. SQL może być użyty jako standardowe narzędzie umożliwiające dostęp do danych w różnorodnych środowiskach z różnym sprzętem komputerowym i różnymi systemami operacyjnymi.
Występują w nim trzy rodzaje poleceń.
1. DML (Data Manipulation Language)
2. DCL (Data Control Language)
3. DDL (Data Definition Language)
DML to język stosowany przez wszystkich użytkowników bazy danych. Służy on do wybierania i manipulowania danymi znajdującymi się w bazie. Za jego pomocą, można dodawać, usuwać, wybierać czy uaktualniać dane. Komendami do tego służącymi są najczęściej:
• SELECT- wydobywa dane z tabel
• UPDATE- uaktualnia dane w tabeli
• DELETE- kasuje dane z tabeli
• INSERT INTO- wprowadza dane do tabeli
DCL to część języka SQL stosowana przez administratorów bazy danych. Służy ona do zapewnienia bezpieczeństwa dostępu do danych znajdujących się w bazie. Za jego pomocą można na przykład nadawać czy odbierać uprawnienia poszczególnym użytkownikom czy całym grupom.
DDL czyli język definiowania struktur danych jest wykorzystywany do utrzymywania struktury bazy danych. Dotyczy, więc obiektów i poleceń, jakie można na nich wykonywać. Najbardziej popularnymi poleceniami tego języka są:
• CREATE TABLE- tworzy nową tabelę
• ALTER TABLE- zmienia istniejącą tabelę
• DROP TABLE- kasuje istniejącą tabelę
• CREATE INDEX- tworzy indeks
• DROP INDEX- usuwa indeks
Podstawowy blok zapytań SQL
• Za pomocą polecenia SELECT uzyskujemy informacje z bazy.
• Polecenie SELECT składa się, co najmniej z klauzuli SELECT i klauzuli FROM.
• W klauzuli SELECT wymieniamy interesujące nas kolumny.
• W klauzuli FROM wskazujemy, skąd pobrać dane
Operatory relacyjne
Istnieje sześć operatorów relacyjnych w SQL:
• = Równy
• <> lub!= Nierówny
• < Mniejszy
• > Większy
• <= Mniejszy lub równy
• >= Większy lub równy
Słowo WHERE jest używane do określania, że tylko niektóre wiersze tabeli mają być wyświetlane. Mają być wyświetlane bazując na kryteriach przedstawionych w klauzuli WHERE.
Operator AND łączy dwa lub więcej warunków i wyświetla wiersz tylko wtedy, gdy dane w tym wierszu spełniają wszystkie przedstawione warunki.
Operator OR łączy dwa lub więcej warunków, ale zwraca wiersz, jeżeli dowolny z nich (warunków) jest spełniony. Operatory AND i OR można łączyć ze sobą.
Używanie LIKE powoduje, że wyświetlają się nazwiska osób zaczynające się na podaną przez nas literę np.”L”. WHERE Nazwisko LIKE 'L%'. Znak procenta (%) jest użyty do przedstawienia dowolnego znaku (cyfry, litery) lub do zestawu znaków, które mogą pojawić się po "L". Aby znaleźć tych, których nazwiska kończą się na "L", używa się '%L'. Aby znaleźć osoby, które mają "L" w środku nazwiska, używa się '%L%'. Znak '%' może być używany zamiast dowolnych innych znaków w określonej pozycji, w stosunku do podanych znaków (tu np. znaku 'L'). Polecenie NOT LIKE wyświetli wiersze, które nie odpowiadają temu opisowi.