PMG2426 1/DB Beleg/Tim

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>SQL</language>
<code id="6982295e40d2c"></code>
<run id="6982295e40dc6"></run>
CREATE TABLE TEAM (
    Team_ID INT PRIMARY KEY AUTO_INCREMENT,
    Teamname VARCHAR(100) NOT NULL,
    Hauptsitz VARCHAR(100),
    Teamchef VARCHAR(100),
    Motor VARCHAR(50)
);

CREATE TABLE FAHRER (
    Fahrer_ID INT PRIMARY KEY AUTO_INCREMENT,
    Vorname VARCHAR(50) NOT NULL,
    Nachname VARCHAR(50) NOT NULL,
    Startnummer INT UNIQUE,
    Nationalitaet VARCHAR(50),
    Geburtsdatum DATE
);

CREATE TABLE STRECKE (
    Strecken_ID INT PRIMARY KEY AUTO_INCREMENT,
    Streckenname VARCHAR(100) NOT NULL,
    Land VARCHAR(50),
    Streckenlaenge_km DECIMAL(5,3),
    Rundenanzahl INT
);

CREATE TABLE RENNEN (
    Rennen_ID INT PRIMARY KEY AUTO_INCREMENT,
    Rennenname VARCHAR(100) NOT NULL,
    Datum DATE,
    Saison INT,
    Strecken_ID INT,
    FOREIGN KEY (Strecken_ID) REFERENCES STRECKE(Strecken_ID)
);

CREATE TABLE RENNERGEBNIS (
    Ergebnis_ID INT PRIMARY KEY AUTO_INCREMENT,
    Rennen_ID INT,
    Fahrer_ID INT,
    Platzierung INT,
    Punkte INT,
    Rennzeit VARCHAR(10),
    Status VARCHAR(20),
    FOREIGN KEY (Rennen_ID) REFERENCES RENNEN(Rennen_ID),
    FOREIGN KEY (Fahrer_ID) REFERENCES FAHRER(Fahrer_ID)
);

CREATE TABLE FAHRER_TEAM (
    Fahrer_ID INT,
    Team_ID INT,
    Von_Datum DATE,
    Bis_Datum DATE,
    PRIMARY KEY (Fahrer_ID, Team_ID, Von_Datum),
    FOREIGN KEY (Fahrer_ID) REFERENCES FAHRER(Fahrer_ID),
    FOREIGN KEY (Team_ID) REFERENCES TEAM(Team_ID)
);