CREATE DATABASE IF NOT EXISTS `fast_delivery5` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; USE `fast_delivery5`; -- Table structure for table `comuni` CREATE TABLE `comuni` ( `codice` varchar(6) NOT NULL, `nome` varchar(40) NOT NULL, `provincia` varchar(2) NOT NULL, `regione` varchar(20) NOT NULL, `ripartizione` set('Nord-Est','Nord-Ovest','Sud','Centro','Isole') NOT NULL, PRIMARY KEY (codice) ) ; -- Table structure for table `clienti` CREATE TABLE `clienti` ( `codice` int(11) NOT NULL, `nome` varchar(128) DEFAULT NULL, `cognome` varchar(128) DEFAULT NULL, `ragione_sociale` varchar(128) DEFAULT NULL, `indirizzo` varchar(128) NOT NULL, `cap` varchar(5) NOT NULL, `cod_comune` varchar(6) NOT NULL, `mail` varchar(40) NOT NULL, `password` varchar(16) NOT NULL, PRIMARY KEY (codice), FOREIGN KEY (cod_comune) REFERENCES comuni(codice) ) ; -- Table structure for table `sedi` CREATE TABLE `sedi` ( `codice` int(11) NOT NULL, `nome` varchar(64) NOT NULL, `indirizzo` varchar(128) NOT NULL, `tipo` enum('SO','CSR') NOT NULL, `cod_comune` varchar(6) NOT NULL, PRIMARY KEY (codice), FOREIGN KEY (cod_comune) REFERENCES comuni(codice) ); -- Table structure for table `spedizioni` CREATE TABLE `spedizioni` ( `codice` int(11) NOT NULL, `peso` int(4) NOT NULL, `data_invio` date NOT NULL, `data_consegna` date DEFAULT NULL, `stato` enum('richiesta','presa in carico','in transito','in consegna','mancata consegna','consegnato') NOT NULL, `cod_mittente` int(11) NOT NULL, `cod_destinatario` int(11) NOT NULL, PRIMARY KEY (codice), FOREIGN KEY (cod_mittente) REFERENCES clienti(codice), FOREIGN KEY (cod_destinatario) REFERENCES clienti(codice) ) ; -- Table structure for table `transiti` CREATE TABLE `transiti` ( `cod_spedizione` int(11) NOT NULL, `cod_sede` int(11) NOT NULL, `data_orario` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (cod_spedizione) REFERENCES spedizioni(codice), FOREIGN KEY (cod_sede) REFERENCES sedi(codice) ) ;