Hoi allemaal,
Bij voorbaat sorry voor de vage topic titel.. Ik kon echt niets beters bedenken in een paar woordjes.
Wat is er aan de hand ? Ik ben momenteel bezig met het opzetten van een database in Postgres en eigenlijk gaat dat heel goed. Natuurlijk is er een probleempje/vraag :
Gegeven de tabel (minimaal) :
Relatie:
ID (int4) (primary key)
Debiteurnummer (char(6))
Naam (varchar(40))
Geblokkeerd (boolean)
...
De output uit deze tabel moet straks de input gaan vormen voor een reeds bestaand systeem. Hierin is toegestaan dat meerdere relaties hetzelfde debiteurnummer hebben (vraag me niet waarom, het is er
).
Nu wil ik in deze tabel het volgende kunnen aangeven (bij INSERT/UPDATE):
Ik heb al een aantal tutorials/how-to's over constraints doorgelezen, maar eerlijk gezegd kom ik daar niet verder mee. Kan iemand me een zetje geven ? (als dit uberhaupt mogelijk is)
Bij voorbaat sorry voor de vage topic titel.. Ik kon echt niets beters bedenken in een paar woordjes.
Wat is er aan de hand ? Ik ben momenteel bezig met het opzetten van een database in Postgres en eigenlijk gaat dat heel goed. Natuurlijk is er een probleempje/vraag :
Gegeven de tabel (minimaal) :
Relatie:
ID (int4) (primary key)
Debiteurnummer (char(6))
Naam (varchar(40))
Geblokkeerd (boolean)
...
De output uit deze tabel moet straks de input gaan vormen voor een reeds bestaand systeem. Hierin is toegestaan dat meerdere relaties hetzelfde debiteurnummer hebben (vraag me niet waarom, het is er
Nu wil ik in deze tabel het volgende kunnen aangeven (bij INSERT/UPDATE):
Je kunt natuurlijk een UNIQUE INDEX zetten op debiteurnummer, maar dan ontbreekt nog steeds de check op andere relaties die evt. 'geblokkeerd' staan.Als het debiternummer reeds bestaat, dan mag je de relatie niet toevoegen, tenzij die andere relatie 'geblokkeerd' is.
Je mag een relatie niet deblokkeren (dus van true => false), als er daardoor dubbele debiteurnummers ontstaan.
Ik heb al een aantal tutorials/how-to's over constraints doorgelezen, maar eerlijk gezegd kom ik daar niet verder mee. Kan iemand me een zetje geven ? (als dit uberhaupt mogelijk is)
SIZE does matter.
"You're go at throttle up!"