SET
SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET
time_zone = "+00:00";


CREATE TABLE `ingredienti`
( /*Zutaten*/
    `id`              int auto_increment NOT NULL PRIMARY KEY,
    `cognome`         varchar(200)  NOT NULL, /*Name*/
    `caloriePerCento` integer(5) NOT NULL, /*Kalorien pro Gramm*/
    `ilPeso`          integer(5) NULL, /*Gewicht*/
    `prezzo`          decimal(4, 2) NOT NULL, /*Preis*/
    `created`         timestamp     NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `folla`
( /*Menge*/
    `id`      int auto_increment NOT NULL PRIMARY KEY,
    `unita`   varchar(200) NOT NULL, /*Einheit*/
    `created` timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `elenco`
( /*Liste*/
    `id`             int auto_increment NOT NULL PRIMARY KEY,
    `creatore`       varchar(200) NOT NULL, /*Ersteller*/
    `coloreDiSfondo` integer(10) NOT NULL, /*Hintergrundfarbe*/
    `created`        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `utente`
( /*Benutzer*/
    `id`            int auto_increment NOT NULL PRIMARY KEY,
    `email`         varchar(200)       NOT NULL, /*Email*/
    `parolaDordine` varchar(255)       NOT NULL, /*Passwort*/
    `nomeUtente`    varchar(50) UNIQUE NOT NULL, /*Benutzernamen*/
    `gettone`       varchar(255), /*Token für Session*/
    `created`       timestamp          NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `elencoIngredienti`
( /*Liste_Zutaten*/
    `id`            int auto_increment NOT NULL PRIMARY KEY,
    `ingredientiID` int NOT NULL, /*ZutatenID*/
    `elencoID`      int NOT NULL, /*ListeID*/
    `follaID`       int NOT NULL, /*MengeID*/
    `created`       timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE `utenteElenco`
( /*Benutzer_Liste*/
    `id`       int auto_increment NOT NULL PRIMARY KEY,
    `elencoID` int NOT NULL, /*ListeID*/
    `utenteID` int NOT NULL, /*BenutzerID*/
    `created`  timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE `elencoIngredienti` /*Liste_Zutaten*/
    ADD CONSTRAINT `FK_ElencoIngredienti_Ingredienti` FOREIGN KEY (`ingredientiID`) REFERENCES `ingredienti`(`id`), /*Liste_Zutaten hat Foreignkey von Zutaten(id)*/
    ADD CONSTRAINT `FK_ElencoIngredienti_Elenco` FOREIGN KEY (`elencoID`) REFERENCES `elenco`(`id`), /*Liste_Zutaten hat Foreignkey von Liste(id)*/
    ADD CONSTRAINT `FK_ElencoIngredienti_Folla` FOREIGN KEY (`follaID`) REFERENCES `folla`(`id`); /*Liste_Zutaten hat Foreignkey von Menge(id)*/

ALTER TABLE `utenteElenco` /*Benutzer_Liste*/
    ADD CONSTRAINT `FK_UtenteElenco_Utente` FOREIGN KEY (`utenteId`) REFERENCES `utente`(`id`), /*Benutzer_Liste hat Foreignkey von Benutzer(id)*/
    ADD CONSTRAINT `FK_UtenteElenco_Elenco` FOREIGN KEY (`elencoId`) REFERENCES `elenco`(`id`); /*Benutzer_Liste hat Foreignkey von Liste(id)*/
