Archief - one to many relationship

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

CrazyMonkeyz

Legacy Member
Ik zou in mijn database relaties willen leggen tussen gebruikers.
Zo hebben we steeds een "admin" die enkele gewone "members" onder hem heeft.

Nu heb ik echter al mijn gebruikers (admins+members) in één tabel en ik vroeg me af of dit dan mogelijk was?
Of is het dan beter om de admins en members elk in een aparte tabel te plaatsen?

Alvast bedankt!

bealzebub

Legacy Member
Een self referential relatie hé:

extra tabel "user_relations" of iets dergelijks met daarin "admin_id" en "user_id" (en eventueel extra info moest je da willen). Foreign key checks op beide relaties, index op beide velden (indien dat door de foreign key nog niet automatisch gebeurt, hangt van de db af).

Code:
admin_id   user_id
   1          10
   1          11
   1          12
   2          20
   2          21

Via joins en table aliassing beide kanten van de relatie makkelijk samenrapen (of enkel de users bij een admin). Als je een ORM gebruikt zal die wel alles in huis hebben om dat makkelijker te maken.

sandervdw

Legacy Member
Kan perfect door gewoon de admin-id kolom toe te voegen aan de tabel. Voor de admins zet je hier dezelfde key in als in hun PK.
Code:
PK         ADMIN_ID
1                1             (admin)
2                1
3                3             (admin)
4                3
5                1

woony

Legacy Member
ja zeker geen extra tabel, normalisatie moet je niet mee overdruiven.

zoals reeds aangegeven gewoon een 'parent'-id bijhouden.

bealzebub

Legacy Member
sandervdw zei:
Kan perfect door gewoon de admin-id kolom toe te voegen aan de tabel. Voor de admins zet je hier dezelfde key in als in hun PK.
Code:
PK         ADMIN_ID
1                1             (admin)
2                1
3                3             (admin)
4                3
5                1

Gvd idd, was nog nie goe wakker precies. In een one-to-many idd gewoon een parent kolom toevoegen. En te zeggen dat de apps waar ik op werk er vol van zitten :)

CrazyMonkeyz

Legacy Member
Bedankt voor de antwoorden! Gaat me zeker vooruit helpen
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan