====== 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