Zuletzt aktualisiert am 04.12.2025 5 Minuten Lesezeit

CRUD (Create, Read, Update, Delete)

CRUD steht fuer Create, Read, Update, Delete und beschreibt die vier grundlegenden Operationen, die auf persistente Daten in Datenbanken und Anwendungen angewendet werden. Diese Operationen bilden das Fundament nahezu jeder datenbankbasierten Anwendung und sind ein zentrales Konzept in der Softwareentwicklung.

Ob du eine Benutzerverwaltung programmierst, einen Online-Shop entwickelst oder eine Lagerverwaltung erstellst - CRUD-Operationen begegnen dir ueberall. Das Verstaendnis dieser vier Grundoperationen ist essentiell fuer jeden, der mit Datenbanken und APIs arbeitet.

Die vier CRUD-Operationen im Detail

Jede der vier CRUD-Operationen erfuellt eine spezifische Aufgabe im Lebenszyklus von Daten. Zusammen decken sie alle grundlegenden Interaktionen ab, die eine Anwendung mit einer Datenbank durchfuehren kann.

Create (Erstellen)

Die Create-Operation fuegt neue Datensaetze zur Datenbank hinzu. In SQL verwendest du dafuer das INSERT-Statement. Wenn ein neuer Benutzer sich registriert oder ein neues Produkt zum Katalog hinzugefuegt wird, findet eine Create-Operation statt.

-- Neuen Benutzer in die Datenbank einfuegen
INSERT INTO benutzer (name, email, passwort)
VALUES ('Max Mustermann', 'max@beispiel.de', 'hash123');

Read (Lesen)

Die Read-Operation ruft vorhandene Daten aus der Datenbank ab. In SQL nutzt du das SELECT-Statement. Diese Operation veraendert keine Daten, sondern liefert lediglich Informationen zurueck. Das Anzeigen einer Benutzerliste oder das Laden von Produktdetails sind typische Read-Operationen.

-- Alle aktiven Benutzer abrufen
SELECT name, email FROM benutzer WHERE aktiv = true;

-- Einzelnen Benutzer nach ID suchen
SELECT * FROM benutzer WHERE id = 42;

Update (Aktualisieren)

Die Update-Operation aendert bestehende Datensaetze. In SQL verwendest du das UPDATE-Statement. Wenn ein Benutzer sein Passwort aendert oder die Adresse aktualisiert, handelt es sich um eine Update-Operation.

-- E-Mail-Adresse eines Benutzers aktualisieren
UPDATE benutzer 
SET email = 'neue-email@beispiel.de'
WHERE id = 42;

Delete (Loeschen)

Die Delete-Operation entfernt Datensaetze aus der Datenbank. In SQL nutzt du das DELETE-Statement. Das Loeschen eines Benutzerkontos oder das Entfernen eines Produkts aus dem Katalog sind Delete-Operationen.

-- Benutzer aus der Datenbank loeschen
DELETE FROM benutzer WHERE id = 42;

-- Alle inaktiven Benutzer loeschen
DELETE FROM benutzer WHERE aktiv = false;

Geschichte und Ursprung

Das Konzept der CRUD-Operationen existiert seit den Anfaengen relationaler Datenbanksysteme. Der Begriff wurde in den 1980er Jahren populaer, insbesondere durch James Martins Buch "Managing the Data-base Environment" von 1983. Martin erkannte, dass sich alle Datenbankinteraktionen auf diese vier grundlegenden Operationen zurueckfuehren lassen.

Die akademische Formalisierung erfolgte 1990 durch Haim Kilov in seinem Artikel "From Semantic to Object-Oriented Data Modeling". Seitdem hat sich CRUD als Standardterminologie in der Softwareentwicklung etabliert und wird heute weltweit verwendet.

CRUD und HTTP-Methoden in REST-APIs

Bei der Entwicklung von Web-APIs werden CRUD-Operationen auf HTTP-Methoden abgebildet. Diese Zuordnung folgt dem REST-Architekturstil und ist ein fundamentales Konzept moderner Webentwicklung.

CRUD-Operation HTTP-Methode Beschreibung Beispiel-Endpunkt
Create POST Neuen Datensatz erstellen POST /api/benutzer
Read GET Daten abrufen GET /api/benutzer/42
Update PUT / PATCH Datensatz aktualisieren PUT /api/benutzer/42
Delete DELETE Datensatz loeschen DELETE /api/benutzer/42

