Een waarschijnlijk simpele vraag, maar kom er even niet uit...
De volgende situatie:
- Tabel "persoon": ID, voornaam, achternaam etc.
- Tabel "adres": ID, straatnaam, huisnummer etc.
- Koppeltabel "persoon_adres": ID van persoon, ID van adres
De kolommen in de koppeltabel zijn FK's, waarbij er nu een constraint op zit dat als de persoon of het adres verwijderd wordt, de koppeling ook verwijderd wordt.
De reden dat er niet gewoon een "persoon_adres" tabel is waar direct de adres gegevens in staan is omdat ik ook "klant" en "leverancier" e.d. wil kunnen koppelen, maar vooral omdat ik graag per adres een unieke ID zou willen hebben. (ivm routes uitzetten)
Enige probleem met bovenstaande is dat je meestal een "persoon" zult verwijderen en als er dan geen koppeling meer bestaat met dat adres (dus ook niet naar andere personen, klanten e.d.) het adres nooit uit de database verdwijnt...
Nu zit ik zelf te denken aan een stored procedure om dit af te vangen, maar kan me voorstellen dat er een elegantere oplossing mogelijk moet zijn... iemand ?
De volgende situatie:
- Tabel "persoon": ID, voornaam, achternaam etc.
- Tabel "adres": ID, straatnaam, huisnummer etc.
- Koppeltabel "persoon_adres": ID van persoon, ID van adres
De kolommen in de koppeltabel zijn FK's, waarbij er nu een constraint op zit dat als de persoon of het adres verwijderd wordt, de koppeling ook verwijderd wordt.
De reden dat er niet gewoon een "persoon_adres" tabel is waar direct de adres gegevens in staan is omdat ik ook "klant" en "leverancier" e.d. wil kunnen koppelen, maar vooral omdat ik graag per adres een unieke ID zou willen hebben. (ivm routes uitzetten)
Enige probleem met bovenstaande is dat je meestal een "persoon" zult verwijderen en als er dan geen koppeling meer bestaat met dat adres (dus ook niet naar andere personen, klanten e.d.) het adres nooit uit de database verdwijnt...
Nu zit ik zelf te denken aan een stored procedure om dit af te vangen, maar kan me voorstellen dat er een elegantere oplossing mogelijk moet zijn... iemand ?
Iedereen wil terug naar de natuur, maar niemand wil lopend...