LIBRE OFFICE BASE – WPROWADZENIE DO SQL

advertisement
Bartosz Gierlach, KGiIS
Technologie informacyjne 2016/2017
LIBRE OFFICE BASE – WPROWADZENIE DO SQL
SQL (Structured Query Language) – strukturalny język zapytań, służący do tworzenia
i modyfikowania baz danych oraz umieszczania i pobierania danych z bazy. Został opracowany
w latach ‘60-tych przez firmę IBM, a w 1986 stał się oficjalnym standardem wspieranym przez ISO
i ANSI. Jest podstawą działania edytorów baz danych oraz stron internetowych wykorzystujących bazy
danych.
Sposoby wprowadzania kodu SQL w LibreOffice Base:
•
„Utwórz kwerendę SQL” - tylko dla zapytań pobierających dane (polecenie SELECT)
•
Narzędzia > SQL
Podstawowe polecenia:
1.
Definiowanie struktur (Data Definition Language)
◦
CREATE – tworzenie baz danych lub tabel, np.
CREATE TABLE „Osoby” ( „Imię” Varchar(20), „Nazwisko” Varchar(20), „Pesel” Integer)
◦ DROP – usuwanie struktury, np. DROP TABLE „Osoby”
◦ ALTER – modyfikacja tabeli, np. dodanie nowej kolumny do tabeli lub jej usunięcie:
ALTER TABLE „Osoby” ADD „Telefon” Integer
ALTER TABLE „Osoby” DROP „Telefon”
2. Modyfikacja danych (Data Manipulation Language)
◦ INSERT – dodawanie nowego rekordu, np.
INSERT INTO „Osoby” VALUES (‘Jan’, ‘Kowalski’,’85041238490’,’600800795’)
◦
UPDATE – modyfikacja istniejącego rekordu, np.
UPDATE „Osoby” SET „Miasto”=’Kraków’ WHERE „Rejestracja”=’KR’
Słowo WHERE określa które z rekordów mają zostać zmienione, jeśli zostanie pominięte –
zmienione zostaną wszystkie rekordy.
◦
DELETE – usuwanie rekordów, np.
DELETE FROM „Osoby” WHERE „Miasto”=’Kraków’
Bez warunku z WHERE usunięte zostaną wszystkie rekordy tabeli!
Bartosz Gierlach, KGiIS
Technologie informacyjne 2016/2017
3.
Kontrola nad danymi (Data Control Language) – nadawanie uprawnień do obiektów
4. Definiowanie zapytań (Data Query Language)
◦
SELECT – odpowiednik kwerendy wbudowanej w Base, np.:
SELECT * FROM „Osoby” WHERE „Imię”=’Jan’ - wyświetla wszystkie pola (*) z tabeli
Osoby dla rekordów w których pole Imię = ‘Jan’
SELECT „Imię”, „Nazwisko” FROM „Osoby” ORDER BY „Nazwisko”– wyświetla pola
Imię i Nazwisko z tabeli Osoby dla wszystkich rekordów i sortuje po polu Nazwisko
SELECT „Imię”, „Nazwisko” FROM „Osoby” WHERE „Miasto”=’Kraków’ OR
„Miasto”=’Warszawa’ - pola Imię i Nazwisko dla rekordów w których pole Miasto jest
równe Kraków lub Warszawa
SELECT „Osoby”.”Nazwisko” AS „Osoba”, „Miasta”.”Województwo” FROM „Osoby”,
„Miasta” WHERE „Osoby”.”Miasto”=”Miasta”.”Miasto” - w tym przypadku słowo
WHERE pozwala na określenie relacji łączącej tabele Osoby i Miasta, słowo „AS” określa
alias, czyli nazwę pola w kwerendzie
Operatory dla wyrażenia WHERE:
=
równy
<>
różny
>, <
większy, mniejszy
>=, <=
większy lub równy, mniejszy lub równy
BETWEEN
w przedziale otwartym, np. BETWEEN 0 AND 1
LIKE
wzorzec, np. LIKE ‘%a’ (% zastępuje dowolny ciąg znaków), LIKE ‘____’ (_ zastępuje
pojedynczy znak) , LIKE J[uó]rek ([uó] zastępuje jedną z liter podanych w nawiasie)
IN
wartość zawarta w pewnym zbiorze, np.: IN (1, 3, 5, 8)
AND, OR
koniunkcja, alternatywa
NOT
negacja
Bartosz Gierlach, KGiIS
Technologie informacyjne 2016/2017
ZADANIA (do wykonania za pomocą SQL)
1.
Utwórz tabelę „Uczelnie” z polami: „Nazwa” (varchar, 100znaków), „Miasto” (varchar, 20
znaków), „Skrót” (varchar, 10 znaków). Aby zobaczyć utworzoną tabelę, wciśnij
Widok>Odśwież tabele.
2. Wprowadź kilka rekordów do tabeli „Uczelnie”
3. Do tabeli „Osoby” dodaj pole „Uczelnia” i „Płeć”
4. Wypełnij ręcznie pole „Uczelnia” skrótami nazw uczelni (może być normalnie, nie w SQL)
5. Do pola „Płeć” wpisz ‘k’ lub ‘m’ w zależności od tego czy imię kończy się na ‘a’
6.
Wyświetl wszystkie osoby studiujące na którejś z uczelni (wszystkie pola)
7.
Wyświetl imię i nazwisko oraz pełną nazwę uczelni (jako „Uczelnia”) dla wszystkich osób
(wprowadź relację)
8. Wyświetl województwa z jakich pochodzą studenci poszczególnych uczelni (ma zostać
wyświetlona pełna nazwa uczelni i nazwa województwa, jeden wpis dla każdej osoby)
Download