Twoja własna baza gier w 3 krokach

W tym ćwiczeniu ożywimy strukturę bazy danych (Producenci, Gry, Gatunki) i sprawdzimy, jak tabele „rozmawiają” ze sobą w praktyce. Wszystko wykonasz w przeglądarce, bez instalowania programów.

Krok 1: Przygotowanie środowiska

  • Wejdź na stronę sqliteonline.com.
  • Upewnij się, że w lewym górnym rogu wybrana jest opcja SQLite (ikona z niebieskim piórkiem). To najprostsza baza "lite", idealna do nauki.
  • Jeśli w dużym oknie na środku (edytorze) jest już jakiś tekst – zaznacz go (Ctrl+A) i usuń, aby mieć czystą kartkę.

Krok 2: Import danych (Tworzenie i "karmienie" bazy)

Skopiuj poniższy blok kodu SQL. Ten skrypt automatycznie zbuduje strukturę tabel i wypełni je przykładowymi grami:

-- 1. Czyścimy stare dane
DROP TABLE IF EXISTS gry_gatunki; DROP TABLE IF EXISTS gatunki;
DROP TABLE IF EXISTS gry; DROP TABLE IF EXISTS producenci;
-- 2. Tworzymy tabele (szufladki na dane)
CREATE TABLE producenci (id_producenta INTEGER PRIMARY KEY, nazwa_studia TEXT, kraj TEXT);
CREATE TABLE gatunki (id_gatunku INTEGER PRIMARY KEY, nazwa_gatunku TEXT);
CREATE TABLE gry (id_gry INTEGER PRIMARY KEY, tytul TEXT, cena DECIMAL, id_producenta INTEGER, FOREIGN KEY(id_producenta) REFERENCES producenci(id_producenta));
CREATE TABLE gry_gatunki (id_gry INTEGER, id_gatunku INTEGER, PRIMARY KEY(id_gry, id_gatunku));
-- 3. Wrzucamy dane do środka
INSERT INTO producenci VALUES (1, 'CD Projekt Red', 'Polska'), (2, 'Rockstar Games', 'USA'), (3, 'FromSoftware', 'Japonia');
INSERT INTO gatunki VALUES (1, 'RPG'), (2, 'Akcja'), (3, 'Souls-like');
INSERT INTO gry VALUES (101, 'Wiedźmin 3', 99.99, 1), (102, 'Cyberpunk 2077', 199.00, 1), (103, 'GTA V', 120.00, 2), (104, 'Elden Ring', 249.00, 3);
INSERT INTO gry_gatunki VALUES (101, 1), (102, 1), (103, 2), (104, 1), (104, 3);

Co zrobić? Wklej kod w edytor i kliknij przycisk Run (ikona błyskawicy). Jeśli po lewej stronie w panelu pojawiły się nazwy tabel – Twoja symulacja działa!

Krok 3: Eksperymenty i zapytania (Zabawa w detektywa)

Teraz czas sprawdzić, co potrafi Twoja baza. Wyczyść okno edytora i wpisz poniższe polecenia, by zobaczyć wyniki:

  1. Pokaż wszystkie gry i ich twórców:
    SELECT gry.tytul, producenci.nazwa_studia FROM gry JOIN producenci ON gry.id_producenta = producenci.id_producenta;
  2. Znajdź najdroższą grę w bazie:
    SELECT tytul, cena FROM gry ORDER BY cena DESC LIMIT 1;
  3. Zmień cenę (Zrób promocję):
    UPDATE gry SET cena = 49.99 WHERE tytul = 'Wiedźmin 3';

Wskazówka: Po każdym wpisanym zapytaniu kliknij Run, aby zobaczyć tabelę wynikową na dole ekranu!