CREATE TABLE `VASTGOEDOBJECT` ( `VASTGOEDOBJECT_ID` INT PRIMARY KEY, `AANTALETAGES` INT, `AANTALPARKEERPLAATSEN` INT, `AANTALRIOLERINGEN` INT, `ADRESAANDUIDING` VARCHAR(255), `AFGEKOCHTEERFPACHT` BOOLEAN, `AFGESPROKENCONDITIESCORE` VARCHAR(255), `AFKOOPWAARDE` VARCHAR(255), `ASBESTRAPPORTAGEAANWEZIG` BOOLEAN, `BEDRAGAANKOOP` DECIMAL(10,2), `BESTEMMINGSPLAN` VARCHAR(200), `BOEKWAARDE` VARCHAR(255), `BOUWJAAR` INT, `BOUWWERK` VARCHAR(80), `BOVENLIGGENDNIVEAU` VARCHAR(80), `BOVENLIGGENDNIVEAUCODE` VARCHAR(20), `BRUTOVLOEROPPERVLAKTE` INT, `CO2UITSTOOT` INT, `CONDITIESCORE` VARCHAR(255), `DATUMAFSTOTEN` DATE, `DATUMBEREKENINGOPPERVLAK` DATE, `DATUMEIGENDOM` DATE, `DATUMVERKOOP` DATE, `DEELPORTEFEUILLE` VARCHAR(80), `ENERGIEKOSTEN` DECIMAL(10,2), `ENERGIELABEL` VARCHAR(255), `ENERGIEVERBRUIK` INT, `FISCALEWAARDE` VARCHAR(255), `FOTO` VARCHAR(255), `GEARCHIVEERD` BOOLEAN, `HERBOUWWAARDE` VARCHAR(255), `HOOFDSTUK` VARCHAR(80), `IDENTIFICATIE` VARCHAR(80), `JAARLAATSTERENOVATIE` VARCHAR(255), `KOSTENPLAATS` DECIMAL(10,2), `LOCATIE` VARCHAR(255), `MARKTWAARDE` VARCHAR(255), `MONUMENT` VARCHAR(255), `NAAM` VARCHAR(80), `OBJECTSTATUS` VARCHAR(255), `OBJECTSTATUSCODE` VARCHAR(255), `OBJECTTYPE` VARCHAR(80), `OBJECTTYPECODE` VARCHAR(255), `OMSCHRIJVING` VARCHAR(80), `ONDERHOUDSCATEGORIE` VARCHAR(80), `OPPERVLAKTEKANTOOR` INT, `PORTEFEUILLE` VARCHAR(80), `PORTEFEUILLECODE` VARCHAR(255), `PROVINCIE` VARCHAR(255), `TOELICHTING` TEXT, `VERHUURBAARVLOEROPPERVLAK` INT, `VERKOOPBAARHEID` VARCHAR(80), `VERKOOPBEDRAG` DECIMAL(10,2), `VERZEKERDEWAARDE` VARCHAR(255), `WAARDEGROND` VARCHAR(255), `WAARDEOPSTAL` VARCHAR(255), `WIJK` VARCHAR(255), `WOZWAARDE` VARCHAR(255) ) ENGINE=InnoDB; CREATE TABLE `OBJECTRELATIEROL_ENUM` ( `OBJECTRELATIEROL_ENUM_ID` INT PRIMARY KEY, VALUE VARCHAR(255) ) ENGINE=InnoDB; INSERT INTO `OBJECTRELATIEROL_ENUM` (`OBJECTRELATIEROL_ENUM_ID`, VALUE) VALUES (1, 'ACCOUNTMANAGER'), (2, 'ACCOUNTMANAGER_VERKOOP_JURIST_'), (3, 'BEHEERDER'), (4, 'SERVICE_PROVIDER'), (5, 'TAXATEUR'), (6, 'TECHNISCH_BEHEERDER'); CREATE TABLE `AANBESTEDING` ( `AANBESTEDING_ID` INT PRIMARY KEY, `DATUMPUBLICATIE` DATE, `DATUMSTART` DATE, `DIGITAAL` BOOLEAN, `NAAM` VARCHAR(200), `PROCEDURE` VARCHAR(255), `REFERENTIENUMMER` VARCHAR(80), `SCOREMAXIMAAL` INT, `STATUS` VARCHAR(80), `TENDERNEDKENMERK` VARCHAR(80), `TYPE` VARCHAR(255), `VOLGENDESLUITING` 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), `IDENTIFICATIE` VARCHAR(255), `KVKNUMMER` VARCHAR(20), `NAAM` VARCHAR(200), `RECHTSVORM` VARCHAR(100), `REKENINGNUMMER` VARCHAR(255), `TELEFOONNUMMER` VARCHAR(20) ) ENGINE=InnoDB; CREATE TABLE `AANBESTEDING_VASTGOED` ( `AANBESTEDING_ID` INT PRIMARY KEY ) ENGINE=InnoDB; CREATE TABLE `WERKBON` ( `WERKBON_ID` INT PRIMARY KEY, `BETREFT_VASTGOEDOBJECT_ID` INT, `UITVOERING_VAN_AANBESTEDING_ID` INT, `VOERT_WERK_UIT_CONFORM_RECHTSPERSOON_ID` INT ) ENGINE=InnoDB; CREATE TABLE `OBJECTRELATIE` ( `OBJECTRELATIE_ID` INT PRIMARY KEY, `HEEFT_RECHTSPERSOON_ID` INT, `HEEFT_VASTGOEDOBJECT_ID` INT, `ROL_ENUM_ID` INT ) ENGINE=InnoDB; CREATE TABLE `LEVERANCIER` ( `RECHTSPERSOON_ID` INT PRIMARY KEY, `NAAM` VARCHAR(200), `NUMMER` VARCHAR(255) ) ENGINE=InnoDB; CREATE TABLE `KP_ANBSTDNG_VSTGD_ANBSTDNG` ( `KP_ANBSTDNG_VSTGD_ANBSTDNG_ID` INT PRIMARY KEY, `AANBESTEDING_VASTGOED_ID` INT, `AANBESTEDING_ID` INT ) ENGINE=InnoDB; CREATE TABLE `KP_LVRNCR_RCHTSPRSN` ( `KP_LVRNCR_RCHTSPRSN_ID` INT PRIMARY KEY, `LEVERANCIER_ID` INT, `RECHTSPERSOON_ID` INT ) ENGINE=InnoDB; CREATE TABLE `KP_LVRNCR_ANBSTDNG_VSTGD` ( `KP_LVRNCR_ANBSTDNG_VSTGD_ID` INT PRIMARY KEY, `LEVERANCIER_ID` INT, `AANBESTEDING_VASTGOED_ID` INT ) ENGINE=InnoDB; ALTER TABLE `AANBESTEDING_VASTGOED` ADD CONSTRAINT FK_AANBESTEDING_VASTGOED_GEN_AANBESTEDING FOREIGN KEY (`AANBESTEDING_ID`) REFERENCES `AANBESTEDING` (`AANBESTEDING_ID`); -- Generalization to AANBESTEDING ALTER TABLE `LEVERANCIER` ADD CONSTRAINT FK_LEVERANCIER_GEN_RECHTSPERSOON FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- Generalization to RECHTSPERSOON ALTER TABLE `KP_LVRNCR_RCHTSPRSN` ADD CONSTRAINT FK_KP_LVRNCR_RCHTSPRSN_1 FOREIGN KEY (`LEVERANCIER_ID`) REFERENCES `LEVERANCIER` (`RECHTSPERSOON_ID`); -- LEVERANCIER (many-to-many junction, Connector_ID: 390) ALTER TABLE `KP_LVRNCR_RCHTSPRSN` ADD CONSTRAINT FK_KP_LVRNCR_RCHTSPRSN_2 FOREIGN KEY (`RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- RECHTSPERSOON (many-to-many junction, Connector_ID: 390) ALTER TABLE `KP_LVRNCR_ANBSTDNG_VSTGD` ADD CONSTRAINT FK_KP_LVRNCR_ANBSTDNG_VSTGD_1 FOREIGN KEY (`LEVERANCIER_ID`) REFERENCES `LEVERANCIER` (`RECHTSPERSOON_ID`); -- LEVERANCIER (many-to-many junction, Connector_ID: 586) ALTER TABLE `KP_LVRNCR_ANBSTDNG_VSTGD` ADD CONSTRAINT FK_KP_LVRNCR_ANBSTDNG_VSTGD_2 FOREIGN KEY (`AANBESTEDING_VASTGOED_ID`) REFERENCES `AANBESTEDING_VASTGOED` (`AANBESTEDING_ID`); -- AANBESTEDING_VASTGOED (many-to-many junction, Connector_ID: 586) ALTER TABLE `KP_ANBSTDNG_VSTGD_ANBSTDNG` ADD CONSTRAINT FK_KP_ANBSTDNG_VSTGD_ANBSTDNG_1 FOREIGN KEY (`AANBESTEDING_VASTGOED_ID`) REFERENCES `AANBESTEDING_VASTGOED` (`AANBESTEDING_ID`); -- AANBESTEDING_VASTGOED (many-to-many junction, Connector_ID: 588) ALTER TABLE `KP_ANBSTDNG_VSTGD_ANBSTDNG` ADD CONSTRAINT FK_KP_ANBSTDNG_VSTGD_ANBSTDNG_2 FOREIGN KEY (`AANBESTEDING_ID`) REFERENCES `AANBESTEDING` (`AANBESTEDING_ID`); -- AANBESTEDING (many-to-many junction, Connector_ID: 588) ALTER TABLE `WERKBON` ADD CONSTRAINT FK_WERKBON_VOERT_WERK_UIT_CONFORM FOREIGN KEY (`VOERT_WERK_UIT_CONFORM_RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- VOERT_WERK_UIT_CONFORM (1 to 0..*, Connector_ID: 538) ALTER TABLE `WERKBON` ADD CONSTRAINT FK_WERKBON_BETREFT FOREIGN KEY (`BETREFT_VASTGOEDOBJECT_ID`) REFERENCES `VASTGOEDOBJECT` (`VASTGOEDOBJECT_ID`); -- BETREFT (0..* to 1, Connector_ID: 542) ALTER TABLE `OBJECTRELATIE` ADD CONSTRAINT FK_OBJECTRELATIE_HEEFT FOREIGN KEY (`HEEFT_VASTGOEDOBJECT_ID`) REFERENCES `VASTGOEDOBJECT` (`VASTGOEDOBJECT_ID`); -- HEEFT (1 to 0..*, Connector_ID: 556) ALTER TABLE `WERKBON` ADD CONSTRAINT FK_WERKBON_UITVOERING_VAN FOREIGN KEY (`UITVOERING_VAN_AANBESTEDING_ID`) REFERENCES `AANBESTEDING` (`AANBESTEDING_ID`); -- UITVOERING_VAN (0..1 to 0..*, Connector_ID: 587) ALTER TABLE `OBJECTRELATIE` ADD CONSTRAINT FK_OBJECTRELATIE_HEEFT_2 FOREIGN KEY (`HEEFT_RECHTSPERSOON_ID`) REFERENCES `RECHTSPERSOON` (`RECHTSPERSOON_ID`); -- HEEFT (1 to 0..*, Connector_ID: 1902) ALTER TABLE `OBJECTRELATIE` ADD CONSTRAINT FK_OBJECTRELATIE_ROL_ENUM_ID FOREIGN KEY (`ROL_ENUM_ID_OBJECTRELATIEROL_ENUM_ID`) REFERENCES `OBJECTRELATIEROL_ENUM` (`OBJECTRELATIEROL_ENUM_ID`); -- ROL_ENUM_ID (1 to 1, Connector_ID: enum_ref)