Lösung: Eishockeyverein

Crow's-Foot-Diagramm Eishockeyverein Klicken Sie aufs Bild, um es vergrössert anzusehen.

Fremdschlüssel

1:1 in SQL wirklich erzwingen: Der Fremdschlüssel allein reicht nicht aus – ohne zusätzliche Regel könnte derselbe Trainer zwei Teams zugewiesen werden. Dafür bräuchte trainer_id in der Tabelle team zusätzlich den Constraint UNIQUE.

Datentypen

Spalte Typ Begründung
spieler_id, block_id, team_id, trainer_id INT Ganzzahlige, automatisch vergebene IDs
rueckennummer INT Es wird zwar nicht damit gerechnet, aber Rückennummern sind reine Ziffern ohne führende Nullen – INT ist hier vertretbar
position, name (überall) VARCHAR Textlänge variabel
altersklasse VARCHAR(5) Kurze Codes wie „U18“, „U21“ passen knapp – bewusst kurz gehalten
bezeichnung VARCHAR(20) Kurzer Blockname wie „1. Block“

SQL: Tabellen erstellen

Fremdschlüssel-Spalten sind angelegt, aber noch ohne FOREIGN-KEY-Constraint – den setzen wir später im Modul.

CREATE TABLE trainer (
  trainer_id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50) NOT NULL
);
 
CREATE TABLE team (
  team_id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(20) NOT NULL,
  altersklasse VARCHAR(5),
  trainer_id INT UNIQUE
);
 
CREATE TABLE block (
  block_id INT AUTO_INCREMENT PRIMARY KEY,
  bezeichnung VARCHAR(20),
  team_id INT
);
 
CREATE TABLE spieler_in (
  spieler_id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  rueckennummer INT,
  POSITION VARCHAR(20),
  block_id INT
);