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 `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), `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 `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 `CLIENT` ( `RECHTSPERSOON_ID` INT PRIMARY KEY, `CODE` VARCHAR(80), `GEZAGSDRAGERGEKEND` BOOLEAN, `JURIDISCHESTATUS` VARCHAR(80), `WETTELIJKEVERTEGENWOORDIGING` VARCHAR(80) ) ENGINE=InnoDB; CREATE TABLE `KP_NTRLJKPRSN_RCHTSPRSN` ( `KP_NTRLJKPRSN_RCHTSPRSN_ID` INT PRIMARY KEY, `NATUURLIJKPERSOON_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 `KP_CLNT_INGSCHRVNPRSN` ( `KP_CLNT_INGSCHRVNPRSN_ID` INT PRIMARY KEY, `CLIENT_ID` INT, `INGESCHREVENPERSOON_ID` INT ) ENGINE=InnoDB; ALTER TABLE `CLIENT` ADD CONSTRAINT FK_CLIENT_GEN_INGESCHREVENPERSOON FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `INGESCHREVENPERSOON` (`RECHTSPERSOON_ID`); -- Generalization to INGESCHREVENPERSOON 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 `KP_CLNT_INGSCHRVNPRSN` ADD CONSTRAINT FK_KP_CLNT_INGSCHRVNPRSN_1 FOREIGN KEY (`CLIENT_ID`) REFERENCES `CLIENT` (`RECHTSPERSOON_ID`); -- CLIENT (many-to-many junction, Connector_ID: 958) ALTER TABLE `KP_CLNT_INGSCHRVNPRSN` ADD CONSTRAINT FK_KP_CLNT_INGSCHRVNPRSN_2 FOREIGN KEY (`INGESCHREVENPERSOON_ID`) REFERENCES `INGESCHREVENPERSOON` (`RECHTSPERSOON_ID`); -- INGESCHREVENPERSOON (many-to-many junction, Connector_ID: 958) 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 `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)