CRUD (Create, Read, Update, Delete)

Intuicja: Wyobraź sobie, że prowadzisz listę kontaktów w telefonie. Musisz móc dodać kogoś nowego, przejrzeć listę, zmienić czyjś numer i usunąć kontakt, gdy przestanie być potrzebny. To właśnie jest CRUD w czystej postaci.


Czym jest CRUD?

CRUD to akronim opisujący cztery elementarne operacje, które można wykonać na trwałych danych (czyli takich, które nie znikają po wyłączeniu aplikacji). Prawie każda aplikacja, z której korzystasz – od Facebooka po system bankowy – to w dużej mierze ładnie opakowany interfejs do operacji CRUD.


Mapowanie CRUD na technologie

Zrozumienie CRUD jest kluczowe, ponieważ te same koncepcje pojawiają się w bazach danych (SQL) oraz w komunikacji między systemami (HTTP/REST).

Operacja Opis SQL (Bazy danych) HTTP (REST API)
Create Tworzenie nowego wpisu. INSERT POST
Read Pobieranie lub odczyt danych. SELECT GET
Update Modyfikacja istniejącego wpisu. UPDATE PUT / PATCH
Delete Usuwanie danych. DELETE DELETE

CRUD w praktyce: Przykład “Systemu Zamówień”

Z perspektywy użytkownika, CRUD objawia się poprzez konkretne akcje w interfejsie:

  1. Create: Klikasz przycisk „Złóż nowe zamówienie” i wypełniasz formularz. Dane trafiają do bazy.
  2. Read: Wchodzisz w zakładkę „Moje zamówienia”, aby sprawdzić status przesyłki. System pobiera dane z bazy.
  3. Update: Zauważasz błąd w adresie i klikasz „Edytuj adres dostawy”. System aktualizuje rekord w bazie.
  4. Delete: Decydujesz się wycofać zamówienie i klikasz „Anuluj”. System usuwa wpis (lub zaznacza go jako nieaktywny).

Rola Analityka w projektowaniu CRUD

Dla analityka biznesowego i systemowego, CRUD to coś więcej niż techniczne polecenia. To podstawa definiowania uprawnień i logiki biznesowej:

  • Matryca Uprawnień (CRUD Matrix): Kto może tworzyć wpisy, a kto tylko je czytać? (Np. Klient widzi tylko swoje zamówienia, ale Administrator widzi wszystkie).
  • Soft Delete vs Hard Delete: Czy dane mają znikać z bazy na zawsze (Hard), czy tylko być oznaczane jako usunięte (Soft), aby zachować historię dla celów audytowych?
  • Walidacja: Jakie warunki muszą być spełnione, aby operacja Create była możliwa? (Np. nie można dodać użytkownika bez poprawnego adresu e-mail).

Czy wszystko jest CRUD-em?

Choć większość aplikacji opiera się na tym modelu, istnieją podejścia, które od niego odchodzą:

  • Event Sourcing: Zamiast nadpisywać dane (Update), zapisujemy każdą zmianę jako osobne zdarzenie. Dzięki temu możemy “przewinąć” historię systemu do dowolnego momentu.
  • Append-only: Systemy, w których można tylko dodawać i czytać dane (np. Logi systemowe lub Blockchain), gdzie Update i Delete są zabronione z definicji.

Podsumowanie

CRUD to alfabet programowania i analizy. Bez względu na to, czy projektujesz prosty arkusz w Excelu, czy skomplikowany system ERP, zawsze będziesz wracać do pytania: jak stworzyć, odczytać, zaktualizować i usunąć te dane? Opanowanie tego schematu pozwala na szybkie zrozumienie struktury niemal każdego systemu informatycznego.


Powiązane pojęcia:

SQL REST API Baza danych Interfejs użytkownika (UI)

Kliknij w pojęcie, aby przejść do jego definicji w słowniku