PMG2426 1/DB Beleg/Tim
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>SQL</language>
-- ========================================
-- FORMEL 1 SAISON 2025 - DATENBANK
-- Erstellt von: [Dein Name]
-- Datum: 02.02.2025
-- ========================================
-- ========================================
-- TABELLEN ERSTELLEN
-- ========================================
-- Tabelle: TEAM
CREATE TABLE TEAM (
Team_ID INT PRIMARY KEY AUTO_INCREMENT,
Teamname VARCHAR(100) NOT NULL,
Hauptsitz VARCHAR(100),
Teamchef VARCHAR(100),
Motor VARCHAR(50)
);
-- Tabelle: FAHRER
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
);
-- Tabelle: STRECKE
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
);
-- Tabelle: RENNEN
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)
);
-- Tabelle: RENNERGEBNIS
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)
);
-- Tabelle: FAHRER_TEAM
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)
);
-- ========================================
-- BEISPIELDATEN EINFÜGEN
-- ========================================
-- TEAMS
INSERT INTO TEAM VALUES (1, 'Red Bull Racing', 'Milton Keynes', 'Christian Horner', 'Honda RBPT');
INSERT INTO TEAM VALUES (2, 'Ferrari', 'Maranello', 'Frederic Vasseur', 'Ferrari');
INSERT INTO TEAM VALUES (3, 'Mercedes', 'Brackley', 'Toto Wolff', 'Mercedes');
INSERT INTO TEAM VALUES (4, 'McLaren', 'Woking', 'Andrea Stella', 'Mercedes');
INSERT INTO TEAM VALUES (5, 'Aston Martin', 'Silverstone', 'Mike Krack', 'Mercedes');
INSERT INTO TEAM VALUES (6, 'Alpine', 'Enstone', 'Oliver Oakes', 'Renault');
INSERT INTO TEAM VALUES (7, 'Atlassian Williams Racing', 'Grove', 'James Vowles', 'Mercedes');
INSERT INTO TEAM VALUES (8, 'Visa Cash App Racing Bulls', 'Faenza', 'Laurent Mekies', 'Honda RBPT');
INSERT INTO TEAM VALUES (9, 'Haas F1 Team', 'Kannapolis', 'Ayao Komatsu', 'Ferrari');
INSERT INTO TEAM VALUES (10, 'Kick Sauber', 'Hinwil', 'Alessandro Alunni Bravi', 'Ferrari');
-- FAHRER (alle 20 Fahrer der Saison 2025)
INSERT INTO FAHRER VALUES (1, 'Max', 'Verstappen', 1, 'Niederlande', '1997-09-30');
INSERT INTO FAHRER VALUES (2, 'Liam', 'Lawson', 30, 'Neuseeland', '2002-02-11');
INSERT INTO FAHRER VALUES (3, 'Charles', 'Leclerc', 16, 'Monaco', '1997-10-16');
INSERT INTO FAHRER VALUES (4, 'Lewis', 'Hamilton', 44, 'Grossbritannien', '1985-01-07');
INSERT INTO FAHRER VALUES (5, 'George', 'Russell', 63, 'Grossbritannien', '1998-02-15');
INSERT INTO FAHRER VALUES (6, 'Andrea Kimi', 'Antonelli', 12, 'Italien', '2006-08-25');
INSERT INTO FAHRER VALUES (7, 'Lando', 'Norris', 4, 'Grossbritannien', '1999-11-13');
INSERT INTO FAHRER VALUES (8, 'Oscar', 'Piastri', 81, 'Australien', '2001-04-06');
INSERT INTO FAHRER VALUES (9, 'Fernando', 'Alonso', 14, 'Spanien', '1981-07-29');
INSERT INTO FAHRER VALUES (10, 'Lance', 'Stroll', 18, 'Kanada', '1998-10-29');
INSERT INTO FAHRER VALUES (11, 'Pierre', 'Gasly', 10, 'Frankreich', '1996-02-07');
INSERT INTO FAHRER VALUES (12, 'Jack', 'Doohan', 7, 'Australien', '2003-01-20');
INSERT INTO FAHRER VALUES (13, 'Alex', 'Albon', 23, 'Thailand', '1996-03-23');
INSERT INTO FAHRER VALUES (14, 'Carlos', 'Sainz', 55, 'Spanien', '1994-09-01');
INSERT INTO FAHRER VALUES (15, 'Yuki', 'Tsunoda', 22, 'Japan', '2000-05-11');
INSERT INTO FAHRER VALUES (16, 'Isack', 'Hadjar', 6, 'Frankreich', '2004-09-28');
INSERT INTO FAHRER VALUES (17, 'Esteban', 'Ocon', 31, 'Frankreich', '1996-09-17');
INSERT INTO FAHRER VALUES (18, 'Oliver', 'Bearman', 87, 'Grossbritannien', '2005-05-08');
INSERT INTO FAHRER VALUES (19, 'Nico', 'Huelkenberg', 27, 'Deutschland', '1987-08-19');
INSERT INTO FAHRER VALUES (20, 'Gabriel', 'Bortoleto', 5, 'Brasilien', '2004-10-14');
-- STRECKEN (alle 24 Rennen)
INSERT INTO STRECKE VALUES (1, 'Albert Park Circuit', 'Australien', 5.278, 58);
INSERT INTO STRECKE VALUES (2, 'Shanghai International Circuit', 'China', 5.451, 56);
INSERT INTO STRECKE VALUES (3, 'Suzuka Circuit', 'Japan', 5.807, 53);
INSERT INTO STRECKE VALUES (4, 'Bahrain International Circuit', 'Bahrain', 5.412, 57);
INSERT INTO STRECKE VALUES (5, 'Jeddah Corniche Circuit', 'Saudi-Arabien', 6.174, 50);
INSERT INTO STRECKE VALUES (6, 'Miami International Autodrome', 'USA', 5.412, 57);
INSERT INTO STRECKE VALUES (7, 'Autodromo Enzo e Dino Ferrari', 'Italien', 4.909, 63);
INSERT INTO STRECKE VALUES (8, 'Circuit de Monaco', 'Monaco', 3.337, 78);
INSERT INTO STRECKE VALUES (9, 'Circuit de Barcelona-Catalunya', 'Spanien', 4.675, 66);
INSERT INTO STRECKE VALUES (10, 'Circuit Gilles-Villeneuve', 'Kanada', 4.361, 70);
INSERT INTO STRECKE VALUES (11, 'Red Bull Ring', 'Oesterreich', 4.318, 71);
INSERT INTO STRECKE VALUES (12, 'Silverstone Circuit', 'Grossbritannien', 5.891, 52);
INSERT INTO STRECKE VALUES (13, 'Hungaroring', 'Ungarn', 4.381, 70);
INSERT INTO STRECKE VALUES (14, 'Spa-Francorchamps', 'Belgien', 7.004, 44);
INSERT INTO STRECKE VALUES (15, 'Circuit Park Zandvoort', 'Niederlande', 4.259, 72);
INSERT INTO STRECKE VALUES (16, 'Autodromo Nazionale di Monza', 'Italien', 5.793, 53);
INSERT INTO STRECKE VALUES (17, 'Baku City Circuit', 'Aserbaidschan', 6.003, 51);
INSERT INTO STRECKE VALUES (18, 'Marina Bay Street Circuit', 'Singapur', 4.940, 62);
INSERT INTO STRECKE VALUES (19, 'Circuit of the Americas', 'USA', 5.513, 56);
INSERT INTO STRECKE VALUES (20, 'Autodromo Hermanos Rodriguez', 'Mexiko', 4.304, 71);
INSERT INTO STRECKE VALUES (21, 'Autodromo Jose Carlos Pace', 'Brasilien', 4.309, 71);
INSERT INTO STRECKE VALUES (22, 'Las Vegas Street Circuit', 'USA', 6.201, 50);
INSERT INTO STRECKE VALUES (23, 'Lusail International Circuit', 'Katar', 5.419, 57);
INSERT INTO STRECKE VALUES (24, 'Yas Marina Circuit', 'Abu Dhabi', 5.281, 58);
-- RENNEN (Rennkalender 2025)
INSERT INTO RENNEN VALUES (1, 'Grosser Preis von Australien', '2025-03-16', 2025, 1);
INSERT INTO RENNEN VALUES (2, 'Grosser Preis von China', '2025-03-23', 2025, 2);
INSERT INTO RENNEN VALUES (3, 'Grosser Preis von Japan', '2025-04-06', 2025, 3);
INSERT INTO RENNEN VALUES (4, 'Grosser Preis von Bahrain', '2025-04-13', 2025, 4);
INSERT INTO RENNEN VALUES (5, 'Grosser Preis von Saudi-Arabien', '2025-04-20', 2025, 5);
INSERT INTO RENNEN VALUES (6, 'Grosser Preis von Miami', '2025-05-04', 2025, 6);
INSERT INTO RENNEN VALUES (7, 'Grosser Preis der Emilia-Romagna', '2025-05-18', 2025, 7);
INSERT INTO RENNEN VALUES (8, 'Grosser Preis von Monaco', '2025-05-25', 2025, 8);
INSERT INTO RENNEN VALUES (9, 'Grosser Preis von Spanien', '2025-06-01', 2025, 9);
INSERT INTO RENNEN VALUES (10, 'Grosser Preis von Kanada', '2025-06-15', 2025, 10);
INSERT INTO RENNEN VALUES (11, 'Grosser Preis von Oesterreich', '2025-06-29', 2025, 11);
INSERT INTO RENNEN VALUES (12, 'Grosser Preis von Grossbritannien', '2025-07-06', 2025, 12);
INSERT INTO RENNEN VALUES (13, 'Grosser Preis von Ungarn', '2025-07-20', 2025, 13);
INSERT INTO RENNEN VALUES (14, 'Grosser Preis von Belgien', '2025-07-27', 2025, 14);
INSERT INTO RENNEN VALUES (15, 'Grosser Preis der Niederlande', '2025-08-31', 2025, 15);
INSERT INTO RENNEN VALUES (16, 'Grosser Preis von Italien', '2025-09-07', 2025, 16);
INSERT INTO RENNEN VALUES (17, 'Grosser Preis von Aserbaidschan', '2025-09-21', 2025, 17);
INSERT INTO RENNEN VALUES (18, 'Grosser Preis von Singapur', '2025-10-05', 2025, 18);
INSERT INTO RENNEN VALUES (19, 'Grosser Preis der USA', '2025-10-19', 2025, 19);
INSERT INTO RENNEN VALUES (20, 'Grosser Preis von Mexiko', '2025-10-26', 2025, 20);
INSERT INTO RENNEN VALUES (21, 'Grosser Preis von Sao Paulo', '2025-11-09', 2025, 21);
INSERT INTO RENNEN VALUES (22, 'Grosser Preis von Las Vegas', '2025-11-22', 2025, 22);
INSERT INTO RENNEN VALUES (23, 'Grosser Preis von Katar', '2025-11-30', 2025, 23);
INSERT INTO RENNEN VALUES (24, 'Grosser Preis von Abu Dhabi', '2025-12-07', 2025, 24);
-- FAHRER-TEAM Zuordnungen
INSERT INTO FAHRER_TEAM VALUES (1, 1, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (2, 1, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (3, 2, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (4, 2, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (5, 3, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (6, 3, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (7, 4, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (8, 4, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (9, 5, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (10, 5, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (11, 6, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (12, 6, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (13, 7, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (14, 7, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (15, 8, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (16, 8, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (17, 9, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (18, 9, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (19, 10, '2025-01-01', NULL);
INSERT INTO FAHRER_TEAM VALUES (20, 10, '2025-01-01', NULL);
-- RENNERGEBNIS: GP Australien
INSERT INTO RENNERGEBNIS VALUES (1, 1, 7, 1, 25, '01:27:25', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (2, 1, 1, 2, 18, '01:27:30', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (3, 1, 5, 3, 15, '01:27:35', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (4, 1, 8, 4, 12, '01:27:42', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (5, 1, 3, 5, 10, '01:27:50', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (6, 1, 4, 6, 8, '01:28:05', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (7, 1, 14, 7, 6, '01:28:15', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (8, 1, 9, 8, 4, '01:28:25', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (9, 1, 19, 9, 2, '01:28:35', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (10, 1, 11, 10, 1, '01:28:45', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (11, 1, 15, 11, 0, '01:28:55', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (12, 1, 13, 12, 0, '01:29:05', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (13, 1, 2, 13, 0, '01:29:15', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (14, 1, 17, 14, 0, '01:29:25', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (15, 1, 10, 15, 0, '01:29:35', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (16, 1, 6, 16, 0, '01:29:45', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (17, 1, 12, 17, 0, '01:29:55', 'Beendet');
INSERT INTO RENNERGEBNIS VALUES (18, 1, 18, 18, 0, NULL, 'DNF');
INSERT INTO RENNERGEBNIS VALUES (19, 1, 16, 19, 0, NULL, 'DNF');
INSERT INTO RENNERGEBNIS VALUES (20, 1, 20, 20, 0, NULL, 'DNF');