2022-04-22 07:56:15 +00:00
|
|
|
USE project;
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS Produkt
|
|
|
|
(
|
|
|
|
ProduktID int AUTO_INCREMENT,
|
2022-04-27 08:49:31 +00:00
|
|
|
Produktname VARCHAR(100),
|
2022-04-22 07:56:15 +00:00
|
|
|
vegetarisch tinyint(1),
|
|
|
|
vegan tinyint(1),
|
|
|
|
primary key (ProduktID)
|
|
|
|
);
|
|
|
|
|
2022-05-05 09:35:01 +00:00
|
|
|
CREATE TABLE IF NOT EXISTS Naehrwerte
|
2022-04-22 07:56:15 +00:00
|
|
|
(
|
|
|
|
ProduktID int,
|
2022-05-05 09:35:01 +00:00
|
|
|
Menge int,
|
|
|
|
Einheit varchar(100),
|
|
|
|
Eiweiss double,
|
|
|
|
Kohlenhydrate double,
|
|
|
|
Fett double,
|
|
|
|
Brennwert double,
|
2022-04-22 07:56:15 +00:00
|
|
|
foreign key (ProduktID) references Produkt (ProduktID),
|
2022-05-05 09:35:01 +00:00
|
|
|
primary key (ProduktID, Menge, Einheit)
|
2022-04-22 07:56:15 +00:00
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS Allergen
|
|
|
|
(
|
|
|
|
AllergenID int AUTO_INCREMENT,
|
2022-04-27 08:49:31 +00:00
|
|
|
Allergenbezeichnung varchar(100),
|
2022-04-22 07:56:15 +00:00
|
|
|
primary key (AllergenID)
|
|
|
|
);
|
|
|
|
|
2022-04-27 09:23:56 +00:00
|
|
|
CREATE TABLE IF NOT EXISTS Zusatzstoffklase
|
|
|
|
(
|
|
|
|
Anwendungsgrund varchar(5),
|
|
|
|
Anwendungsgrundbezeichnung varchar(100),
|
|
|
|
primary key (Anwendungsgrund)
|
|
|
|
);
|
|
|
|
|
2022-04-22 07:56:15 +00:00
|
|
|
CREATE TABLE IF NOT EXISTS Zusatzstoff
|
|
|
|
(
|
2022-04-27 08:49:31 +00:00
|
|
|
E_Nummer varchar(5),
|
|
|
|
Zusatzstoffbezeichnung varchar(100),
|
2022-04-22 07:56:15 +00:00
|
|
|
primary key (E_Nummer)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS Menge
|
|
|
|
(
|
|
|
|
MengenID int AUTO_INCREMENT,
|
|
|
|
ProduktID int,
|
2022-04-27 08:49:31 +00:00
|
|
|
Portionsgroesse varchar(100),
|
2022-04-22 07:56:15 +00:00
|
|
|
Menge int,
|
2022-04-27 08:49:31 +00:00
|
|
|
Einheit varchar(100),
|
2022-04-22 07:56:15 +00:00
|
|
|
primary key (MengenID),
|
|
|
|
foreign key (ProduktID) references Produkt (ProduktID)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS Person
|
|
|
|
(
|
|
|
|
PersonID int AUTO_INCREMENT,
|
2022-04-27 08:49:31 +00:00
|
|
|
Personenname varchar(100),
|
|
|
|
Personenvorname varchar(100),
|
2022-04-22 07:56:15 +00:00
|
|
|
Naehrwertziel int,
|
2022-04-27 08:49:31 +00:00
|
|
|
Ernaerungsstil varchar(100),
|
2022-04-22 07:56:15 +00:00
|
|
|
primary key (PersonID)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS Menu
|
|
|
|
(
|
|
|
|
MenuID int AUTO_INCREMENT,
|
2022-04-27 08:49:31 +00:00
|
|
|
Menuname varchar(100),
|
2022-04-22 07:56:15 +00:00
|
|
|
primary key (MenuID)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS Menucontent
|
|
|
|
(
|
|
|
|
MenuID int,
|
|
|
|
ProduktID int,
|
|
|
|
foreign key (MenuID) references Menu (MenuID),
|
|
|
|
foreign key (ProduktID) references Produkt (ProduktID),
|
|
|
|
primary key (MenuID, ProduktID)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS Allergie
|
|
|
|
(
|
|
|
|
PersonID int,
|
|
|
|
AllergenID int,
|
|
|
|
foreign key (PersonID) references Person (PersonID),
|
|
|
|
foreign key (AllergenID) references Allergen (AllergenID),
|
|
|
|
primary key (PersonID, AllergenID)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS enthaeltZusatzstoff
|
|
|
|
(
|
|
|
|
ProduktID int,
|
2022-04-27 08:49:31 +00:00
|
|
|
E_Nummer varchar(5),
|
2022-04-27 09:23:56 +00:00
|
|
|
Anwendungsgrund varchar(5),
|
2022-04-22 07:56:15 +00:00
|
|
|
foreign key (ProduktID) references Produkt (ProduktID),
|
|
|
|
foreign key (E_Nummer) references Zusatzstoff (E_Nummer),
|
2022-04-27 09:23:56 +00:00
|
|
|
foreign key (Anwendungsgrund) references Zusatzstoffklase(Anwendungsgrund),
|
2022-04-22 07:56:15 +00:00
|
|
|
primary key (ProduktID, E_Nummer, Anwendungsgrund)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS Zusatzstoffunvertraeglichkeit
|
|
|
|
(
|
|
|
|
PersonID int,
|
2022-04-27 08:49:31 +00:00
|
|
|
E_Nummer varchar(5),
|
2022-04-22 07:56:15 +00:00
|
|
|
foreign key (PersonID) references Person (PersonID),
|
|
|
|
foreign key (E_Nummer) references Zusatzstoff (E_Nummer),
|
|
|
|
primary key (PersonID, E_Nummer)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS enthaeltAllergen
|
|
|
|
(
|
|
|
|
AllergenID int,
|
|
|
|
ProduktID int,
|
|
|
|
spuren_von tinyint(1),
|
|
|
|
foreign key (AllergenID) references Allergen (AllergenID),
|
|
|
|
foreign key (ProduktID) references Produkt (ProduktID),
|
|
|
|
primary key (AllergenID, ProduktID)
|
|
|
|
);
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS konsumiert
|
|
|
|
(
|
|
|
|
TransaktionsID int AUTO_INCREMENT,
|
|
|
|
PersonID int,
|
|
|
|
MenuID int,
|
|
|
|
Datum datetime,
|
|
|
|
foreign key (PersonID) references Person (PersonID),
|
|
|
|
foreign key (MenuID) references Menu (MenuID),
|
|
|
|
primary key (TransaktionsID)
|
|
|
|
)
|