Skip to content

Instantly share code, notes, and snippets.

@spralexx
Created June 2, 2016 13:30
Show Gist options
  • Save spralexx/e223004d31ee7a8a80ee60307faadf4b to your computer and use it in GitHub Desktop.
Save spralexx/e223004d31ee7a8a80ee60307faadf4b to your computer and use it in GitHub Desktop.
create Database Tierpark;
use Tierpark;
create table Gattung(
bezeichnung varchar(50) primary key
);
create table FutterSorten(
name varchar(40) not null primary key
);
create table Lieferant(
name varchar(40) not null primary key,
adresse varchar(40) not null
);
create table tiere(
geschlecht enum('männlich','weiblich') not null,
name varchar(40) not null,
geburtstag date not null,
tierId int primary key auto_increment,
typ varchar(50) not null
);
ALTER TABLE tiere ADD FOREIGN KEY (typ) REFERENCES Gattung(bezeichnung);
# foreign key `typ` references Gattung(`bezeichnung`)
#foreign Key `veranstaltung` references Vorlesung(`vorlesungID`),
create table GattungIsstFutter(
gattung varchar(50) not null,
futter varchar(40) not null,
Primary Key ( `gattung`,`futter`),
foreign key (gattung) references Gattung(bezeichnung),
foreign key (futter) references FutterSorten(name)
);
create table LieferantLiefertFutter(
lieferant varchar(40) not null,
futter varchar(40) not null,
Primary Key ( `lieferant`,`futter`),
foreign key (lieferant) references Lieferant(name),
foreign key (futter) references FutterSorten(name)
);
#Gattungen erstellen
insert Gattung values("Löwe");
insert Gattung values("Hai");
insert Gattung values("Delfin");
#Tiere Erstellen
insert tiere values("männlich","Henry V.","20.09.1994",0,"Löwe");
insert tiere values("weiblich","Mia","1994-01-02",0,"Delfin");
insert tiere values("männlich","Peter","1994-01-02",0,"Hai");
select * from tiere;
#Lieferanten
insert Lieferant values("Bogner","Irgendwo in München");
insert Lieferant values("Müller","Irgendwo anders in München");
insert Lieferant values("Eisbär","Hamburg");
#Futtersorten
insert FutterSorten values("Rindfleisch");
insert FutterSorten values("Pferdefleisch");
insert FutterSorten values("Hering");
insert FutterSorten values("Sprotte");
#Lieferanten Angebote
insert LieferantLiefertFutter values("Bogner","Rindfleisch");
insert LieferantLiefertFutter values("Müller","Rindfleisch");
insert LieferantLiefertFutter values("Müller","Pferdefleisch");
insert LieferantLiefertFutter values("Eisbär","Hering");
insert LieferantLiefertFutter values("Eisbär","Sprotte");
#Gattung isst Futter
insert GattungIsstFutter values("Löwe","Rindfleisch");
insert GattungIsstFutter values("Löwe","Pferdefleisch");
insert GattungIsstFutter values("Hai","Hering");
insert GattungIsstFutter values("Delfin","Hering");
insert GattungIsstFutter values("Hai","Sprotte");
insert GattungIsstFutter values("Delfin","Sprotte");
#Aufgabe 4
#a
Select * from LieferantLiefertFutter where LieferantLiefertFutter.futter ="Sprotte";
#b
Select Lieferant.name, Lieferant.adresse
from Lieferant
join LieferantLiefertFutter
on Lieferant.name = LieferantLiefertFutter.lieferant
join GattungIsstFutter
on GattungIsstFutter.futter = LieferantLiefertFutter.futter
join tiere
on GattungIsstFutter.gattung = tiere.typ
where tiere.name = "Henry V.";
#c
Select geschlecht from tiere where tiere.typ= "Delfin";
#d
Select * from LieferantLiefertFutter where LieferantLiefertFutter.lieferant="Eisbär";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment