Podstawy baz danych i języka SQL – informatyka szkoła średnia
Wprowadzenie — co to jest baza danych?
Baza danych to uporządkowany zbiór informacji przechowywany w sposób umożliwiający szybkie wyszukiwanie, modyfikację i zarządzanie danymi. Systemy zarządzania bazami danych (DBMS) takie jak MySQL, PostgreSQL czy Microsoft SQL Server umożliwiają tworzenie struktur, kontrolę dostępu i backup danych. Praktyczny przewodnik o tworzeniu baz danych znajdziesz na Netbe. (Netbe)
Relacyjne vs. nierelacyjne (NoSQL)
- Relacyjne bazy danych (RDBMS) przechowują dane w tabelach powiązanych relacjami — to najczęściej wykorzystywany model na zajęciach szkolnych (np. MySQL). (Netbe)
- NoSQL (dokumentowe, klucz-wartość, grafowe) używa się tam, gdzie dane są bardzo zróżnicowane lub skalowanie poziome jest kluczowe — omówienie wyboru silnika i kontekstu znajdziesz w materiałach praktycznych. (Netbe)

Podstawowe pojęcia
- Tabela — zbiór rekordów (wierszy) zdefiniowanych kolumnami (atrybutami).
- Rekord/wiersz — pojedynczy element danych (np. jeden uczeń).
- Kolumna — pole z określonym typem danych (np. VARCHAR, INT, DATE).
- Klucz główny (PRIMARY KEY) — jednoznacznie identyfikuje rekord.
- Klucz obcy (FOREIGN KEY) — łączy tabele przez relacje.
Najważniejsze polecenia SQL — przykłady
Tworzenie bazy i tabeli
CREATE DATABASE szkola;
USE szkola;
CREATE TABLE uczniowie (
id INT PRIMARY KEY AUTO_INCREMENT,
imie VARCHAR(50),
nazwisko VARCHAR(50),
klasa VARCHAR(10)
);
(Przykłady instalacji i pracy z MySQL znajdziesz w poradniku Netbe o MySQL). (Netbe)
Wstawianie danych (INSERT)
INSERT INTO uczniowie (imie, nazwisko, klasa)
VALUES ('Anna', 'Kowalska', '2A');
Pobieranie danych (SELECT)
SELECT imie, nazwisko FROM uczniowie WHERE klasa = '2A';
Aktualizacja i usuwanie (UPDATE / DELETE)
UPDATE uczniowie SET klasa = '3A' WHERE id = 1;
DELETE FROM uczniowie WHERE id = 2;
Indeksy, transakcje i backup
- Indeksy przyspieszają wyszukiwanie, ale zwiększają koszt zapisu.
- Transakcje (BEGIN / COMMIT / ROLLBACK) gwarantują spójność danych w operacjach wielu zapytań.
- Kopie zapasowe (backup) są kluczowe — plan tworzenia i przywracania kopii powinien być standardową praktyką administracyjną. Praktyczne porady dot. backupu znajdują się w artykule Netbe o tworzeniu kopii baz danych. (Netbe)
Bezpieczeństwo baz danych — co uczniowie muszą wiedzieć
Najczęstsze zagrożenia to niepoprawnie zabezpieczone użytkownicy/uprawnienia oraz SQL Injection — atak polegający na wstrzyknięciu złośliwych fragmentów SQL do zapytań aplikacji. W nauczaniu warto podkreślać przygotowywanie zapytań z użyciem parametrów (prepared statements) i odpowiednie prawa dostępu. Przeczytaj o SQL Injection i zabezpieczeniach na Netbe. (Netbe)
Dodatkowo — zarządzanie użytkownikami i uprawnieniami na serwerze Linux/MySQL warto ćwiczyć praktycznie (tworzenie użytkowników, nadawanie SELECT/INSERT/UPDATE/DELETE). Przykłady tworzenia baz i użytkowników w środowisku Linux znajdziesz tutaj. (Netbe)
Proste ćwiczenia dla uczniów (zadania do klasówki/praktyki)
- Zaprojektuj małą bazę (np.
biblioteka) z tabelamiksiazki,czytelnicy,wypozyczenia. - Napisz zapytania: dodaj 3 książki, wypożycz jedną dla czytelnika, wyświetl wszystkie obecnie wypożyczone książki.
- Zademonstruj użycie transakcji: przenieś książkę między oddziałami i zrollbackuj operację w razie błędu.
- Zaimplementuj przygotowane zapytanie (prepared statement) w wybranym języku (np. Python + connector) i porównaj z zapytaniem składanym dynamicznie.
Materiały i poprawne linki wewnętrzne (Netbe.pl)
- „Jak tworzyć bazy danych” — ogólny przewodnik po projektowaniu i koncepcjach.
https://netbe.pl/jak-tworzyc-bazy-danych/ - „Wprowadzenie do korzystania z baz danych MySQL” — instalacja, podstawowe operacje w MySQL.
https://netbe.pl/wprowadzenie-do-korzystania-z-baz-danych-mysql/ - „Tworzenie baz danych, użytkowników i uprawnień w systemie Linux” — praktyczne polecenia i przykłady.
https://netbe.pl/tworzenie-baz-danych-uzytkownikow-i-uprawnien-w-systemie-linux/ - „SQL Injection — zagrożenie i ochrona” — opis ataku i metody zapobiegania.
https://netbe.pl/sql-injection-jako-droga-do-infekowania-systemow-i-posrednio-uzytkownikow/ - „Tworzenie kopii zapasowych i przywracanie baz danych MySQL/SQL Server” — backup i przywracanie.
https://netbe.pl/tworzenie-kopii-zapasowych-i-przywracanie-baz-danych-sql-server-na-windows-server/






