DROP DATABASE IF EXISTS Atg2012;
CREATE DATABASE Atg2012;
USE Atg2012;
SET FOREIGN_KEY_CHECKS=0;
CREATE TABLE tbl_Verein
(
pk_Verein VARCHAR (50),
PRIMARY KEY(pk_Verein)
)
ENGINE=INNODB;
CREATE TABLE tbl_Geschlecht
(
pk_Geschlecht CHAR (1),
PRIMARY KEY(pk_Geschlecht)
)
ENGINE=INNODB;
CREATE TABLE tbl_Altersklasse
(
pk_Altersklasse VARCHAR(5),
PRIMARY KEY(pk_Altersklasse)
)
ENGINE=INNODB;
CREATE TABLE tbl_Lauf
(
pk_Lauf VARCHAR (30),
PRIMARY KEY(pk_Lauf)
)
ENGINE=INNODB;
CREATE TABLE tbl_Sponsor
(
pk_Sponsor VARCHAR (20),
PRIMARY KEY(pk_Sponsor)
)
ENGINE=INNODB;
CREATE TABLE tbl_Teilnahmesponsor
(
pk_TeilnahmesponsorID INT AUTO_INCREMENT,
fk_Sponsor VARCHAR(20),
fk_Startnummer INT,
PRIMARY KEY(pk_TeilnahmesponsorID),
FOREIGN KEY(fk_Sponsor)
REFERENCES tbl_Sponsor(pk_Sponsor)
ON DELETE NO ACTION
ON UPDATE CASCADE
)
ENGINE=INNODB;
Create Table tbl_Sportart
(
pk_Sportart varchar(40),
Primary Key(pk_Sportart)
)
Engine=InnoDB;
CREATE TABLE tbl_Teilnehmer
(
pk_TeilnehmerID INT AUTO_INCREMENT Primary Key,
fk_Geschlecht CHAR (1),
Name VARCHAR (25) NOT NULL,
Vorname VARCHAR (25) NOT NULL,
Geburtsdatum DATE NOT NULL,
Zeit TIME,
Platzierung_AK INT,
PLatzierung INT,
FOREIGN KEY(fk_Geschlecht)
REFERENCES tbl_Geschlecht(pk_Geschlecht)
ON DELETE NO ACTION
ON UPDATE CASCADE
)
ENGINE=INNODB;
CREATE TABLE tbl_Teilnahme
(
Startnummer INT,
fk_TeilnehmerID INT,
fk_Sponsor INT,
fk_Altersklasse VARCHAR (5) NOT NULL,
fk_Lauf VARCHAR (20) NOT NULL,
fk_Verein VARCHAR(50),
fk_Sportart VARCHAR(40),
PRIMARY KEY(Startnummer,fk_Lauf),
FOREIGN KEY(fk_Sponsor)
REFERENCES tbl_teilnahmesponsor(pk_TeilnahmesponsorID)
ON DELETE NO ACTION
ON UPDATE CASCADE,
FOREIGN KEY(fk_Altersklasse)
REFERENCES tbl_Altersklasse(pk_Altersklasse)
ON DELETE NO ACTION
ON UPDATE CASCADE,
FOREIGN KEY(fk_Lauf)
REFERENCES tbl_Lauf(pk_Lauf)
ON DELETE NO ACTION
ON UPDATE CASCADE,
FOREIGN KEY(fk_Verein)
REFERENCES tbl_Verein(pk_Verein)
ON DELETE NO ACTION
ON UPDATE CASCADE,
FOREIGN KEY(fk_Sportart)
REFERENCES tbl_Sportart(pk_Sportart)
ON DELETE NO Action
ON UPDATE CASCADE,
FOREIGN KEY(fk_TeilnehmerID)
REFERENCES tbl_Teilnehmer(pk_TeilnehmerID)
ON DELETE NO Action
ON UPDATE CASCADE
)
ENGINE=INNODB;
INSERT INTO tbl_Sponsor (pk_Sponsor)
VALUES
('Adidas'),
('Nike'),
('bla');
INSERT INTO tbl_Sportart (pk_Sportart)
VALUES
('Laufen'),
('Schwimmen'),
('Springen');
INSERT INTO tbl_Altersklasse (pk_Altersklasse)
VALUES
('m35'),
('m35'),
('w35');
INSERT INTO tbl_Geschlecht (pk_Geschlecht)
VALUES
('m'),
('w');
INSERT INTO tbl_Lauf (pk_Lauf)
VALUES
('atg2011'),
('atg2012'),
('atg2013');
INSERT INTO tbl_Verein (pk_Verein)
VALUES
('Mausklub'),
('Katzenklub');
LOAD DATA LOCAL INFILE 'E:/Teilnehmer.txt' INTO TABLE tbl_Teilnehmer FIELDS TERMINATED by ';';
LOAD DATA LOCAL INFILE 'E:/Teilnahme.txt' INTO TABLE tbl_Teilnahme FIELDS TERMINATED by ';';