CREATE TABLE `KP_NTNTRLJKPRSN_RCHTSPRSN` ( `KP_NTNTRLJKPRSN_RCHTSPRSN_ID` INT PRIMARY KEY, `NIETNATUURLIJKPERSOON_ID` INT, `RECHTSPERSOON_ID` INT ) ENGINE=InnoDB; CREATE TABLE `KP_INGSCHRVNPRSN_NTRLJKPRSN` ( `KP_INGSCHRVNPRSN_NTRLJKPRSN_ID` INT PRIMARY KEY, `INGESCHREVENPERSOON_ID` INT, `NATUURLIJKPERSOON_ID` INT ) ENGINE=InnoDB; CREATE TABLE `NATUURLIJKPERSOON` ( `RECHTSPERSOON_ID` INT PRIMARY KEY, `AANDUIDINGNAAMGEBRUIK` VARCHAR(50), `AANHEFAANSCHRIJVING` VARCHAR(50), `ACADEMISCHETITEL` VARCHAR(80), `ACHTERNAAM` VARCHAR(100), `ADELLIJKETITELOFPREDIKAAT` VARCHAR(255), `ANUMMER` VARCHAR(20), `BIJZONDERNEDERLANDERSCHAP` VARCHAR(50), `BURGERSERVICENUMMER` VARCHAR(255), `DATUMGEBOORTE` DATE, `DATUMOVERLIJDEN` DATE, `GEBOORTELAND` VARCHAR(255), `GEBOORTEPLAATS` VARCHAR(200), `GESLACHTSAANDUIDING` VARCHAR(255), `GESLACHTSNAAM` VARCHAR(200), `GESLACHTSNAAMAANSCHRIJVING` VARCHAR(200), `HANDLICHTING` VARCHAR(50), `INDICATIEAFSCHERMINGPERSOONSGEGEVENS` BOOLEAN, `INDICATIEOVERLEDEN` BOOLEAN, `LANDOVERLIJDEN` VARCHAR(255), `NATIONALITEIT` VARCHAR(100), `OVERLIJDENSPLAATS` VARCHAR(200), `VOORLETTERSAANSCHRIJVING` VARCHAR(20), `VOORNAMEN` VARCHAR(200), `VOORNAMENAANSCHRIJVING` VARCHAR(200), `VOORVOEGSELGESLACHTSNAAM` VARCHAR(80) ) ENGINE=InnoDB; CREATE TABLE `KP_NTNTRLJKPRSN_NTRLJKPRSN` ( `KP_NTNTRLJKPRSN_NTRLJKPRSN_ID` INT PRIMARY KEY, `NIETNATUURLIJKPERSOON_ID` INT, `NATUURLIJKPERSOON_ID` INT ) ENGINE=InnoDB; CREATE TABLE `ADRESBUITENLAND` ( `ADRESBUITENLAND_ID` INT PRIMARY KEY, `ADRESREGELBUITENLAND1` VARCHAR(50), `ADRESREGELBUITENLAND2` VARCHAR(50), `ADRESREGELBUITENLAND3` VARCHAR(50), `DATUMAANVANGADRESBUITENLAND` DATE, `DATUMINSCHRIJVINGGEMEENTE` DATE, `DATUMVESTIGINGNEDERLAND` DATE, `GEMEENTEVANINSCHRIJVING` VARCHAR(100), `LANDADRESBUITENLAND` VARCHAR(50), `LANDWAARVANDAANINGESCHREVEN` VARCHAR(50), `OMSCHRIJVINGVANDEAANGIFTEADRESHOUDING` VARCHAR(100) ) ENGINE=InnoDB; CREATE TABLE `VERBLIJFSTITEL` ( `VERBLIJFSTITEL_ID` INT PRIMARY KEY, `AANDUIDINGVERBLIJFSTITEL` VARCHAR(255), `DATUMBEGINGELDIGHEIDVERBLIJFSTITEL` DATE, `DATUM_BEGIN` DATE, `DATUM_EINDE` DATE, `DATUM_OPNAME` DATE, `VERBLIJFSTITEL_CODE` VARCHAR(255) ) ENGINE=InnoDB; CREATE TABLE `KP_NTRLJKPRSN_RCHTSPRSN` ( `KP_NTRLJKPRSN_RCHTSPRSN_ID` INT PRIMARY KEY, `NATUURLIJKPERSOON_ID` INT, `RECHTSPERSOON_ID` INT ) ENGINE=InnoDB; CREATE TABLE `HUISHOUDEN` ( `HUISHOUDEN_ID` INT PRIMARY KEY, `DATUMBEGINGELDIGHEIDHUISHOUDEN` DATE, `DATUMEINDEGELDIGHEIDHUISHOUDEN` DATE, `HUISHOUDENGROOTTE` VARCHAR(255), `HUISHOUDENNUMMER` VARCHAR(255), `HUISHOUDENSOORT` VARCHAR(255) ) ENGINE=InnoDB; CREATE TABLE `RECHTSPERSOON` ( `RECHTSPERSOON_ID` INT PRIMARY KEY, `ADRESBINNENLAND` VARCHAR(255), `ADRESBUITENLAND` VARCHAR(255), `ADRESCORRESPONDENTIE` VARCHAR(100), `EMAILADRES` VARCHAR(80), `FAXNUMMER` VARCHAR(20), `HEEFT_ADRESBUITENLAND_ID` INT, `IDENTIFICATIE` VARCHAR(255), `KVKNUMMER` VARCHAR(20), `NAAM` VARCHAR(200), `RECHTSVORM` VARCHAR(100), `REKENINGNUMMER` VARCHAR(255), `TELEFOONNUMMER` VARCHAR(20) ) ENGINE=InnoDB; CREATE TABLE `NATIONALITEIT` ( `NATIONALITEIT_ID` INT PRIMARY KEY, `BUITENLANDSE_NATIONALITEIT` BOOLEAN, `DATUM_EINDE_GELDIGHEID` DATE, `DATUM_INGANG_GELDIGHEID` DATE, `DATUM_OPNAMEN` DATE, `DATUM_VERLIES_NATIONALITEIT` DATE, `HEEFT_RECHTSPERSOON_ID` INT, `NATIONALITEITCODE` VARCHAR(255), `OMSCHRIJVING` VARCHAR(80), `REDENVERKRIJGINGNLNATIONALITEIT` VARCHAR(100), `REDENVERLIESNLNATIONALITEIT` VARCHAR(100) ) 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 `INGEZETENE` ( `RECHTSPERSOON_ID` INT PRIMARY KEY, `AANDUIDINGEUROPEESKIESRECHT` BOOLEAN, `AANDUIDINGUITGESLOTENKIESRECHT` BOOLEAN, `DATUMVERKRIJGINGVERBLIJFSTITEL` DATE, `DATUMVERLIESVERBLIJFSTITEL` DATE, `HEEFT_VERBLIJFSTITEL_ID` INT, `INDICATIEBLOKKERING` VARCHAR(255), `INDICATIECURATELEREGISTER` VARCHAR(255), `INDICATIEGEZAGMINDERJARIGE` VARCHAR(255) ) ENGINE=InnoDB; CREATE TABLE `INGESCHREVENPERSOON` ( `RECHTSPERSOON_ID` INT PRIMARY KEY, `ADRESHERKOMST` VARCHAR(255), `ANUMMER` VARCHAR(20), `BESCHRIJVINGLOCATIE` VARCHAR(200), `BUITENLANDSREISDOCUMENT` VARCHAR(80), `BURGERLIJKESTAAT` VARCHAR(255), `DATUMBEGINGELDIGHEIDVERBLIJFPLAATS` DATE, `DATUMEINDEGELDIGHEIDVERBLIJFSPLAATS` DATE, `DATUMINSCHRIJVINGGEMEENTE` DATE, `DATUMOPSCHORTINGBIJHOUDING` DATE, `DATUMVERTREKUITNEDERLAND` DATE, `DATUMVESTIGINGNEDERLAND` DATE, `GEMEENTEVANINSCHRIJVING` VARCHAR(80), `GEZINSRELATIE` VARCHAR(255), `HEEFT_HUISHOUDEN_ID` INT, `INDICATIEGEHEIM` BOOLEAN, `INGEZETENE` BOOLEAN, `LANDWAARNAARVERTROKKEN` VARCHAR(255), `LANDWAARVANDAANINGESCHREVEN` VARCHAR(255), `OUDER1` VARCHAR(255), `OUDER2` VARCHAR(255), `OUDER_1_RECHTSPERSOON_ID` INT, `OUDER_2_RECHTSPERSOON_ID` INT, `PARTNERID` VARCHAR(255), `REDENEINDEBEWONING` DATE, `REDENOPSCHORTINGBIJHOUDING` VARCHAR(200), `SIGNALERINGREISDOCUMENT` BOOLEAN, `VERBLIJFSTITEL` VARCHAR(255) ) ENGINE=InnoDB; CREATE TABLE `KP_INGZTN_INGSCHRVNPRSN` ( `KP_INGZTN_INGSCHRVNPRSN_ID` INT PRIMARY KEY, `INGEZETENE_ID` INT, `INGESCHREVENPERSOON_ID` INT ) ENGINE=InnoDB; ALTER TABLE `NIETNATUURLIJKPERSOON` ADD CONSTRAINT FK_NIETNATUURLIJKPERSOON_GEN_RECHTSPERSOON FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- Generalization to RECHTSPERSOON ALTER TABLE `NATUURLIJKPERSOON` ADD CONSTRAINT FK_NATUURLIJKPERSOON_GEN_RECHTSPERSOON FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- Generalization to RECHTSPERSOON ALTER TABLE `INGESCHREVENPERSOON` ADD CONSTRAINT FK_INGESCHREVENPERSOON_GEN_NATUURLIJKPERSOON FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `NATUURLIJKPERSOON` (`RECHTSPERSOON_ID`); -- Generalization to NATUURLIJKPERSOON ALTER TABLE `INGEZETENE` ADD CONSTRAINT FK_INGEZETENE_GEN_INGESCHREVENPERSOON FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `INGESCHREVENPERSOON` (`RECHTSPERSOON_ID`); -- Generalization to INGESCHREVENPERSOON ALTER TABLE `KP_INGZTN_INGSCHRVNPRSN` ADD CONSTRAINT FK_KP_INGZTN_INGSCHRVNPRSN_1 FOREIGN KEY (`INGEZETENE_ID`) REFERENCES `INGEZETENE` (`RECHTSPERSOON_ID`); -- INGEZETENE (many-to-many junction, Connector_ID: 1867) ALTER TABLE `KP_INGZTN_INGSCHRVNPRSN` ADD CONSTRAINT FK_KP_INGZTN_INGSCHRVNPRSN_2 FOREIGN KEY (`INGESCHREVENPERSOON_ID`) REFERENCES `INGESCHREVENPERSOON` (`RECHTSPERSOON_ID`); -- INGESCHREVENPERSOON (many-to-many junction, Connector_ID: 1867) ALTER TABLE `KP_INGSCHRVNPRSN_NTRLJKPRSN` ADD CONSTRAINT FK_KP_INGSCHRVNPRSN_NTRLJKPRSN_1 FOREIGN KEY (`INGESCHREVENPERSOON_ID`) REFERENCES `INGESCHREVENPERSOON` (`RECHTSPERSOON_ID`); -- INGESCHREVENPERSOON (many-to-many junction, Connector_ID: 1878) ALTER TABLE `KP_INGSCHRVNPRSN_NTRLJKPRSN` ADD CONSTRAINT FK_KP_INGSCHRVNPRSN_NTRLJKPRSN_2 FOREIGN KEY (`NATUURLIJKPERSOON_ID`) REFERENCES `NATUURLIJKPERSOON` (`RECHTSPERSOON_ID`); -- NATUURLIJKPERSOON (many-to-many junction, Connector_ID: 1878) ALTER TABLE `KP_NTRLJKPRSN_RCHTSPRSN` ADD CONSTRAINT FK_KP_NTRLJKPRSN_RCHTSPRSN_1 FOREIGN KEY (`NATUURLIJKPERSOON_ID`) REFERENCES `NATUURLIJKPERSOON` (`RECHTSPERSOON_ID`); -- NATUURLIJKPERSOON (many-to-many junction, Connector_ID: 1898) ALTER TABLE `KP_NTRLJKPRSN_RCHTSPRSN` ADD CONSTRAINT FK_KP_NTRLJKPRSN_RCHTSPRSN_2 FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- RECHTSPERSOON (many-to-many junction, Connector_ID: 1898) ALTER TABLE `KP_NTNTRLJKPRSN_NTRLJKPRSN` ADD CONSTRAINT FK_KP_NTNTRLJKPRSN_NTRLJKPRSN_1 FOREIGN KEY (`NIETNATUURLIJKPERSOON_ID`) REFERENCES `NIETNATUURLIJKPERSOON` (`RECHTSPERSOON_ID`); -- NIETNATUURLIJKPERSOON (many-to-many junction, Connector_ID: 1970) ALTER TABLE `KP_NTNTRLJKPRSN_NTRLJKPRSN` ADD CONSTRAINT FK_KP_NTNTRLJKPRSN_NTRLJKPRSN_2 FOREIGN KEY (`NATUURLIJKPERSOON_ID`) REFERENCES `NATUURLIJKPERSOON` (`RECHTSPERSOON_ID`); -- NATUURLIJKPERSOON (many-to-many junction, Connector_ID: 1970) 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 `INGESCHREVENPERSOON` ADD CONSTRAINT FK_INGESCHREVENPERSOON_OUDER_1 FOREIGN KEY (`OUDER_1_RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- OUDER_1 (1 to 1, Connector_ID: 1871) ALTER TABLE `INGESCHREVENPERSOON` ADD CONSTRAINT FK_INGESCHREVENPERSOON_OUDER_2 FOREIGN KEY (`OUDER_2_RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- OUDER_2 (1 to 1, Connector_ID: 1873) ALTER TABLE `INGEZETENE` ADD CONSTRAINT FK_INGEZETENE_HEEFT FOREIGN KEY (`HEEFT_VERBLIJFSTITEL_ID`) REFERENCES `VERBLIJFSTITEL` (`VERBLIJFSTITEL_ID`); -- HEEFT (0..* to 0..1, Connector_ID: 1875) ALTER TABLE `INGESCHREVENPERSOON` ADD CONSTRAINT FK_INGESCHREVENPERSOON_HEEFT FOREIGN KEY (`HEEFT_HUISHOUDEN_ID`) REFERENCES `HUISHOUDEN` (`HUISHOUDEN_ID`); -- HEEFT (0..1 to 1..*, Connector_ID: 1955) ALTER TABLE `NATIONALITEIT` ADD CONSTRAINT FK_NATIONALITEIT_HEEFT FOREIGN KEY (`HEEFT_RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- HEEFT (1 to 1..*, Connector_ID: 1956) ALTER TABLE `RECHTSPERSOON` ADD CONSTRAINT FK_RECHTSPERSOON_HEEFT FOREIGN KEY (`HEEFT_ADRESBUITENLAND_ID`) REFERENCES `ADRESBUITENLAND` (`ADRESBUITENLAND_ID`); -- HEEFT (1 to 0..1, Connector_ID: 1958)