CREATE TABLE [INGESCHREVENPERSOON] ( [INGESCHREVENPERSOON_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_INGESCHREVENPERSOON_ID] INT, [OUDER_2_INGESCHREVENPERSOON_ID] INT, [PARTNERID] VARCHAR(255), [REDENEINDEBEWONING] DATE, [REDENOPSCHORTINGBIJHOUDING] VARCHAR(200), [SIGNALERINGREISDOCUMENT] BIT, [VERBLIJFSTITEL] VARCHAR(255) ); CREATE TABLE [NIETNATUURLIJKPERSOON] ( [NIETNATUURLIJKPERSOON_ID] INT PRIMARY KEY, [DATUMAANVANG] DATE, [DATUMEINDE] DATE, [DATUMUITSCHRIJVING] DATE, [DATUMVOORTZETTING] DATE, [FAXNUMMER] VARCHAR(20), [INGESCHREVEN] BIT, [INOPRICHTING] BIT, [KVKNUMMER] VARCHAR(255), [NNPID] VARCHAR(255), [RECHTSVORM] VARCHAR(255), [RSINNUMMER] VARCHAR(255), [STATUTAIRENAAM] VARCHAR(255), [STATUTAIREZETEL] VARCHAR(255), [WEBSITEURL] VARCHAR(200) ); CREATE TABLE [CLIENT] ( [INGESCHREVENPERSOON_ID] INT PRIMARY KEY, [CODE] VARCHAR(80), [GEZAGSDRAGERGEKEND] BIT, [JURIDISCHESTATUS] VARCHAR(80), [WETTELIJKEVERTEGENWOORDIGING] VARCHAR(80) ); CREATE TABLE [SCHULDHULPTRAJECT] ( [SCHULDHULPTRAJECT_ID] INT PRIMARY KEY, [EINDDATUM] DATE, [HEEFT_TRAJECT_INGESCHREVENPERSOON_ID] INT, [OMSCHRIJVING] NVARCHAR(MAX), [STARTDATUM] DATE, [TOEKENNINGSDATUM] DATE, [TOTAALSCHULDBEDRAGBIJAANVANGSCHULD] DECIMAL(10,2) ); CREATE TABLE [SCHULDHULPORGANISATIE] ( [NIETNATUURLIJKPERSOON_ID] INT PRIMARY KEY, [NAAM] VARCHAR(200) ); CREATE TABLE [KP_CLNT_INGSCHRVNPRSN] ( [KP_CLNT_INGSCHRVNPRSN_ID] INT PRIMARY KEY, [CLIENT_ID] INT, [INGESCHREVENPERSOON_ID] INT ); CREATE TABLE [KP_SCHLDHLPRGNST_SCHLDHLPTRJCT] ( [KP_SCHLDHLPRGNST_SCHLDHLPTRJCT_ID] INT PRIMARY KEY, [SCHULDHULPORGANISATIE_ID] INT, [SCHULDHULPTRAJECT_ID] INT ); CREATE TABLE [KP_SCHLDHLPRGNST_NTNTRLJKPRSN] ( [KP_SCHLDHLPRGNST_NTNTRLJKPRSN_ID] INT PRIMARY KEY, [SCHULDHULPORGANISATIE_ID] INT, [NIETNATUURLIJKPERSOON_ID] INT ); ALTER TABLE [SCHULDHULPORGANISATIE] ADD CONSTRAINT FK_SCHULDHULPORGANISATIE_GEN_NIETNATUURLIJKPERSOON FOREIGN KEY ([NIETNATUURLIJKPERSOON_ID]) REFERENCES [NIETNATUURLIJKPERSOON] ([NIETNATUURLIJKPERSOON_ID]); -- Generalization to NIETNATUURLIJKPERSOON ALTER TABLE [CLIENT] ADD CONSTRAINT FK_CLIENT_GEN_INGESCHREVENPERSOON FOREIGN KEY ([INGESCHREVENPERSOON_ID]) REFERENCES [INGESCHREVENPERSOON] ([INGESCHREVENPERSOON_ID]); -- Generalization to INGESCHREVENPERSOON ALTER TABLE [KP_CLNT_INGSCHRVNPRSN] ADD CONSTRAINT FK_KP_CLNT_INGSCHRVNPRSN_1 FOREIGN KEY ([CLIENT_ID]) REFERENCES [CLIENT] ([INGESCHREVENPERSOON_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] ([INGESCHREVENPERSOON_ID]); -- INGESCHREVENPERSOON (many-to-many junction, Connector_ID: 958) ALTER TABLE [KP_SCHLDHLPRGNST_SCHLDHLPTRJCT] ADD CONSTRAINT FK_KP_SCHLDHLPRGNST_SCHLDHLPTRJCT_1 FOREIGN KEY ([SCHULDHULPORGANISATIE_ID]) REFERENCES [SCHULDHULPORGANISATIE] ([NIETNATUURLIJKPERSOON_ID]); -- SCHULDHULPORGANISATIE (many-to-many junction, Connector_ID: 967) ALTER TABLE [KP_SCHLDHLPRGNST_SCHLDHLPTRJCT] ADD CONSTRAINT FK_KP_SCHLDHLPRGNST_SCHLDHLPTRJCT_2 FOREIGN KEY ([SCHULDHULPTRAJECT_ID]) REFERENCES [SCHULDHULPTRAJECT] ([SCHULDHULPTRAJECT_ID]); -- SCHULDHULPTRAJECT (many-to-many junction, Connector_ID: 967) ALTER TABLE [KP_SCHLDHLPRGNST_NTNTRLJKPRSN] ADD CONSTRAINT FK_KP_SCHLDHLPRGNST_NTNTRLJKPRSN_1 FOREIGN KEY ([SCHULDHULPORGANISATIE_ID]) REFERENCES [SCHULDHULPORGANISATIE] ([NIETNATUURLIJKPERSOON_ID]); -- SCHULDHULPORGANISATIE (many-to-many junction, Connector_ID: 968) ALTER TABLE [KP_SCHLDHLPRGNST_NTNTRLJKPRSN] ADD CONSTRAINT FK_KP_SCHLDHLPRGNST_NTNTRLJKPRSN_2 FOREIGN KEY ([NIETNATUURLIJKPERSOON_ID]) REFERENCES [NIETNATUURLIJKPERSOON] ([NIETNATUURLIJKPERSOON_ID]); -- NIETNATUURLIJKPERSOON (many-to-many junction, Connector_ID: 968) ALTER TABLE [SCHULDHULPTRAJECT] ADD CONSTRAINT FK_SCHULDHULPTRAJECT_HEEFT_TRAJECT FOREIGN KEY ([HEEFT_TRAJECT_INGESCHREVENPERSOON_ID]) REFERENCES [INGESCHREVENPERSOON] ([INGESCHREVENPERSOON_ID]); -- HEEFT_TRAJECT (0..* to 1..2, Connector_ID: 965) ALTER TABLE [INGESCHREVENPERSOON] ADD CONSTRAINT FK_INGESCHREVENPERSOON_OUDER_1 FOREIGN KEY ([OUDER_1_INGESCHREVENPERSOON_ID]) REFERENCES [INGESCHREVENPERSOON] ([INGESCHREVENPERSOON_ID]); -- OUDER_1 (1 to 1, Connector_ID: 1871) ALTER TABLE [INGESCHREVENPERSOON] ADD CONSTRAINT FK_INGESCHREVENPERSOON_OUDER_2 FOREIGN KEY ([OUDER_2_INGESCHREVENPERSOON_ID]) REFERENCES [INGESCHREVENPERSOON] ([INGESCHREVENPERSOON_ID]); -- OUDER_2 (1 to 1, Connector_ID: 1873)