-- create CREATE TABLE dipendente ( dipendente_id INT NOT NULL PRIMARY KEY, nome_dipendente varchar(255) NOT NULL, conome_dipendente varchar(255) NOT NULL, anniDiServizio_dipendente INT, eta_dipendente INT ); CREATE INDEX dipendente ON dipendente (dipendente_id); CREATE TABLE pompiere ( pompiere_id INT NOT NULL PRIMARY KEY, nome_pompiere varchar(255) NOT NULL, conome_pompiere varchar(255) NOT NULL, anniDiServizio_pompiere INT, eta_pompiere INT ); CREATE INDEX pompiere ON pompiere (pompiere_id); CREATE TABLE chiamataUtente ( chiamata_id INT NOT NULL PRIMARY KEY, chiamata_descrizione varchar(255), chiamata_provenienza varchar(255) NOT NULL, chiamata_data date NOT NULL ); CREATE INDEX chiamataUtente_id ON chiamataUtente (chiamata_id); CREATE TABLE ricevitoreChiamate ( ricevitoreChiamate_id INT NOT NULL PRIMARY KEY, nome_ricevitoreChiamate varchar(255) NOT NULL, conome_ricevitoreChiamate varchar(255) NOT NULL, chiamata_id INT, CONSTRAINT chiamataUtente FOREIGN KEY (chiamata_id) REFERENCES chiamataUtente(chiamata_id) ); CREATE INDEX ricevitoreChiamate_id ON ricevitoreChiamate (ricevitoreChiamate_id); CREATE TABLE caserma ( caserma_id INT NOT NULL PRIMARY KEY, nome_caserma varchar(255) NOT NULL, distretto varchar(255), anni_caserma INT, dipendente_id INT, CONSTRAINT dipendente_id FOREIGN KEY (dipendente_id) REFERENCES dipendente(dipendente_id), pompiere_id INT, CONSTRAINT pompiere_id FOREIGN KEY (pompiere_id) REFERENCES pompiere(pompiere_id), ricevitoreChiamate_id INT, CONSTRAINT ricevitoreChiamate FOREIGN KEY (ricevitoreChiamate_id) REFERENCES ricevitoreChiamate(ricevitoreChiamate_id) ); CREATE INDEX caserma ON caserma (distretto); ALTER TABLE pompiere ADD CONSTRAINT distretto FOREIGN KEY (distretto) REFERENCES caserma(distretto); -- insert debug INSERT INTO dipendente VALUES (0001, 'Clark', 'Sales', 5, 10); INSERT INTO dipendente VALUES (0002, 'Francesco', 'Randis', 0, 18); INSERT INTO pompiere VALUES (0001, 'Clark', 'Sales', 5, 10); INSERT INTO dipendente VALUES (0002, 'Francesco', 'Randis', 0, 18); -- fetch SELECT * FROM dipendente SELECT * FROM pompiere SELECT * FROM chiamataUtente SELECT * FROM caserma