====== LU06a - CRUD: Die Basics der Datenverwaltung ======
===== Lernziele =====
* Ich kann die vier CRUD-Operationen benennen und je ein Beispiel aus dem Alltag nennen.
* Ich kann jeder CRUD-Operation den passenden SQL-Befehl zuordnen.
===== Was ist CRUD? =====
**CRUD** ist ein Akronym für **Create, Read, Update, Delete**. Diese vier Operationen sind die Grundbausteine für den Umgang mit Daten – egal ob in einer Datenbank, einer App oder einem Webservice.
Stellen Sie sich CRUD wie einen Werkzeugkasten vor, mit dem Sie immer wieder dieselben Tätigkeiten ausführen:
* **Create** – etwas Neues **hinzufügen**
* **Read** – vorhandene Daten **abrufen**
* **Update** – bestehende Daten **ändern**
* **Delete** – Daten **löschen**
{{:de:modul:m290_guko:learningunits:lu07:theorie:crud.png?direct&800|CRUD am Beispiel eines Social-Media-Feeds}}
//Beispiel: CRUD im Social-Media-Feed – User coffee_nature sieht seine Beiträge im Feed (Read), erstellt einen neuen Post (Create), löscht einen bestehenden Beitrag (Delete) und bearbeitet einen Titel (Update).//
===== CRUD in der Praxis =====
CRUD begegnet Ihnen nicht nur in der Datenbank, sondern überall in der Informatik. Beispiel: ein Social-Media-Post.
* **Create** → Sie schreiben einen neuen Post → er wird in der Datenbank gespeichert.
* **Read** → Andere Nutzer:innen sehen Ihren Post → die App liest die Daten aus der Datenbank.
* **Update** → Sie ändern den Text oder fügen ein Bild hinzu → die Daten in der Datenbank werden angepasst.
* **Delete** → Sie löschen den Post → der Eintrag wird aus der Datenbank entfernt.
Als Mediamatiker:in begegnen Ihnen CRUD-Operationen vor allem in zwei Situationen: wenn Sie selbst ein SQL-Skript schreiben – oder unsichtbar im Hintergrund, wenn Sie eine Website benutzen.
==== 1. Im SQL-Skript ====
Ein SQL-Skript ist einfach eine Textdatei voller SQL-Befehle (Dateiendung //.sql//). Damit können Sie automatisiert eine Datenbank verändern, statt jeden Befehl einzeln einzutippen.
Typische Fälle:
* Daten auf ein neues Hosting umziehen (z.B. eine WordPress-Migration)
* Produktlisten in einen Webshop importieren
* alte Daten aufräumen, neue nachtragen
Beispiel: Statt 100 Produkte von Hand einzutippen, lässt man ein Skript alle Daten in wenigen Sekunden einfügen.
==== 2. Im Hintergrund einer Website ====
Wenn Sie auf einer Website einen Button klicken – "Post erstellen", "In den Warenkorb" – passiert im Hintergrund etwas Ähnliches. Die Website schickt eine Anfrage ans Backend, und das Backend führt dafür einen SQL-Befehl aus: INSERT, SELECT, UPDATE oder DELETE.
Praktisch jeder Klick auf einer Website kann im Hintergrund eine CRUD-Operation auslösen.
===== CRUD und SQL =====
In dieser Lerneinheit lernen Sie die sogenannte **DML** (Data Manipulation Language) kennen. Mit DML-Befehlen setzen Sie CRUD direkt in SQL um:
^ CRUD ^ SQL-Befehl (typisch) ^ Sprachfamilie ^
| Create | ''INSERT INTO ... VALUES (...);'' | DML |
| Read | ''SELECT ... FROM ... WHERE ...;'' | DQL |
| Update | ''UPDATE ... SET ... WHERE ...;'' | DML |
| Delete | ''DELETE FROM ... WHERE ...;'' | DML |
Streng genommen gehört SELECT zur **Data Query Language (DQL)**, nicht zur DML. Im Alltag spricht man bei CRUD trotzdem vereinfachend von "den DML-Befehlen" und meint SELECT mit. Sie kennen SELECT bereits aus LU02 – neu sind heute INSERT, UPDATE und DELETE.
----
{{tag>M290-LU06}}
[[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Guido Koch