INF.03 · Bazy danych i SQL
INF.03, zadanie SQL 1: sklepik szkolny
Pełne zadanie praktyczne na poziomie podstawowym. Dostajesz bazę szkolnego sklepiku i pięć wymagań. Sam wybierasz klauzule, kolejność pracy i sposób kontroli. Zadanie sprawdza import, analizę struktury, SELECT, relacje, agregację i bezpieczną modyfikację rekordów.
- 45–60 minut
- poziom podstawowy
- baza: inf03_sklepik
Po tej lekcji: wykonasz pełne zadanie egzaminacyjne samodzielnie: od importu, przez pięć kwerend, po dokumentację i kartę kontroli.
1 · Sytuacja
Warunki wykonania
Czas orientacyjny: 45–60 minut. Pracuj samodzielnie w XAMPP i phpMyAdmin. Pobierz plik bazy (zip) z sekcji „Pliki do pracy”, rozpakuj go i zaimportuj plik .sql. Nie zmieniaj danych źródłowych poza poleceniami, które tego wyraźnie wymagają.
W katalogu rozwiązania zapisz kwerendy.sql oraz zrzuty kwerenda1.png, kwerenda2.png itd. Baza zawiera klientów, kategorie, produkty i zamówienia szkolnego sklepiku. Relacje odczytaj samodzielnie po imporcie.
2 · Do wykonania
Pięć poleceń egzaminacyjnych
Pracuj samodzielnie. Przy każdym poleceniu podano oczekiwany wynik, żebyś mógł sprawdzić się bez zaglądania do rozwiązania.
-
Wyświetl nazwę, cenę i stan produktów dostępnych w liczbie większej niż 10. Posortuj malejąco według ceny.Oczekiwany wynik7 wierszypierwszy wiersz: Kanapka serowa · 8.50
-
Wyświetl imię, nazwisko i klasę klientów bez podanego adresu e-mail.Oczekiwany wynik2 wiersze
-
Wyświetl datę zamówienia, klienta, produkt, ilość oraz wartość pozycji. Nadaj kolumnie obliczanej alias
wartosc.Oczekiwany wynik12 wierszy -
Dla każdej kategorii pokaż jej nazwę, liczbę produktów i średnią cenę zaokrągloną do dwóch miejsc.Oczekiwany wynik3 wiersze
-
Zwiększ cenę artykułów szkolnych o 5%. Przed
UPDATEwykonajSELECTkontrolny z identycznym warunkiem.Oczekiwany wynikzmienionych wierszy: 3
3 · Sprawdź się
Czy Twoje wyniki się zgadzają?
To szybka kontrola, a nie ocena. Liczba wierszy jest pierwszym sygnałem, że warunek albo złączenie działa tak, jak trzeba.
4 · Zanim się pomylisz
Typowe błędy w tym zadaniu
Rozwiń każdą z nich.
Identyfikator zamiast nazwy
SELECT z.id_klienta, z.id_produktu, ...Raport pokazuje liczby, których człowiek nie rozumie. Polecenie wymaga imienia, nazwiska i nazwy produktu.
JOIN Klienci k ... JOIN Produkty p ...Złączenie służy zamianie identyfikatorów na opisy.
Brak aliasu kolumny obliczanej
SELECT z.ilosc * p.cena FROM ...Nagłówek kolumny to całe wyrażenie. Polecenie wymaga aliasu wartosc.
SELECT z.ilosc * p.cena AS wartosc FROM ...Alias nadaje czytelny nagłówek.
UPDATE kategorii bez warunku
UPDATE Produkty SET cena = cena * 1.05;Drożeją wszystkie produkty, a polecenie dotyczyło tylko artykułów szkolnych.
UPDATE Produkty SET cena = ROUND(cena * 1.05, 2)
WHERE id_kategorii = (SELECT id_kategorii FROM Kategorie WHERE nazwa = 'Artykuly szkolne');Najpierw SELECT z tym samym warunkiem, potem UPDATE.
5 · Sprawdź sam siebie
Zanim oddasz pracę
Ta lista odpowiada temu, co sprawdza komisja egzaminacyjna: poprawną bazę, poprawne wyniki i dokumentację.
Podsumowanie
Co warto zapamiętać
- Pracuj według procedury: import, struktura, zapytania etapami, kontrola, zapis i ponowne otwarcie.
- Przed
UPDATEzawszeSELECTz tym samym warunkiem. - Dokumentuj pracę: pliki, zrzuty, liczby rekordów.
- Karta kontroli to ostatni krok przed oddaniem.
Dalej na swoim koncie
Rozgrzewki, quiz i zadania są w biurku ucznia.
Teoria jest otwarta dla wszystkich. Żeby rozwiązywać zadania, zapisywać szkice i widzieć swój postęp, zaloguj się.
Zaloguj się →