CREATE TABLE VUILNISWAGEN ( VUILNISWAGEN_ID INTEGER PRIMARY KEY, CODE VARCHAR(255), KENTEKEN VARCHAR(255), TYPE VARCHAR(200) ); CREATE TABLE CONTAINERTYPE ( CONTAINERTYPE_ID INTEGER PRIMARY KEY, NAAM VARCHAR(80), OMSCHRIJVING TEXT ); CREATE TABLE PRIJSAFSPRAAK ( PRIJSAFSPRAAK_ID INTEGER PRIMARY KEY, DATUMEINDE DATE, DATUMSTART DATE, TITEL VARCHAR(200) ); CREATE TABLE FRACTIE ( FRACTIE_ID INTEGER PRIMARY KEY, NAAM VARCHAR(80), OMSCHRIJVING TEXT ); CREATE TABLE ROUTESOORT_ENUM ( ROUTESOORT_ENUM_ID INTEGER PRIMARY KEY, VALUE VARCHAR(255) ); INSERT INTO ROUTESOORT_ENUM (ROUTESOORT_ENUM_ID, VALUE) VALUES (1, 'GROFVUIL'), (2, 'HOT_SPOT_LOCATIES'), (3, 'HUIS_AAN_HUIS'), (4, 'ILLEGALE_DUMPING'), (5, 'VANGNETREGELING'); CREATE TABLE KP_VLNSWGN_CNTNRTYP ( KP_VLNSWGN_CNTNRTYP_ID INTEGER PRIMARY KEY, VUILNISWAGEN_ID INTEGER, CONTAINERTYPE_ID INTEGER ); CREATE TABLE PRIJSREGEL ( PRIJSREGEL_ID INTEGER PRIMARY KEY, BEDRAG DECIMAL(10,2), BETREFT_FRACTIE_ID INTEGER, CREDIT BOOLEAN, HEEFT_PRIJSAFSPRAAK_ID INTEGER ); CREATE TABLE ROUTE ( ROUTE_ID INTEGER PRIMARY KEY, GEOMETRIE GEOMETRY, OPHALEN_FRACTIE_ID INTEGER, ROUTECODE VARCHAR(255), ROUTESOORT_ENUM_ID INTEGER ); CREATE TABLE RIT ( RIT_ID INTEGER PRIMARY KEY, EINDTIJD TIMESTAMP, RITCODE VARCHAR(255), STARTTIJD TIMESTAMP, UITGEVOERD_MET_VUILNISWAGEN_ID INTEGER, VOLGENS_ROUTE_ID INTEGER ); CREATE TABLE LOCATIE ( LOCATIE_ID INTEGER PRIMARY KEY, ADRESAANDUIDING VARCHAR(255), GAAT_LANGS_ROUTE_ID INTEGER, LOCATIECODE VARCHAR(255), LOCATIEPUNT VARCHAR(255) ); CREATE TABLE CONTAINER ( CONTAINER_ID INTEGER PRIMARY KEY, CONTAINERCODE VARCHAR(255), GESCHIKT_VOOR_FRACTIE_ID INTEGER, HEEFT_LOCATIE_ID INTEGER, SENSORID VARCHAR(255), SOORT_CONTAINERTYPE_ID INTEGER ); CREATE TABLE VULGRAADMETING ( VULGRAADMETING_ID INTEGER PRIMARY KEY, HEEFT_CONTAINER_ID INTEGER, TIJDSTIP TIMESTAMP, VULGRAAD INTEGER, VULLINGGEWICHT INTEGER ); CREATE TABLE OPHAALMOMENT ( OPHAALMOMENT_ID INTEGER PRIMARY KEY, GELOST_CONTAINER_ID INTEGER, GESTOPT_OP_LOCATIE_ID INTEGER, GEWICHTSTOENAME INTEGER, HEEFT_RIT_ID INTEGER, TIJDSTIP TIMESTAMP ); ALTER TABLE KP_VLNSWGN_CNTNRTYP ADD CONSTRAINT FK_KP_VLNSWGN_CNTNRTYP_1 FOREIGN KEY (VUILNISWAGEN_ID) REFERENCES VUILNISWAGEN (VUILNISWAGEN_ID); -- VUILNISWAGEN (many-to-many junction, Connector_ID: 829) ALTER TABLE KP_VLNSWGN_CNTNRTYP ADD CONSTRAINT FK_KP_VLNSWGN_CNTNRTYP_2 FOREIGN KEY (CONTAINERTYPE_ID) REFERENCES CONTAINERTYPE (CONTAINERTYPE_ID); -- CONTAINERTYPE (many-to-many junction, Connector_ID: 829) ALTER TABLE RIT ADD CONSTRAINT FK_RIT_UITGEVOERD_MET FOREIGN KEY (UITGEVOERD_MET_VUILNISWAGEN_ID) REFERENCES VUILNISWAGEN (VUILNISWAGEN_ID); -- UITGEVOERD_MET (0..* to 1, Connector_ID: 812) ALTER TABLE RIT ADD CONSTRAINT FK_RIT_VOLGENS FOREIGN KEY (VOLGENS_ROUTE_ID) REFERENCES ROUTE (ROUTE_ID); -- VOLGENS (0..* to 0..1, Connector_ID: 813) ALTER TABLE PRIJSREGEL ADD CONSTRAINT FK_PRIJSREGEL_HEEFT FOREIGN KEY (HEEFT_PRIJSAFSPRAAK_ID) REFERENCES PRIJSAFSPRAAK (PRIJSAFSPRAAK_ID); -- HEEFT (1 to 0..*, Connector_ID: 814) ALTER TABLE OPHAALMOMENT ADD CONSTRAINT FK_OPHAALMOMENT_HEEFT FOREIGN KEY (HEEFT_RIT_ID) REFERENCES RIT (RIT_ID); -- HEEFT (1 to 0..*, Connector_ID: 816) ALTER TABLE OPHAALMOMENT ADD CONSTRAINT FK_OPHAALMOMENT_GESTOPT_OP FOREIGN KEY (GESTOPT_OP_LOCATIE_ID) REFERENCES LOCATIE (LOCATIE_ID); -- GESTOPT_OP (0..* to 1, Connector_ID: 820) ALTER TABLE LOCATIE ADD CONSTRAINT FK_LOCATIE_GAAT_LANGS FOREIGN KEY (GAAT_LANGS_ROUTE_ID) REFERENCES ROUTE (ROUTE_ID); -- GAAT_LANGS (0..1 to 0..*, Connector_ID: 822) ALTER TABLE ROUTE ADD CONSTRAINT FK_ROUTE_OPHALEN FOREIGN KEY (OPHALEN_FRACTIE_ID) REFERENCES FRACTIE (FRACTIE_ID); -- OPHALEN (0..* to 1, Connector_ID: 823) ALTER TABLE PRIJSREGEL ADD CONSTRAINT FK_PRIJSREGEL_BETREFT FOREIGN KEY (BETREFT_FRACTIE_ID) REFERENCES FRACTIE (FRACTIE_ID); -- BETREFT (1..* to 1, Connector_ID: 826) ALTER TABLE OPHAALMOMENT ADD CONSTRAINT FK_OPHAALMOMENT_GELOST FOREIGN KEY (GELOST_CONTAINER_ID) REFERENCES CONTAINER (CONTAINER_ID); -- GELOST (0..* to 0..1, Connector_ID: 830) ALTER TABLE VULGRAADMETING ADD CONSTRAINT FK_VULGRAADMETING_HEEFT FOREIGN KEY (HEEFT_CONTAINER_ID) REFERENCES CONTAINER (CONTAINER_ID); -- HEEFT (1 to 0..*, Connector_ID: 831) ALTER TABLE CONTAINER ADD CONSTRAINT FK_CONTAINER_HEEFT FOREIGN KEY (HEEFT_LOCATIE_ID) REFERENCES LOCATIE (LOCATIE_ID); -- HEEFT (0..* to 1, Connector_ID: 832) ALTER TABLE CONTAINER ADD CONSTRAINT FK_CONTAINER_SOORT FOREIGN KEY (SOORT_CONTAINERTYPE_ID) REFERENCES CONTAINERTYPE (CONTAINERTYPE_ID); -- SOORT (0..* to 0..1, Connector_ID: 833) ALTER TABLE CONTAINER ADD CONSTRAINT FK_CONTAINER_GESCHIKT_VOOR FOREIGN KEY (GESCHIKT_VOOR_FRACTIE_ID) REFERENCES FRACTIE (FRACTIE_ID); -- GESCHIKT_VOOR (0..* to 1, Connector_ID: 834) ALTER TABLE ROUTE ADD CONSTRAINT FK_ROUTE_ROUTESOORT_ENUM_ID FOREIGN KEY (ROUTESOORT_ENUM_ID_ROUTESOORT_ENUM_ID) REFERENCES ROUTESOORT_ENUM (ROUTESOORT_ENUM_ID); -- ROUTESOORT_ENUM_ID (1 to 1, Connector_ID: enum_ref)