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) ); 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] BIT, [INGEZETENE] BIT, [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] BIT, [VERBLIJFSTITEL] VARCHAR(255) ); 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] BIT, [INDICATIEOVERLEDEN] BIT, [LANDOVERLIJDEN] VARCHAR(255), [NATIONALITEIT] VARCHAR(100), [OVERLIJDENSPLAATS] VARCHAR(200), [VOORLETTERSAANSCHRIJVING] VARCHAR(20), [VOORNAMEN] VARCHAR(200), [VOORNAMENAANSCHRIJVING] VARCHAR(200), [VOORVOEGSELGESLACHTSNAAM] VARCHAR(80) ); CREATE TABLE [CLIENT] ( [RECHTSPERSOON_ID] INT PRIMARY KEY, [CODE] VARCHAR(80), [GEZAGSDRAGERGEKEND] BIT, [JURIDISCHESTATUS] VARCHAR(80), [WETTELIJKEVERTEGENWOORDIGING] VARCHAR(80) ); CREATE TABLE [KP_NTRLJKPRSN_RCHTSPRSN] ( [KP_NTRLJKPRSN_RCHTSPRSN_ID] INT PRIMARY KEY, [NATUURLIJKPERSOON_ID] INT, [RECHTSPERSOON_ID] INT ); CREATE TABLE [KP_INGSCHRVNPRSN_NTRLJKPRSN] ( [KP_INGSCHRVNPRSN_NTRLJKPRSN_ID] INT PRIMARY KEY, [INGESCHREVENPERSOON_ID] INT, [NATUURLIJKPERSOON_ID] INT ); CREATE TABLE [KP_CLNT_INGSCHRVNPRSN] ( [KP_CLNT_INGSCHRVNPRSN_ID] INT PRIMARY KEY, [CLIENT_ID] INT, [INGESCHREVENPERSOON_ID] INT ); 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)