Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:modul:m290_guko:learningunits:lu06:theorie:a_crud [2026/09/20 22:49] gkochde:modul:m290_guko:learningunits:lu06:theorie:a_crud [2026/09/20 22:58] (aktuell) gkoch
Zeile 29: Zeile 29:
   * **Delete** → Sie löschen den Post → der Eintrag wird aus der Datenbank entfernt.   * **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:+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. In SQL-Skripten ==== +==== 1. Im SQL-Skript ==== 
-Ein SQL-Skript ist eine einfache Textdatei mit SQL-Befehlen (Dateiendung //.sql//). Damit lassen sich Datenbanken präzise, wiederholbar und nachvollziehbar verändern.+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: Typische Fälle:
  
-  * WordPress-Daten migrieren (z.B. beim Umzug auf ein neues Hosting+  * Daten auf ein neues Hosting umziehen (z.B. eine WordPress-Migration
-  * Daten importieren/exportieren, z.B. Produktlisten in einem Webshop +  * Produktlisten in einen Webshop importieren 
-  * Wartungsarbeiten: alte Daten löschen, neue hinzufügen+  * alte Daten aufräumen, neue nachtragen
  
-Beispiel: Statt 100 Produkte von Hand ins Backend einzutragenfügt ein Skript alle Daten in Sekunden korrekt ein – inklusive richtiger Datentypen.+Beispiel: Statt 100 Produkte von Hand einzutippenlässt man ein Skript alle Daten in wenigen Sekunden einfügen.
  
-==== 2. Über die Backend-Logik ==== +==== 2. Im Hintergrund einer Website ==== 
-Moderne Webapplikationen (WordPress, Webshops, Social Media) kommunizieren mit der Datenbank über REST-Calls und APIs. Wenn Sie im Frontend einen Button klicken ("Post erstellen", "Sneaker in den Warenkorb"), löst das im Hintergrund eine SQL-Operation wie INSERT, SELECT, UPDATE oder DELETE aus.+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.
  
-<WRAP center round info 80%> 
-**API** ("Application Programming Interface"): eine Schnittstelle, über die Programme miteinander kommunizieren. Eine REST-API verbindet z.B. eine Website mit einer Datenbank.\\ 
-**REST-Call:** ein Aufruf von einem Programm (z.B. einer Website oder App) an ein Backend, meist über HTTP-Befehle wie GET, POST, PUT oder DELETE. 
-</WRAP> 
  
  
 ===== CRUD und SQL ===== ===== 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: In dieser Lerneinheit lernen Sie die sogenannte **DML** (Data Manipulation Language) kennen. Mit DML-Befehlen setzen Sie CRUD direkt in SQL um:
 +<WRAP center round box 80%>
  
 ^ CRUD ^ SQL-Befehl (typisch) ^ Sprachfamilie ^ ^ CRUD ^ SQL-Befehl (typisch) ^ Sprachfamilie ^
Zeile 59: Zeile 58:
 | Update | ''UPDATE ... SET ... WHERE ...;'' | DML | | Update | ''UPDATE ... SET ... WHERE ...;'' | DML |
 | Delete | ''DELETE FROM ... WHERE ...;'' | DML | | Delete | ''DELETE FROM ... WHERE ...;'' | DML |
 +</WRAP>
  
 <WRAP center round info 80%> <WRAP center round info 80%>
Zeile 65: Zeile 65:
  
  
-===== Beispiele (Film-Datenbank) ===== 
-Diese Beispiele arbeiten noch auf //imdb_top_1000// – der Tabelle, die Sie bereits kennen. 
- 
-  * **Create**: einen Film hinzufügen 
-<WRAP center box 80% round><code sql> 
-INSERT INTO imdb_top_1000 (Series_Title, Released_Year, Genre, IMDB_Rating) 
-VALUES ('Dune', 2021, 'Action, Adventure, Sci-Fi', 8.0); 
-</code></WRAP> 
- 
-  * **Read**: Filme ab 2010 mit Top-Bewertung auslesen 
-<WRAP center box 80% round><code sql> 
-SELECT Series_Title, Released_Year, IMDB_Rating 
-FROM imdb_top_1000 
-WHERE Released_Year >= 2010 
-ORDER BY IMDB_Rating DESC; 
-</code></WRAP> 
- 
-  * **Update**: Genre aktualisieren 
-<WRAP center box 80% round><code sql> 
-UPDATE imdb_top_1000 
-SET Genre = 'Drama, War' 
-WHERE Series_Title = '1917' AND Released_Year = 2019; 
-</code></WRAP> 
- 
-  * **Delete**: Datensatz entfernen 
-<WRAP center box 80% round><code sql> 
-DELETE FROM imdb_top_1000 
-WHERE Series_Title = 'Dummy Movie' AND Released_Year = 1900; 
-</code></WRAP> 
- 
-<WRAP center round tip 80%> 
-**Warum üben wir das nicht direkt auf imdb_top_1000?** Diese Tabelle brauchen Sie noch in späteren Lerneinheiten zum Abfragen – wenn jede Person darin herumlöscht und ändert, sind die Daten am Ende durcheinander. Auf der nächsten Seite bauen Sie sich deshalb eine **eigene Tabelle**, an der Sie gefahrlos üben können. 
-</WRAP> 
  
 ---- ----
 {{tag>M290-LU06}} {{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 [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] Guido Koch
  • de/modul/m290_guko/learningunits/lu06/theorie/a_crud.1789937368.txt.gz
  • Zuletzt geändert: 2026/09/20 22:49
  • von gkoch