CREATE TABLE `RECHTSPERSOON` ( `RECHTSPERSOON_ID` INT 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) ) ENGINE=InnoDB; CREATE TABLE `CLIENT` ( `CLIENT_ID` INT PRIMARY KEY, `CODE` VARCHAR(80), `GEZAGSDRAGERGEKEND` BOOLEAN, `JURIDISCHESTATUS` VARCHAR(80), `WETTELIJKEVERTEGENWOORDIGING` VARCHAR(80) ) ENGINE=InnoDB; CREATE TABLE `VROEGSIGNAALZAAK` ( `ZAAK_ID` INT PRIMARY KEY, `DATUM_OPGEPAKT` DATE, `EINDDATUM_MATCHINGPERIODE` DATE, `MATCHINGSDATUM` DATE, `OPGEPAKTDOOR_RECHTSPERSOON_ID` INT, `OPGEPAKTNAMENS_GEMEENTE_ID` INT, `RESULTAAT_ENUM_ID` INT, `STARTDATUM_MATCHTINGPERIODE` DATE ) ENGINE=InnoDB; CREATE TABLE `KP_GMNT_IS_OVRGGN_IN` ( `KP_GMNT_IS_OVRGGN_IN_ID` INT PRIMARY KEY, `IS_OVERGEGAAN_IN_1_ID` INT, `IS_OVERGEGAAN_IN_2_ID` INT ) ENGINE=InnoDB; CREATE TABLE `NIETNATUURLIJKPERSOON` ( `RECHTSPERSOON_ID` INT PRIMARY KEY, `DATUMAANVANG` DATE, `DATUMEINDE` DATE, `DATUMUITSCHRIJVING` DATE, `DATUMVOORTZETTING` DATE, `FAXNUMMER` VARCHAR(20), `INGESCHREVEN` BOOLEAN, `INOPRICHTING` BOOLEAN, `KVKNUMMER` VARCHAR(255), `NNPID` VARCHAR(255), `RECHTSVORM` VARCHAR(255), `RSINNUMMER` VARCHAR(255), `STATUTAIRENAAM` VARCHAR(255), `STATUTAIREZETEL` VARCHAR(255), `WEBSITEURL` VARCHAR(200) ) ENGINE=InnoDB; CREATE TABLE `GEMEENTE` ( `GEMEENTE_ID` INT PRIMARY KEY, `BEGINGELDIGHEID` DATE, `DATUMEINDE` DATE, `DATUMINGANG` DATE, `EINDGELDIGHEID` DATE, `GECONSTATEERD` BOOLEAN, `GEMEENTECODE` VARCHAR(255), `GEMEENTENAAM` VARCHAR(80), `GEMEENTENAAM_NEN` VARCHAR(255), `GEOMETRIE` GEOMETRY, `IDENTIFICATIE` VARCHAR(255), `VERSIE` INT ) ENGINE=InnoDB; CREATE TABLE `ZAAK` ( `ZAAK_ID` INT PRIMARY KEY, `ARCHIEFNOMINATIE` VARCHAR(255), `DATUMEINDE` DATE, `DATUMEINDEGEPLAND` DATE, `DATUMEINDEUITERLIJKEAFDOENING` DATE, `DATUMLAATSTEBETALING` DATE, `DATUMPUBLICATIE` DATE, `DATUMREGISTRATIE` DATE, `DATUMSTART` DATE, `DATUMVERNIETIGINGDOSSIER` DATE, `DUURVERLENGING` VARCHAR(255), `HEEFT_BETREKKING_OP_ANDERE_ZAAK_ID` INT, `INDICATIEBETALING` VARCHAR(255), `INDICATIEDEELZAKEN` BOOLEAN, `INDICATIEOPSCHORTING` VARCHAR(255), `IS_DEELZAAK_VAN_ZAAK_ID` INT, `LEGES` VARCHAR(100), `OMSCHRIJVING` VARCHAR(80), `OMSCHRIJVINGRESULTAAT` VARCHAR(80), `REDENOPSCHORTING` VARCHAR(200), `REDENVERLENGING` VARCHAR(200), `TOELICHTING` VARCHAR(255), `TOELICHTINGRESULTAAT` VARCHAR(255), `VERTROUWELIJKHEID` VARCHAR(255), `ZAAKIDENTIFICATIE` VARCHAR(255), `ZAAKNIVEAU` VARCHAR(255) ) ENGINE=InnoDB; CREATE TABLE `KP_NTNTRLJKPRSN_RCHTSPRSN` ( `KP_NTNTRLJKPRSN_RCHTSPRSN_ID` INT PRIMARY KEY, `NIETNATUURLIJKPERSOON_ID` INT, `RECHTSPERSOON_ID` INT ) ENGINE=InnoDB; CREATE TABLE `CONTACTPOGING` ( `CONTACTPOGING_ID` INT PRIMARY KEY, `BEREIKT` BOOLEAN, `DAGDEEL_ENUM_ID` INT, `DATUM` DATE, `HEEFT_ZAAK_ID` INT, `SOORT_ENUM_ID` INT ) ENGINE=InnoDB; CREATE TABLE `CONTACTPERSOON` ( `CONTACTPERSOON_ID` INT PRIMARY KEY, `CONTACTPERSONEN_AANLEVERENDEORGANISATIE_ID` INT, `EMAIL` VARCHAR(255), `FUNCTIETITEL` VARCHAR(200), `NAAM` VARCHAR(200), `TELEFOONNUMMER` VARCHAR(200) ) ENGINE=InnoDB; CREATE TABLE `ENUMCONTACTSOORT_ENUM` ( `ENUMCONTACTSOORT_ENUM_ID` INT PRIMARY KEY, VALUE VARCHAR(255) ) ENGINE=InnoDB; INSERT INTO `ENUMCONTACTSOORT_ENUM` (`ENUMCONTACTSOORT_ENUM_ID`, VALUE) VALUES (1, 'ADMINISTRATIEF'), (2, 'AFSPRAAK_OP_LOCATIE'), (3, 'BRIEF'), (4, 'HUISBEZOEK'), (5, 'KAARTJE'), (6, 'MAIL'), (7, 'SMS_WHATSAPP'), (8, 'TELEFOON'); CREATE TABLE `KP_VRGSGNLZK_ZK` ( `KP_VRGSGNLZK_ZK_ID` INT PRIMARY KEY, `VROEGSIGNAALZAAK_ID` INT, `ZAAK_ID` INT ) ENGINE=InnoDB; CREATE TABLE `VROEGSIGNAAL` ( `VROEGSIGNAAL_ID` INT PRIMARY KEY, `BEDRAG` DECIMAL(10,2), `BETREFT_CLIENT_ID` INT, `CRISISSIGNAAL` BOOLEAN, `ONTSTAANSDATUM` DATE, `OPGEPAKTIN_ZAAK_ID` INT, `SIGNAALDATUM` DATE, `STATUS` VARCHAR(255), `VERZONDENDOOR_RECHTSPERSOON_ID` INT, `WARMEOVERDRACHT` BOOLEAN ) ENGINE=InnoDB; CREATE TABLE `KP_SGNLPRTNR_RCHTSPRSN` ( `KP_SGNLPRTNR_RCHTSPRSN_ID` INT PRIMARY KEY, `SIGNAALPARTNER_ID` INT, `RECHTSPERSOON_ID` INT ) ENGINE=InnoDB; CREATE TABLE `ENUMDAGDEEL_ENUM` ( `ENUMDAGDEEL_ENUM_ID` INT PRIMARY KEY, VALUE VARCHAR(255) ) ENGINE=InnoDB; INSERT INTO `ENUMDAGDEEL_ENUM` (`ENUMDAGDEEL_ENUM_ID`, VALUE) VALUES (1, 'AVOND'), (2, 'MIDDAG'), (3, 'OCHTEND'); CREATE TABLE `ENUMEINDRESULTAAT_ENUM` ( `ENUMEINDRESULTAAT_ENUM_ID` INT PRIMARY KEY, VALUE VARCHAR(255) ) ENGINE=InnoDB; INSERT INTO `ENUMEINDRESULTAAT_ENUM` (`ENUMEINDRESULTAAT_ENUM_ID`, VALUE) VALUES (1, 'DEFINITIEF_GEEN_CONTACT_KUNNEN_KRIJGEN'), (2, 'GEEN_REACTIE_NA_EERDER_CONTACT'), (3, 'INWONER_AL_BEKEND_BIJ_SCHULDHULPVERLENING'), (4, 'INWONER_HEEFT_AL_EEN_ANDER_LOPEND_TRAJECT'), (5, 'INWONER_HEEFT_ZELF_AL_BETAALD_BETALINGSREGELING_GETROFFEN'), (6, 'INWONER_HOEFT_GEEN_HULP_VANUIT_VROEGSIGNALERING'), (7, 'INWONER_IS_OVERLEDEN'), (8, 'NIET_OPGEPAKT_ANDERE_REDEN'), (9, 'NIET_OPGEPAKT_HERHAALDE_MELDING'), (10, 'NIET_OPGEPAKT_ONTERECHT_SIGNAAL'), (11, 'PERSOON_IS_GEEN_INWONER_MEER_IN_DE_GEMEENTE'), (12, 'VERVOLGHULP_EN_OF_VERWIJZING_FINANCIEEL'), (13, 'VERVOLGHULP_EN_OF_VERWIJZING_NIET_FINANCIEEL'), (14, 'VERWIJZING_ZONDER_CONTACT'), (15, '_BUDGET_ADVIES_EN_OF_QUICK_FIX'); CREATE TABLE `ENUMSIGNAALPARTNER_ENUM` ( `ENUMSIGNAALPARTNER_ENUM_ID` INT PRIMARY KEY, VALUE VARCHAR(255) ) ENGINE=InnoDB; INSERT INTO `ENUMSIGNAALPARTNER_ENUM` (`ENUMSIGNAALPARTNER_ENUM_ID`, VALUE) VALUES (1, 'BELASTINGDIENST'), (2, 'CAK_EIGEN_BIJDRAGE'), (3, 'CAK_ZORGVERZEKERINGEN'), (4, 'DIENST_TOESLAGEN'), (5, 'DUO'), (6, 'ENERGIE'), (7, 'HUUR'), (8, 'HYPOTHEEK'), (9, 'OVERIGE'), (10, 'WATER'), (11, 'ZORG'); CREATE TABLE `AANLEVERENDEORGANISATIE` ( `AANLEVERENDEORGANISATIE_ID` INT PRIMARY KEY, `KVK_NUMMER` VARCHAR(80), `NAAM` VARCHAR(200) ) ENGINE=InnoDB; CREATE TABLE `SIGNAALPARTNER` ( `RECHTSPERSOON_ID` INT PRIMARY KEY, `TYPE_ENUM_ID` INT ) ENGINE=InnoDB; ALTER TABLE `VROEGSIGNAALZAAK` ADD CONSTRAINT FK_VROEGSIGNAALZAAK_GEN_ZAAK FOREIGN KEY (`ZAAK_ID`) REFERENCES `ZAAK` (`ZAAK_ID`); -- Generalization to ZAAK ALTER TABLE `SIGNAALPARTNER` ADD CONSTRAINT FK_SIGNAALPARTNER_GEN_RECHTSPERSOON FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- Generalization to RECHTSPERSOON ALTER TABLE `NIETNATUURLIJKPERSOON` ADD CONSTRAINT FK_NIETNATUURLIJKPERSOON_GEN_RECHTSPERSOON FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- Generalization to RECHTSPERSOON ALTER TABLE `KP_VRGSGNLZK_ZK` ADD CONSTRAINT FK_KP_VRGSGNLZK_ZK_1 FOREIGN KEY (`VROEGSIGNAALZAAK_ID`) REFERENCES `VROEGSIGNAALZAAK` (`ZAAK_ID`); -- VROEGSIGNAALZAAK (many-to-many junction, Connector_ID: 1510) ALTER TABLE `KP_VRGSGNLZK_ZK` ADD CONSTRAINT FK_KP_VRGSGNLZK_ZK_2 FOREIGN KEY (`ZAAK_ID`) REFERENCES `ZAAK` (`ZAAK_ID`); -- ZAAK (many-to-many junction, Connector_ID: 1510) ALTER TABLE `KP_SGNLPRTNR_RCHTSPRSN` ADD CONSTRAINT FK_KP_SGNLPRTNR_RCHTSPRSN_1 FOREIGN KEY (`SIGNAALPARTNER_ID`) REFERENCES `SIGNAALPARTNER` (`RECHTSPERSOON_ID`); -- SIGNAALPARTNER (many-to-many junction, Connector_ID: 1531) ALTER TABLE `KP_SGNLPRTNR_RCHTSPRSN` ADD CONSTRAINT FK_KP_SGNLPRTNR_RCHTSPRSN_2 FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- RECHTSPERSOON (many-to-many junction, Connector_ID: 1531) ALTER TABLE `KP_NTNTRLJKPRSN_RCHTSPRSN` ADD CONSTRAINT FK_KP_NTNTRLJKPRSN_RCHTSPRSN_1 FOREIGN KEY (`NIETNATUURLIJKPERSOON_ID`) REFERENCES `NIETNATUURLIJKPERSOON` (`RECHTSPERSOON_ID`); -- NIETNATUURLIJKPERSOON (many-to-many junction, Connector_ID: 1971) ALTER TABLE `KP_NTNTRLJKPRSN_RCHTSPRSN` ADD CONSTRAINT FK_KP_NTNTRLJKPRSN_RCHTSPRSN_2 FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- RECHTSPERSOON (many-to-many junction, Connector_ID: 1971) ALTER TABLE `KP_GMNT_IS_OVRGGN_IN` ADD CONSTRAINT FK_KP_GMNT_IS_OVRGGN_IN_1 FOREIGN KEY (`IS_OVERGEGAAN_IN_1_ID`) REFERENCES `GEMEENTE` (`GEMEENTE_ID`); -- GEMEENTE (many-to-many junction, Connector_ID: 2233) ALTER TABLE `KP_GMNT_IS_OVRGGN_IN` ADD CONSTRAINT FK_KP_GMNT_IS_OVRGGN_IN_2 FOREIGN KEY (`IS_OVERGEGAAN_IN_2_ID`) REFERENCES `GEMEENTE` (`GEMEENTE_ID`); -- GEMEENTE (many-to-many junction, Connector_ID: 2233) ALTER TABLE `VROEGSIGNAAL` ADD CONSTRAINT FK_VROEGSIGNAAL_BETREFT FOREIGN KEY (`BETREFT_CLIENT_ID`) REFERENCES `CLIENT` (`CLIENT_ID`); -- BETREFT (0..* to 1, Connector_ID: 1504) ALTER TABLE `VROEGSIGNAAL` ADD CONSTRAINT FK_VROEGSIGNAAL_OPGEPAKTIN FOREIGN KEY (`OPGEPAKTIN_ZAAK_ID`) REFERENCES `ZAAK` (`ZAAK_ID`); -- OPGEPAKTIN (1..* to 0..1, Connector_ID: 1505) ALTER TABLE `CONTACTPOGING` ADD CONSTRAINT FK_CONTACTPOGING_HEEFT FOREIGN KEY (`HEEFT_ZAAK_ID`) REFERENCES `ZAAK` (`ZAAK_ID`); -- HEEFT (1 to 0..*, Connector_ID: 1506) ALTER TABLE `VROEGSIGNAAL` ADD CONSTRAINT FK_VROEGSIGNAAL_VERZONDENDOOR FOREIGN KEY (`VERZONDENDOOR_RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- VERZONDENDOOR (0..* to 1, Connector_ID: 1507) ALTER TABLE `VROEGSIGNAALZAAK` ADD CONSTRAINT FK_VROEGSIGNAALZAAK_OPGEPAKTNAMENS FOREIGN KEY (`OPGEPAKTNAMENS_GEMEENTE_ID`) REFERENCES `GEMEENTE` (`GEMEENTE_ID`); -- OPGEPAKTNAMENS (0..* to 1, Connector_ID: 1509) ALTER TABLE `VROEGSIGNAALZAAK` ADD CONSTRAINT FK_VROEGSIGNAALZAAK_OPGEPAKTDOOR FOREIGN KEY (`OPGEPAKTDOOR_RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- OPGEPAKTDOOR (0..* to 1, Connector_ID: 1532) ALTER TABLE `CONTACTPERSOON` ADD CONSTRAINT FK_CONTACTPERSOON_CONTACTPERSONEN FOREIGN KEY (`CONTACTPERSONEN_AANLEVERENDEORGANISATIE_ID`) REFERENCES `AANLEVERENDEORGANISATIE` (`AANLEVERENDEORGANISATIE_ID`); -- CONTACTPERSONEN (1 to 1..*, Connector_ID: 1534) ALTER TABLE `ZAAK` ADD CONSTRAINT FK_ZAAK_HEEFT_BETREKKING_OP_ANDERE FOREIGN KEY (`HEEFT_BETREKKING_OP_ANDERE_ZAAK_ID`) REFERENCES `ZAAK` (`ZAAK_ID`); -- HEEFT_BETREKKING_OP_ANDERE (1 to 0..*, Connector_ID: 2108) ALTER TABLE `ZAAK` ADD CONSTRAINT FK_ZAAK_IS_DEELZAAK_VAN FOREIGN KEY (`IS_DEELZAAK_VAN_ZAAK_ID`) REFERENCES `ZAAK` (`ZAAK_ID`); -- IS_DEELZAAK_VAN (1 to 0..1, Connector_ID: 2121) ALTER TABLE `VROEGSIGNAALZAAK` ADD CONSTRAINT FK_VROEGSIGNAALZAAK_RESULTAAT_ENUM_ID FOREIGN KEY (`RESULTAAT_ENUM_ID_ENUMEINDRESULTAAT_ENUM_ID`) REFERENCES `ENUMEINDRESULTAAT_ENUM` (`ENUMEINDRESULTAAT_ENUM_ID`); -- RESULTAAT_ENUM_ID (1 to 1, Connector_ID: enum_ref) ALTER TABLE `CONTACTPOGING` ADD CONSTRAINT FK_CONTACTPOGING_DAGDEEL_ENUM_ID FOREIGN KEY (`DAGDEEL_ENUM_ID_ENUMDAGDEEL_ENUM_ID`) REFERENCES `ENUMDAGDEEL_ENUM` (`ENUMDAGDEEL_ENUM_ID`); -- DAGDEEL_ENUM_ID (1 to 1, Connector_ID: enum_ref) ALTER TABLE `CONTACTPOGING` ADD CONSTRAINT FK_CONTACTPOGING_SOORT_ENUM_ID FOREIGN KEY (`SOORT_ENUM_ID_ENUMCONTACTSOORT_ENUM_ID`) REFERENCES `ENUMCONTACTSOORT_ENUM` (`ENUMCONTACTSOORT_ENUM_ID`); -- SOORT_ENUM_ID (1 to 1, Connector_ID: enum_ref) ALTER TABLE `SIGNAALPARTNER` ADD CONSTRAINT FK_SIGNAALPARTNER_TYPE_ENUM_ID FOREIGN KEY (`TYPE_ENUM_ID_ENUMSIGNAALPARTNER_ENUM_ID`) REFERENCES `ENUMSIGNAALPARTNER_ENUM` (`ENUMSIGNAALPARTNER_ENUM_ID`); -- TYPE_ENUM_ID (1 to 1, Connector_ID: enum_ref)