Co to jest CRUD?
CRUD to akronim od Create, Read, Update, Delete — czyli czterech podstawowych operacji wykonywanych na danych w systemach informatycznych i bazach danych:
- Create – tworzenie, czyli dodawanie nowych rekordów,
- Read – odczyt, czyli przeglądanie lub wyszukiwanie danych,
- Update – aktualizacja, czyli edytowanie istniejących rekordów,
- Delete – usuwanie danych.
CRUD opisuje typowy zestaw funkcji aplikacji, która współpracuje z bazą danych. Klasycznym przykładem jest panel administracyjny sklepu internetowego, w którym administrator dodaje produkty (Create), przegląda listę zamówień (Read), zmienia ceny (Update) i usuwa nieaktualne pozycje (Delete).

CRUD a formularze w aplikacjach
Formularze w aplikacjach bazodanowych niemal zawsze realizują jedną z operacji CRUD. Najczęstsze powiązania:
- formularz rejestracji → Create (zapisuje nowego użytkownika w bazie),
- widok profilu / lista produktów → Read (pobiera i wyświetla dane),
- formularz edycji profilu → Update (modyfikuje istniejący rekord),
- przycisk „Usuń konto” → Delete (kasuje rekord z bazy).
Stąd ważne pytanie egzaminacyjne: formularze do obsługi baz danych tworzy się w celu wprowadzania, modyfikowania, przeglądania i usuwania danych — czyli realizacji operacji CRUD.
Odpowiedniki CRUD w języku SQL
Każda z czterech operacji CRUD ma swój odpowiednik w postaci instrukcji SQL należącej do podzbioru DML (Data Manipulation Language — język manipulacji danymi).
Create → INSERT INTO
INSERT INTO Pracownicy (imie, nazwisko, stanowisko)
VALUES ('Anna', 'Nowak', 'Kasjer');
Aby dodać nowy rekord do tabeli, używamy polecenia INSERT INTO wraz z klauzulą VALUES.
Read → SELECT
SELECT * FROM Pracownicy;
SELECT imie, nazwisko FROM Pracownicy WHERE stanowisko = 'Kasjer';
SELECT to najczęściej używane polecenie SQL — służy do odczytu danych z jednej lub wielu tabel.
Update → UPDATE ... SET ... WHERE
UPDATE podzespoly
SET URL = 'toshiba.pl'
WHERE producent = 'TOSHIBA';
Powyższy zapis to klasyczne pytanie egzaminacyjne: zaktualizuj wartość pola URL na 'toshiba.pl' dla wszystkich rekordów, w których pole producent jest równe TOSHIBA.
Inny przykład — zmiana wartości w kolumnie:
UPDATE tab SET kol = 'Zosia' WHERE kol = 'Ania';
Uwaga na brak WHERE! Polecenie UPDATE tab SET kol = 'Zosia'; — bez warunku — zmieni wartość we wszystkich wierszach tabeli. Pominięcie WHERE to jeden z najczęstszych haczyków egzaminacyjnych.
Delete → DELETE FROM ... WHERE
DELETE FROM produkty WHERE stan = 0;
Podobnie jak przy UPDATE, pominięcie klauzuli WHERE w DELETE spowoduje usunięcie wszystkich rekordów z tabeli.
DML kontra DDL — częsty haczyk
To ważne rozróżnienie, bo CKE lubi je sprawdzać.
| Podzbiór SQL | Czego dotyczy | Polecenia |
|---|---|---|
| DML (Data Manipulation Language) | dane w tabelach (operacje CRUD) | INSERT, SELECT, UPDATE, DELETE |
| DDL (Data Definition Language) | struktura bazy (tabele, kolumny) | CREATE, ALTER, DROP, TRUNCATE |
DROP TABLE pracownicy; — to nie jest operacja CRUD. Polecenie DROP w języku SQL służy do usuwania całej tabeli (wraz z jej strukturą i danymi), a nie pojedynczych rekordów. Jest to operacja DDL.
Różnica praktyczna:
DELETE FROM pracownicy;— usuwa wszystkie wiersze, ale tabela istnieje dalej (pusta),DROP TABLE pracownicy;— usuwa całą tabelę wraz ze strukturą.
CRUD a frameworki aplikacji
Większość nowoczesnych aplikacji webowych korzysta z frameworków (Laravel, Symfony, Django, Spring), które automatyzują operacje CRUD. W skład typowego frameworka wchodzą m.in.:
- biblioteki gotowych funkcji — w tym do obsługi bazy (ORM),
- szablony stron i komponenty interfejsu,
- mechanizmy routingu — przypisanie adresów URL do funkcji,
- narzędzia walidacji danych z formularzy,
- system uwierzytelniania użytkowników.
Dzięki temu programista zamiast pisać surowe zapytania INSERT, SELECT, UPDATE, DELETE może korzystać z gotowych metod modelu (np. User::create(), User::find(), $user->save(), $user->delete()), które realizują te same operacje CRUD pod spodem.
CRUD a raporty w bazach danych
W systemach zarządzania relacyjnymi bazami danych (SZRBD) na podstawie operacji Read generuje się raporty — zestawienia danych w czytelnej formie. Raport to wynik zapytania SELECT (często z grupowaniem, sortowaniem i filtrowaniem), przygotowany do prezentacji lub wydruku.
SELECT producent, COUNT(*) AS liczba_produktow, AVG(cena) AS srednia_cena
FROM produkty
GROUP BY producent
ORDER BY liczba_produktow DESC;
W raporcie można uzyskać m.in. podsumowania, liczniki rekordów, wartości średnie, grupowania według wybranych kolumn — wszystko to są operacje typu Read.
Co warto zapamiętać na egzamin INF.03
- CRUD = Create, Read, Update, Delete — cztery podstawowe operacje na danych.
- Formularze w aplikacjach bazodanowych służą do realizacji operacji CRUD: wprowadzania, modyfikowania, przeglądania i usuwania danych.
- Odpowiedniki w SQL: INSERT (Create), SELECT (Read), UPDATE (Read/Update), DELETE (Delete).
- Aby dodać nowy rekord do tabeli — używamy
INSERT INTO ... VALUES (...). UPDATE tabela SET kolumna = wartość WHERE warunek— to składnia aktualizacji rekordu.- Bez
WHEREpoleceniaUPDATEiDELETEmodyfikują/usuwają wszystkie wiersze tabeli. DROPto NIE CRUD — to operacja DDL usuwająca całą tabelę (strukturę + dane).- DML (INSERT, SELECT, UPDATE, DELETE) operuje na danych; DDL (CREATE, ALTER, DROP) na strukturze bazy.
- Raporty w SZRBD bazują na operacji Read — wyniki zapytań SELECT z grupowaniem i sortowaniem.
- Framework zawiera m.in. biblioteki, szablony, routing i mechanizmy ułatwiające implementację CRUD.