mindsquare.de durchsuchen

CRUD

Sie brauchen einen CRUD Berater und/oder möchten, dass wir Ihnen unser Angebot in diesem Umfeld vorstellen?

Ingo Biermann
27. September 2019

Der Begriff CRUD kommt aus der Informatik und steht für Create, Read, Update und Delete. Dies sind die grundlegenden Aktionen, die in einer Datenbank durchgeführt werden können. Alternativ werden für diese Operationen teilweise auch die Akronyme RUDI oder CDUR verwendet.

CRUD ist ein Begriff aus dem Datenmanagement. Genauer ausgedrückt handelt es sich um eine Abkürzung, welche die vier wichtigsten Operationen in persistenten (auf die dauerhafte Speicherung ausgelegten) Datenbanken zusammenfasst:

  • Create: Anweisung, um einen neuen Datensatz zu erstellen
  • Read oder Retrieve: Liest Datensätze aus einer Datenbanktabelle basierend auf den Eingabeparametern
  • Update: Führt eine Aktualisierung bestehender Datenbankobjekte durch
  • Delete oder Destroy: Löscht eine definierte Zeile aus einer Datenbanktabelle

Mit diesen vier Funktionen lassen sich Daten in Systemen also anlegen und in jeder Form verwalten.

Popularität erlangte CRUD erstmals im Jahr 1983. In diesem Jahr veröffentlichte der britische IT-Berater und Autor James Martin sein Buch “Managing the Data-Base Environment” und prägte darin den Begriff.

SAP Entwicklung

E-Book: Die besten Blogbeiträge zu „SAP Entwicklung”

Erfahren Sie in unserem E-Book, was mit der SAP Entwicklung an Individualisierung alles möglich ist.

Einsatzzweck

Datenmanagement-Prozesse, die auf CRUD basieren, kommen sowohl bei der Nutzung von Anwendungen als auch bei der Verwaltung von Datenbanken zum Einsatz. Es existieren im Wesentlichen also zwei Zielgruppen:

  • Datenbank-Experten
  • Endanwender

Experten nutzen die CRUD-Operationen beispielsweise, um Probleme in Datenbanken zu überprüfen und zu beheben oder umfangreichere Bereinigungen durchzuführen. Bei einem Endanwender bedeutet CRUD hingegen beispielsweise, einen Account anzulegen, ihn zu nutzen, ihn zu verändern und bei Bedarf wieder zu löschen.

Des Weiteren kann CRUD als eine Art grundlegende Checkliste für Programmierer betrachtet werden. Entsprechend sollte ein Anwendungsmodell in der Lage sein, alle Aktionen mit den vier Operationen auszuführen, um als vollständig bezeichnet werden zu können. Lässt sich eine Aktion nicht mit einer der Operationen beschreiben, sollte hingegen ein eigenes Modell dafür geschaffen werden.

Sprachumgebungen

CRUD-Operationen werden in verschiedenen Sprachumgebungen und Plattformen eingesetzt. Zu nennen sind unter anderem Java, JavaScript, PHP, .NET, Perl und Python. Die Ausführung wird über sprachabhängige Befehle angestoßen. In SQL kommen beispielsweise die folgenden Anweisungen zur Anwendung:

  • INSERT für das Anlegen von Datensätzen (create)
  • SELECT für das Lesen von Datensätzen (read)
  • UPDATE für das Aktualisieren von Datensätzen (update)
  • DELETE für das Löschen von Datensätzen (delete)

Bei RESTful HTTP, das sehr häufig für die Umsetzung von Webservices verwendet wird, heißen die vier Befehle hingegen POST (anlegen), GET (lesen), PUT (anlegen oder aktualisieren) und DELETE (löschen).

Unser E-Book zum Thema SAP Entwicklung

E-Book: SAP Entwicklung

Wir erklären Ihnen im E-Book die 3 wichtigsten Frameworks und zeigen Ihnen weitere Erfolgsbooster, die wir selbst einsetzen.

Frameworks

Werden die Objekte einer Datenbank mithilfe einer grafischen Oberfläche dargestellt und sind sie mithilfe der CRUD-Operationen veränderbar, so ist die Rede von einem sogenannten CRUD-Framework bzw. CRUD-Grid. Die grafischen Oberflächen basieren häufig auf HTML.

Charakteristisch für ein CRUD-Framework ist außerdem, dass mehrere Schritte notwendig sind, um eine CRUD-Operation abzuschließen. So wird ein Datensatz beispielsweise nicht durch die reine Eingabe angelegt. Vielmehr ist ein weiterer Transaktionsschritt wie das Betätigen eines Buttons (z. B. “Fortsetzen” oder “Speichern”) erforderlich, um die Aktion zu vollenden.

Die einzelnen Operationen können mit einem deutlichen Zeitversatz ausgeführt werden. Der Datensatz muss innerhalb dieser Zeitspannen nicht für andere Anwender gesperrt werden. Hohe Relevanz hat dieser Ansatz insbesondere für Mehrbenutzersysteme. Hier ist es wichtig, dass mehrere User gleichzeitig dieselben Daten auslesen können.

Aufbau der CRUD-Frameworks

Im Regelfall lassen sich die Frameworks um mehrere Module erweitern. Auch für die Umsetzung der Datenbank-Operationen sind Erweiterungen verfügbar. Diese werden auch Persistenz-Schichten genannt. Sie haben die Aufgabe, relationale, tabellarische Datensätze aufzuschlüsseln und sie objektorientiert zu präsentieren.