Der Unterschied zwischen PUT und PATCH liegt im Umfang der Aktualisierung: PUT ersetzt den gesamten Datensatz, waehrend PATCH nur einzelne Felder aendert. In der Praxis wird haeufig PUT fuer vollstaendige Updates und PATCH fuer partielle Updates verwendet.

CRUD in verschiedenen Datenbanksystemen

Die CRUD-Operationen werden in unterschiedlichen Datenbanksystemen mit verschiedener Syntax umgesetzt, folgen aber immer dem gleichen Grundprinzip.

Relationale Datenbanken (SQL)

In relationalen Datenbanken wie MySQL, PostgreSQL oder Microsoft SQL Server nutzt du SQL-Statements fuer CRUD-Operationen:

  • Create: INSERT INTO tabelle (...) VALUES (...)
  • Read: SELECT ... FROM tabelle WHERE ...
  • Update: UPDATE tabelle SET ... WHERE ...
  • Delete: DELETE FROM tabelle WHERE ...

NoSQL-Datenbanken (MongoDB)

In dokumentenbasierten Datenbanken wie MongoDB sehen die CRUD-Operationen anders aus, erfuellen aber dieselben Funktionen:

// Create - Dokument einfuegen
db.benutzer.insertOne({ name: "Max", email: "max@beispiel.de" });

// Read - Dokumente abfragen
db.benutzer.find({ aktiv: true });

// Update - Dokument aktualisieren
db.benutzer.updateOne({ _id: 42 }, { $set: { email: "neu@beispiel.de" } });

// Delete - Dokument loeschen
db.benutzer.deleteOne({ _id: 42 });

Praxisbeispiel: CRUD in einer Web-Anwendung

Ein typisches Beispiel fuer CRUD-Operationen ist eine Benutzerverwaltung. Hier siehst du, wie die vier Operationen in einer Webanwendung zusammenspielen:

// Einfache CRUD-Funktionen fuer Benutzerverwaltung

// CREATE - Neuen Benutzer registrieren
async function erstelleBenutzer(name, email, passwort) {
  const response = await fetch('/api/benutzer', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ name, email, passwort })
  });
  return response.json();
}

// READ - Benutzer abrufen
async function holeBenutzer(id) {
  const response = await fetch(`/api/benutzer/${id}`);
  return response.json();
}

// UPDATE - Benutzer aktualisieren
async function aktualisiereBenutzer(id, daten) {
  const response = await fetch(`/api/benutzer/${id}`, {
    method: 'PUT',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify(daten)
  });
  return response.json();
}

// DELETE - Benutzer loeschen
async function loescheBenutzer(id) {
  await fetch(`/api/benutzer/${id}`, { method: 'DELETE' });
}

Best Practices fuer CRUD-Operationen

Bei der Implementierung von CRUD-Operationen solltest du einige wichtige Grundsaetze beachten, um sichere und wartbare Anwendungen zu entwickeln:

  • Validierung: Pruefe Eingabedaten vor Create- und Update-Operationen
  • Fehlerbehandlung: Behandle Fehler wie "Datensatz nicht gefunden" angemessen
  • Autorisierung: Stelle sicher, dass Benutzer nur auf ihre eigenen Daten zugreifen koennen
  • Soft Delete: Erwaege statt echtem Loeschen ein "geloescht"-Flag zu setzen
  • Audit Trail: Protokolliere Aenderungen fuer Nachvollziehbarkeit
  • Transaktionen: Nutze Datenbank-Transaktionen bei zusammenhaengenden Operationen

CRUD in der IT-Praxis

CRUD-Operationen begegnen dir taeglich in der Softwareentwicklung. Content-Management-Systeme, E-Commerce-Plattformen, Verwaltungssoftware - sie alle basieren auf diesen vier grundlegenden Operationen. Wer als Fachinformatiker fuer Anwendungsentwicklung arbeitet, wird regelmaessig CRUD-basierte Anwendungen entwickeln und pflegen.

Auch Fachinformatiker fuer Systemintegration kommen mit CRUD in Beruehrung, etwa bei der Konfiguration von Verzeichnisdiensten, Monitoring-Systemen oder der Automatisierung von Administrationsprozessen.

Quellen und weiterfuehrende Links