CREATE TABLE DOCUMENT ( DOCUMENT_ID INTEGER PRIMARY KEY, COCUMENTBESCHRIJVING VARCHAR(255), DATUMCREATIEDOCUMENT DATE, DATUMONTVANGSTDOCUMENT DATE, DATUMVERZENDINGDOCUMENT DATE, DOCUMENTAUTEUR VARCHAR(200), DOCUMENTIDENTIFICATIE VARCHAR(255), DOCUMENTTITEL VARCHAR(200), VERTROUWELIJKAANDUIDING VARCHAR(20) ); CREATE TABLE RECHTSPERSOON ( RECHTSPERSOON_ID INTEGER PRIMARY KEY, ADRESBINNENLAND VARCHAR(255), ADRESBUITENLAND VARCHAR(255), ADRESCORRESPONDENTIE VARCHAR(100), EMAILADRES VARCHAR(80), FAXNUMMER VARCHAR(20), IDENTIFICATIE VARCHAR(255), KVKNUMMER VARCHAR(20), NAAM VARCHAR(200), RECHTSVORM VARCHAR(100), REKENINGNUMMER VARCHAR(255), TELEFOONNUMMER VARCHAR(20) ); CREATE TABLE OMGEVINGSVERGUNNING ( OMGEVINGSVERGUNNING_ID INTEGER PRIMARY KEY ); CREATE TABLE UITVOERDER_GRAAFWERKZAAMHEDEN ( RECHTSPERSOON_ID INTEGER PRIMARY KEY ); CREATE TABLE GRONDBEHEERDER ( RECHTSPERSOON_ID INTEGER PRIMARY KEY ); CREATE TABLE OPBREKING ( OPBREKING_ID INTEGER PRIMARY KEY, MAAKT_RECHTSPERSOON_ID INTEGER ); CREATE TABLE LEVERANCIER ( RECHTSPERSOON_ID INTEGER PRIMARY KEY, NAAM VARCHAR(200), NUMMER VARCHAR(255) ); CREATE TABLE MEDEWERKER ( MEDEWERKER_ID INTEGER PRIMARY KEY, ACHTERNAAM VARCHAR(200), DATUMINDIENST DATE, DATUMUITDIENST DATE, EMAILADRES VARCHAR(255), EXTERN BOOLEAN, FUNCTIE VARCHAR(50), GELEVERD_VIA_RECHTSPERSOON_ID INTEGER, GESLACHTSAANDUIDING VARCHAR(255), MEDEWERKERIDENTIFICATIE VARCHAR(255), MEDEWERKERTOELICHTING VARCHAR(255), ROEPNAAM VARCHAR(255), TELEFOONNUMMER VARCHAR(20), VOORLETTERS VARCHAR(20), VOORVOEGSELACHTERNAAM VARCHAR(255) ); CREATE TABLE KP_GRNDBHRDR_RCHTSPRSN ( KP_GRNDBHRDR_RCHTSPRSN_ID INTEGER PRIMARY KEY, GRONDBEHEERDER_ID INTEGER, RECHTSPERSOON_ID INTEGER ); CREATE TABLE KP_UTVRDR_GRFWRKZMHDN_GRNDBHRDR ( KP_UTVRDR_GRFWRKZMHDN_GRNDBHRDR_ID INTEGER PRIMARY KEY, UITVOERDER_GRAAFWERKZAAMHEDEN_ID INTEGER, GRONDBEHEERDER_ID INTEGER ); CREATE TABLE MOOR_MELDING ( MOOR_MELDING_ID INTEGER PRIMARY KEY, ADRESAANDUIDING VARCHAR(255), BETREFT_OPBREKING_ID INTEGER, DATUMAANMELDING DATE, DATUMGOEDKEURING DATE, DOET_RECHTSPERSOON_ID INTEGER, EINDTIJD TIMESTAMP, GOEDGEKEURD BOOLEAN, HERSTELWERKZAAMHEDENVEREIST BOOLEAN, OMSCHRIJVINGHERSTELWERKZAAMHEDEN TEXT, PUBLICEREN BOOLEAN, STARTTIJD TIMESTAMP, VERPLICHT_TOT_OMGEVINGSVERGUNNING_ID INTEGER, WEGBEHEERDER VARCHAR(80) ); CREATE TABLE KP_LVRNCR_RCHTSPRSN ( KP_LVRNCR_RCHTSPRSN_ID INTEGER PRIMARY KEY, LEVERANCIER_ID INTEGER, RECHTSPERSOON_ID INTEGER ); CREATE TABLE KP_UTVRDR_GRFWRKZMHDN_LVRNCR ( KP_UTVRDR_GRFWRKZMHDN_LVRNCR_ID INTEGER PRIMARY KEY, UITVOERDER_GRAAFWERKZAAMHEDEN_ID INTEGER, LEVERANCIER_ID INTEGER ); CREATE TABLE PROCES_VERBAAL_MOOR_MELDING ( PROCES_VERBAAL_MOOR_MELDING_ID INTEGER PRIMARY KEY, BETREFT_MOOR_MELDING_ID INTEGER, DATUM DATE, GOEDKEURING BOOLEAN, HEEFT_DOCUMENT_ID INTEGER, OPMERKINGEN TEXT, VERLEENT_MEDEWERKER_ID INTEGER ); ALTER TABLE GRONDBEHEERDER ADD CONSTRAINT FK_GRONDBEHEERDER_GEN_RECHTSPERSOON FOREIGN KEY (RECHTSPERSOON_ID) REFERENCES RECHTSPERSOON (RECHTSPERSOON_ID); -- Generalization to RECHTSPERSOON ALTER TABLE UITVOERDER_GRAAFWERKZAAMHEDEN ADD CONSTRAINT FK_UITVOERDER_GRAAFWERKZAAMHEDEN_GEN_GRONDBEHEERDER FOREIGN KEY (RECHTSPERSOON_ID) REFERENCES GRONDBEHEERDER (RECHTSPERSOON_ID); -- Generalization to GRONDBEHEERDER ALTER TABLE LEVERANCIER ADD CONSTRAINT FK_LEVERANCIER_GEN_RECHTSPERSOON FOREIGN KEY (RECHTSPERSOON_ID) REFERENCES RECHTSPERSOON (RECHTSPERSOON_ID); -- Generalization to RECHTSPERSOON ALTER TABLE KP_LVRNCR_RCHTSPRSN ADD CONSTRAINT FK_KP_LVRNCR_RCHTSPRSN_1 FOREIGN KEY (LEVERANCIER_ID) REFERENCES LEVERANCIER (RECHTSPERSOON_ID); -- LEVERANCIER (many-to-many junction, Connector_ID: 390) ALTER TABLE KP_LVRNCR_RCHTSPRSN ADD CONSTRAINT FK_KP_LVRNCR_RCHTSPRSN_2 FOREIGN KEY (RECHTSPERSOON_ID) REFERENCES RECHTSPERSOON (RECHTSPERSOON_ID); -- RECHTSPERSOON (many-to-many junction, Connector_ID: 390) ALTER TABLE KP_UTVRDR_GRFWRKZMHDN_GRNDBHRDR ADD CONSTRAINT FK_KP_UTVRDR_GRFWRKZMHDN_GRNDBHRDR_1 FOREIGN KEY (UITVOERDER_GRAAFWERKZAAMHEDEN_ID) REFERENCES UITVOERDER_GRAAFWERKZAAMHEDEN (RECHTSPERSOON_ID); -- UITVOERDER_GRAAFWERKZAAMHEDEN (many-to-many junction, Connector_ID: 720) ALTER TABLE KP_UTVRDR_GRFWRKZMHDN_GRNDBHRDR ADD CONSTRAINT FK_KP_UTVRDR_GRFWRKZMHDN_GRNDBHRDR_2 FOREIGN KEY (GRONDBEHEERDER_ID) REFERENCES GRONDBEHEERDER (RECHTSPERSOON_ID); -- GRONDBEHEERDER (many-to-many junction, Connector_ID: 720) ALTER TABLE KP_UTVRDR_GRFWRKZMHDN_LVRNCR ADD CONSTRAINT FK_KP_UTVRDR_GRFWRKZMHDN_LVRNCR_1 FOREIGN KEY (UITVOERDER_GRAAFWERKZAAMHEDEN_ID) REFERENCES UITVOERDER_GRAAFWERKZAAMHEDEN (RECHTSPERSOON_ID); -- UITVOERDER_GRAAFWERKZAAMHEDEN (many-to-many junction, Connector_ID: 721) ALTER TABLE KP_UTVRDR_GRFWRKZMHDN_LVRNCR ADD CONSTRAINT FK_KP_UTVRDR_GRFWRKZMHDN_LVRNCR_2 FOREIGN KEY (LEVERANCIER_ID) REFERENCES LEVERANCIER (RECHTSPERSOON_ID); -- LEVERANCIER (many-to-many junction, Connector_ID: 721) ALTER TABLE KP_GRNDBHRDR_RCHTSPRSN ADD CONSTRAINT FK_KP_GRNDBHRDR_RCHTSPRSN_1 FOREIGN KEY (GRONDBEHEERDER_ID) REFERENCES GRONDBEHEERDER (RECHTSPERSOON_ID); -- GRONDBEHEERDER (many-to-many junction, Connector_ID: 743) ALTER TABLE KP_GRNDBHRDR_RCHTSPRSN ADD CONSTRAINT FK_KP_GRNDBHRDR_RCHTSPRSN_2 FOREIGN KEY (RECHTSPERSOON_ID) REFERENCES RECHTSPERSOON (RECHTSPERSOON_ID); -- RECHTSPERSOON (many-to-many junction, Connector_ID: 743) ALTER TABLE PROCES_VERBAAL_MOOR_MELDING ADD CONSTRAINT FK_PROCES_VERBAAL_MOOR_MELDING_HEEFT FOREIGN KEY (HEEFT_DOCUMENT_ID) REFERENCES DOCUMENT (DOCUMENT_ID); -- HEEFT (0..* to 0..1, Connector_ID: 725) ALTER TABLE OPBREKING ADD CONSTRAINT FK_OPBREKING_MAAKT FOREIGN KEY (MAAKT_RECHTSPERSOON_ID) REFERENCES RECHTSPERSOON (RECHTSPERSOON_ID); -- MAAKT (1.. to 0..*, Connector_ID: 726) ALTER TABLE MOOR_MELDING ADD CONSTRAINT FK_MOOR_MELDING_DOET FOREIGN KEY (DOET_RECHTSPERSOON_ID) REFERENCES RECHTSPERSOON (RECHTSPERSOON_ID); -- DOET (1 to 0..*, Connector_ID: 728) ALTER TABLE MOOR_MELDING ADD CONSTRAINT FK_MOOR_MELDING_VERPLICHT_TOT FOREIGN KEY (VERPLICHT_TOT_OMGEVINGSVERGUNNING_ID) REFERENCES OMGEVINGSVERGUNNING (OMGEVINGSVERGUNNING_ID); -- VERPLICHT_TOT (0..* to 0..1, Connector_ID: 729) ALTER TABLE MOOR_MELDING ADD CONSTRAINT FK_MOOR_MELDING_BETREFT FOREIGN KEY (BETREFT_OPBREKING_ID) REFERENCES OPBREKING (OPBREKING_ID); -- BETREFT (0..1 to 1, Connector_ID: 730) ALTER TABLE PROCES_VERBAAL_MOOR_MELDING ADD CONSTRAINT FK_PROCES_VERBAAL_MOOR_MELDING_BETREFT FOREIGN KEY (BETREFT_MOOR_MELDING_ID) REFERENCES MOOR_MELDING (MOOR_MELDING_ID); -- BETREFT (1 to 0..*, Connector_ID: 731) ALTER TABLE PROCES_VERBAAL_MOOR_MELDING ADD CONSTRAINT FK_PROCES_VERBAAL_MOOR_MELDING_VERLEENT FOREIGN KEY (VERLEENT_MEDEWERKER_ID) REFERENCES MEDEWERKER (MEDEWERKER_ID); -- VERLEENT (1 to 0..*, Connector_ID: 2183) ALTER TABLE MEDEWERKER ADD CONSTRAINT FK_MEDEWERKER_GELEVERD_VIA FOREIGN KEY (GELEVERD_VIA_RECHTSPERSOON_ID) REFERENCES RECHTSPERSOON (RECHTSPERSOON_ID); -- GELEVERD_VIA (0..* to 0..1, Connector_ID: 2194)