In Summe erleichtern CRUD-Frameworks somit den Zugriff auf die eingesetzte Datenbank deutlich. Dies gilt für Entwickler ebenso wie für die Nutzer von Anwendungen.

Anwendungsbeispiel

CRUD beinhaltet grundsätzlich alle relevanten Möglichkeiten der Manipulation von Datenbankobjekten. Ein Beispiel verdeutlicht dies: Gehen wir von einer simplen Applikation aus, die als Aufgabenliste dient. Anwendungen dieser Art finden sich beispielsweise häufig innerhalb von E-Mail-Clients.

Die Aufgabenliste muss im Grunde lediglich folgende Funktionen beherrschen:

  • Aufgaben hinzufügen (Create)
  • Aufgaben anzeigen (Read)
  • Aufgaben verändern (Update)
  • Aufgaben abhaken (ebenfalls Update)
  • Aufgaben löschen (Delete)
Ingo Biermann

Websession: CRUD

Sollten Sie Fragen zum Management digitaler Daten haben, dann vereinbaren Sie einen Termin zu einer kostenlosen Websession mit uns. Ich freue mich auf den Austausch mit Ihnen.

Nachteile und Grenzen

Oftmals sind die zuvor genannten Operationen nicht differenziert genug, um alle fachlichen Anforderungen an eine Anwendung korrekt abzubilden.

Bleiben wir bei vorangegangenem Beispiel, ergeben sich bei näherer Betrachtung mehrere Fragen. So ist etwa zu klären, ob ein Unterschied zwischen dem Entfernen bereits erledigter (abgehakter) und unerledigter Aufgaben besteht. Aus Anwendersicht kann es hier verschiedene Herangehensweisen geben. Offene Aufgaben könnten etwa gelöscht werden, weil sie hinfällig sind. Erledigte Einträge werden hingegen entfernt, um Ordnung in die Liste zu bringen. Sie können jedoch weiterhin von Interesse sein, um im Nachhinein beispielsweise eine Übersicht erledigter Aufgaben zu realisieren.

Ferner lässt sich in diesem Beispiel der Inhalt (Text) einer Aufgabe ändern. Ebenso wie das Abhaken ist dies in CRUD ein “Update”. Die beiden Aktionen unterscheiden sich jedoch gravierend voneinander.

Ebenfalls nachteilig ist, dass CRUD im Standard keine Historie liefert. Vielmehr führen die Aktionen “Update” und “Delete” zu einer irreversiblen Zerstörung von Daten oder ganzen Datensätzen. Finden (mehrere) Änderungen an einem Objekt statt, lassen sich die einzelnen Schritte der Bearbeitung somit nicht mehr nachvollziehen. Diese Problematik lässt sich nur durch zahlreiche zusätzliche Felder oder eine neue Tabelle lösen, in der alte Bearbeitungsstände abgelegt werden.

FAQ

Wofür steht CRUD?

CRUD ist ein Begriff aus dem Datenmanagement und ist die Abkürzung für die 4 wichtigsten Operationen in persistenten Datenbanken: Create, Read/Retrieve, Update, Delete/Destroy.

Wo werden die CRUD-Operationen eingesetzt?

Beispielanwendungen für Experten sind vor allem das Überprüfen und Beheben von Problemen in Datenbanken. Endanwender nutzen CRUD eher, um Accounts anzulegen, zu nutzen, zu verändern und bei Bedarf wieder zu löschen.

Was ist ein CRUD-Framework/Grid?

Von einem CRUD-Framework oder auch -Grid ist die Rede, wenn Objekte einer Datenbank mithilfe einer grafischen Oberfläche dargestellt werden und durch CRUD-Operationen veränderbar sind.

Verwandte Know-Hows

SAP BOPF ist die Kurzform für das Business Object Processing Framework der SAP und lässt sich als ein auf ABAP basierendes Framework beschreiben, das der Modellierung und Entwicklung von Geschäftsanwendungen dient. Mit […]
Das Composite Application Framework (CAF) bietet eine Entwicklungs- und Laufzeitumgebung für SOA-konforme SAP Composite Applications.
Das SAP Treasury and Risk Management (TRM) besteht aus einer Vielfalt diverser Lösungen. Die Hauptaufgabe des SAP TRM ist die Analyse sowie die damit verbundene Optimierung der Geschäftsprozesse im Finanzbereich.

Passende Angebote zum Thema

Ein wichtiger Schritt in Richtung des neuen SAP Frameworks for Digital Business ist die in-memory Datenbank SAP HANA. Für bestehende SAP Kunden ist vor allem wichtig: Wie schaffe ich das […]
In der SAP Welt findet aktuell eine schnelle Entwicklung statt. Dadurch entstehen nicht nur neue Projekte und Anforderungen für SAP Kunden - sondern als logische Konsequenz auch für SAP Entwickler.
Haben Sie ein gutes Gefühl was die Code-Qualität Ihrer Kundenentwicklungen im SAP angeht? Wenn bei Lesbarkeit, Dokumentation, Modularisierung oder systematischer Transport- & Releasestrategie noch Luft nach oben ist, dann sollten […]
Kontakt aufnehmen
Ansprechpartner
Laura Feldkamp mindsquare Kundenservice
Laura Feldkamp Kundenservice