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
modul:m290_guko:learningunits:lu05:theorie:a_ddl [2025/09/14 18:48] gkochmodul:m290_guko:learningunits:lu05:theorie:a_ddl [2025/09/18 11:51] (aktuell) gkoch
Zeile 1: Zeile 1:
-====== LU05 – SQL-DDL: Datenbanken & Tabellen anlegen und löschen ======+====== LU05a – SQL-DDL: Datenbanken & Tabellen anlegen und löschen ======
  
 ===== Lernziele ===== ===== Lernziele =====
Zeile 18: Zeile 18:
 **Datenbank erstellen:** **Datenbank erstellen:**
 <code sql> <code sql>
-CREATE DATABASE meine_datenbank;+CREATE DATABASE mydb_perfect;
 </code> </code>
 //Bisher haben wir das in WebStorm per Rechtsklick auf die Verbindung → **New → Schema** gemacht (siehe Screenshot).// //Bisher haben wir das in WebStorm per Rechtsklick auf die Verbindung → **New → Schema** gemacht (siehe Screenshot).//
Zeile 24: Zeile 24:
 </WRAP> </WRAP>
  
 +**Mit Datenbanken arbeiten (USE)**
 +In einem Datenbanksystem (z. B. MySQL) können mehrere **Datenbanken (Schemas)** nebeneinander existieren.  
 +Beispiel: Auf demselben MySQL-Server laufen z. B. die Datenbanken //digitech_ch// und //galaxus_ch// – sie liegen im gleichen System, verwalten ihre Daten aber **getrennt**.
  
 +Damit man weiss, **in welcher Datenbank man arbeitet**, muss man diese zuerst auswählen.  
 +Das geschieht mit dem SQL-Befehl **USE**:
  
 <WRAP box center 80% round>  <WRAP box center 80% round> 
 **Auf eine Datenbank umschalten (Standard-Datenbank für SQL-Befehle aktiv setzen):** **Auf eine Datenbank umschalten (Standard-Datenbank für SQL-Befehle aktiv setzen):**
 <code sql> <code sql>
-USE meine_datenbank;+USE mydb_perfect;
 </code> </code>
-//In WebStorm können Sie alternativ oben rechts im Query-Editor das **Schema-Dropdown** verwenden (siehe Screenshot).//+In WebStorm haben wir bisher die Datenbank über das **Drop-Down-Feld <Schema>** oben im Datenbank-Fenster ausgewählt  
 +Der Befehl //USE// macht dasselbe – nur in SQL-Code-Form.
 {{:modul:m290_guko:learningunits:lu05:theorie:screenshot_2025-09-14_at_14.28.46.png?direct&400|}} {{:modul:m290_guko:learningunits:lu05:theorie:screenshot_2025-09-14_at_14.28.46.png?direct&400|}}
 </WRAP> </WRAP>
 +
 +Ab diesem Moment werden alle folgenden SQL-Befehle (z. B. //CREATE TABLE//, //SELECT//, //DROP TABLE//) in dieser Datenbank ausgeführt.
 +
 +
 +
  
 <WRAP box center 80% round>  <WRAP box center 80% round> 
 **Datenbank löschen:** **Datenbank löschen:**
 <code sql> <code sql>
-DROP DATABASE meine_datenbank;+DROP DATABASE mydb_perfect;
 </code> </code>
 </WRAP> </WRAP>
  
-<WRAP box center 80% round important+<WRAP box center 80% round> 
 **Achtung:** //DROP DATABASE// löscht die **gesamte** Datenbank inkl. **aller** Tabellen und Daten. In produktiven Systemen nur nach Backup verwenden. **Achtung:** //DROP DATABASE// löscht die **gesamte** Datenbank inkl. **aller** Tabellen und Daten. In produktiven Systemen nur nach Backup verwenden.
 </WRAP> </WRAP>
Zeile 62: Zeile 73:
 ); );
 </code> </code>
 +//**Wichtig**: nach der letzten Spalte wird __kein Kommma__ mehr geschrieben. Die drei Punkte (...) hier im Beispiel stehen für weitere Spalten.//
 </WRAP> </WRAP>
 +
 +
  
 **Wichtige Namensregeln:** **Wichtige Namensregeln:**
Zeile 79: Zeile 93:
   name VARCHAR(50),   name VARCHAR(50),
   surname VARCHAR(50),   surname VARCHAR(50),
-  birthdate DATE,+  birthdate DATE
 ); );
 </code> </code>
 +Nach Ausführung dieses DDL-Befehls würde das Ergebnis ähnlich wie in der folgenden Abbildung dargestellt aussehen. 
 +{{:modul:m290:learningunits:lu05:theorie:m290_lu06b.abb2.png?600|}}
 </WRAP> </WRAP>
  
Zeile 100: Zeile 116:
  
 <WRAP box center 80% round important>  <WRAP box center 80% round important> 
-**Achtung:** Dieser Befehl kann **nicht rückgängig gemacht** werden!+**Achtung:** Dieser Befehl kann **nicht rückgängig gemacht** werden und dieser Befehl löscht auch alle Daten aus der Tabelle!
 </WRAP> </WRAP>
  
Zeile 107: Zeile 123:
 ^ SQL-Befehl        ^ Bedeutung                                      ^ ^ SQL-Befehl        ^ Bedeutung                                      ^
 | CREATE DATABASE   | Neue Datenbank erstellen                       | | CREATE DATABASE   | Neue Datenbank erstellen                       |
 +| USE DATABASE   | Datenbank "aktiv" schalten|
 | DROP DATABASE      | Datenbank löschen                             | | DROP DATABASE      | Datenbank löschen                             |
 | CREATE TABLE      | Neue Tabelle in der aktiven Datenbank erstellen| | CREATE TABLE      | Neue Tabelle in der aktiven Datenbank erstellen|
 | DROP TABLE        | Tabelle aus der aktiven Datenbank löschen      | | DROP TABLE        | Tabelle aus der aktiven Datenbank löschen      |
  
- 
-[[https://www.w3schools.com/sql/sql_create_db.asp|W3Schools: CREATE DATABASE]]   
-[[https://www.w3schools.com/sql/sql_create_table.asp|W3Schools: CREATE TABLE]]   
-[[https://www.w3schools.com/sql/sql_drop_table.asp|W3Schools: DROP TABLE]] 
  
 ---- ----
 [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] [[https://creativecommons.org/licenses/by-nc-sa/4.0/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]]
  
  • modul/m290_guko/learningunits/lu05/theorie/a_ddl.1757868514.txt.gz
  • Zuletzt geändert: 2025/09/14 18:48
  • von gkoch