-- MySQL Script generated by MySQL Workbench -- Thu Apr 23 18:26:18 2020 -- Model: New Model Version: 1.0 -- MySQL Workbench Forward Engineering SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'; -- ----------------------------------------------------- -- Schema Studio_fotografico -- ----------------------------------------------------- -- ----------------------------------------------------- -- Schema Studio_fotografico -- ----------------------------------------------------- CREATE SCHEMA IF NOT EXISTS `Studio_fotografico` DEFAULT CHARACTER SET utf8 ; USE `Studio_fotografico` ; -- ----------------------------------------------------- -- Table `Studio_fotografico`.`Personale_segreteria` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `Studio_fotografico`.`Personale_segreteria` ( `ID` INT NOT NULL, `Nome` VARCHAR(45) NOT NULL, `Cognome` VARCHAR(45) NOT NULL, `Codice_fiscale` VARCHAR(16) NOT NULL, `Num_cellulare` INT NOT NULL, PRIMARY KEY (`ID`)) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `Studio_fotografico`.`Personale_fotografo` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `Studio_fotografico`.`Personale_fotografo` ( `ID` INT NOT NULL, `Nome` VARCHAR(45) NOT NULL, `Cognome` VARCHAR(45) NOT NULL, `Codice_fiscale` VARCHAR(16) NOT NULL, `Num_cellulare` VARCHAR(45) NOT NULL, `Dipendente` TINYINT NOT NULL, PRIMARY KEY (`ID`)) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `Studio_fotografico`.`Luogo` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `Studio_fotografico`.`Luogo` ( `ID` INT NOT NULL, `Nome` VARCHAR(45) NOT NULL, `Indirizzo` VARCHAR(45) NOT NULL, `Capienza` INT NOT NULL, PRIMARY KEY (`ID`)) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `Studio_fotografico`.`Cliente` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `Studio_fotografico`.`Cliente` ( `Codice_fiscale` VARCHAR(16) NOT NULL, `Nome` VARCHAR(45) NOT NULL, `Cognome` VARCHAR(45) NULL, `Partita_iva` VARCHAR(45) NULL, `Tipologia` ENUM('Privato', 'Societa') NOT NULL, `Num_cellulare` INT NOT NULL, PRIMARY KEY (`Codice_fiscale`)) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `Studio_fotografico`.`Attivita` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `Studio_fotografico`.`Attivita` ( `ID` INT NOT NULL, `Nome` VARCHAR(45) NOT NULL, `Data_inizio` DATE NOT NULL, `Durata` INT NOT NULL, `Costo_orario` INT NOT NULL, `Segretaria` INT NOT NULL, `Luogo` INT NOT NULL, PRIMARY KEY (`ID`), INDEX `fk_Attivita_Personale_segreteria_idx` (`Segretaria` ASC) VISIBLE, INDEX `fk_Attivita_Luogo1_idx` (`Luogo` ASC) VISIBLE, CONSTRAINT `fk_Attivita_Personale_segreteria` FOREIGN KEY (`Segretaria`) REFERENCES `Studio_fotografico`.`Personale_segreteria` (`ID`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_Attivita_Luogo1` FOREIGN KEY (`Luogo`) REFERENCES `Studio_fotografico`.`Luogo` (`ID`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `Studio_fotografico`.`Impegno_fotografo` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `Studio_fotografico`.`Impegno_fotografo` ( `Fotografo` INT NOT NULL, `Attivita` INT NOT NULL, PRIMARY KEY (`Fotografo`, `Attivita`), INDEX `fk_Impegno_fotografo_Attivita1_idx` (`Attivita` ASC) VISIBLE, CONSTRAINT `fk_Impegno_fotografo_Personale_fotografo1` FOREIGN KEY (`Fotografo`) REFERENCES `Studio_fotografico`.`Personale_fotografo` (`ID`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_Impegno_fotografo_Attivita1` FOREIGN KEY (`Attivita`) REFERENCES `Studio_fotografico`.`Attivita` (`ID`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; -- ----------------------------------------------------- -- Table `Studio_fotografico`.`Contratto` -- ----------------------------------------------------- CREATE TABLE IF NOT EXISTS `Studio_fotografico`.`Contratto` ( `Cliente` VARCHAR(16) NOT NULL, `Attivita` INT NOT NULL, `Data` DATE NOT NULL, PRIMARY KEY (`Cliente`, `Attivita`), INDEX `fk_Contratto_Attivita1_idx` (`Attivita` ASC) VISIBLE, CONSTRAINT `fk_Contratto_Cliente1` FOREIGN KEY (`Cliente`) REFERENCES `Studio_fotografico`.`Cliente` (`Codice_fiscale`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_Contratto_Attivita1` FOREIGN KEY (`Attivita`) REFERENCES `Studio_fotografico`.`Attivita` (`ID`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; SET SQL_MODE=@OLD_SQL_MODE; SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;