Dies ist eine alte Version des Dokuments!
LU05 – SQL-DDL: Datenbanken & Tabellen anlegen und löschen
Lernziele
Sie lernen in dieser Lektion:
- wie Sie Datenbanken anlegen und löschen
- wie Sie darin Tabellen mit Spalten erstellen
- wie Sie Tabellen auch wieder löschen
Diese Befehle gehören zur Data Definition Language (DDL) von SQL.
Datenbanken erstellen und löschen
Mit einer Datenbank schaffen Sie einen „Ordner“, in dem Sie Tabellen anlegen können. Hinweis: In MySQL sind *Database* und *Schema* Synonyme. In WebStorm (Database-Plugin) lautet der Menüpunkt New → Schema, er erstellt damit eine MySQL-Datenbank.
Datenbank erstellen:
CREATE DATABASE meine_datenbank;
Bisher haben wir das in WebStorm per Rechtsklick auf die Verbindung → New → Schema gemacht (siehe Screenshot).
Auf eine Datenbank umschalten (Standard-Datenbank für SQL-Befehle aktiv setzen):
USE meine_datenbank;
In WebStorm können Sie alternativ oben rechts im Query-Editor das Schema-Dropdown verwenden (siehe Screenshot).
Datenbank löschen:
DROP DATABASE meine_datenbank;
Achtung: DROP DATABASE löscht die gesamte Datenbank inkl. aller Tabellen und Daten. In produktiven Systemen nur nach Backup verwenden.
Tabellen erstellen
Wie wird nun in eine Datenbank eine Tabelle angelegt? Dazu gibt es in SQL die Anweisung CREATE TABLE, die eine Tabelle mit den dazugehörigen Spalten und deren Datentypen erzeugt. Mit dem Befehl CREATE TABLE legen Sie eine Tabelle in der aktuell gewählten Datenbank an.
Allgemeine Syntax:
CREATE TABLE tabellenname ( spaltenname1 DATENTYP, spaltenname2 DATENTYP, ... );
Wichtige Namensregeln:
- Keine Leerzeichen, Umlaute oder Sonderzeichen
- Nur Kleinbuchstaben
- Tabellennamen müssen eindeutig sein
Beispiel: Tabelle Student
Wir wollen eine Tabelle student (Lernende:r) erstellen, die eine ID, den Vornamen, den Nachnamen und das Geburtsdatum speichert:
CREATE TABLE student ( stundent_id INT, name VARCHAR(50), surname VARCHAR(50), birthdate DATE, );
Erklärung:
- INT → ganze Zahl (1..50 etc)
- VARCHAR(50) → Zeichenkette variabler Länge (max. 50)
- DATE → Datum in YYYY-MM-DD
Tabellen löschen
Mit dem Befehl DROP TABLE löschen Sie eine komplette Tabelle (inklusive aller Daten):
DROP TABLE student;
Achtung: Dieser Befehl kann nicht rückgängig gemacht werden!
Merksatz
SQL-Befehl | Bedeutung |
---|---|
CREATE DATABASE | Neue Datenbank erstellen |
DROP DATABASE | Datenbank löschen |
CREATE TABLE | Neue Tabelle in der aktiven Datenbank erstellen |
DROP TABLE | Tabelle aus der aktiven Datenbank löschen |
W3Schools: CREATE DATABASE W3Schools: CREATE TABLE W3Schools: DROP TABLE