Hallo allemaal,
Ik heb de volgnede tabel:
Dit levert dan het volgende grafisch geavanceerde plaatje op:

Maar als ik een node wil verwijderen, dan moet hij ook alle child nodes verwijderen...En daar zit het probleem. Cascade delete werkt niet in met recursieve sleutels (ParentNodeID is een FK naar NodeID)
Er zijn meerdere tabellen die een koppeling hebben met NodeID, en daar werkt cascade delete prima!
Hoe kan ik een select opbouwen die bijvoorbeeld alle child nodes opleverd van NodeID 7 (dus resultaat 9,8,10)?
Ik heb het al een keer met een recursieve functie gedaan in C#, maar volgens mij is dat een beetje omslachtig...
Hoe kan ik dit nu het best doen?
Ik heb de volgnede tabel:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| NodeID ParentNodeID ----------- ------------ 1 1 2 1 3 1 4 2 5 2 6 3 7 3 8 7 9 7 10 8 |
Dit levert dan het volgende grafisch geavanceerde plaatje op:

Maar als ik een node wil verwijderen, dan moet hij ook alle child nodes verwijderen...En daar zit het probleem. Cascade delete werkt niet in met recursieve sleutels (ParentNodeID is een FK naar NodeID)
Er zijn meerdere tabellen die een koppeling hebben met NodeID, en daar werkt cascade delete prima!
Hoe kan ik een select opbouwen die bijvoorbeeld alle child nodes opleverd van NodeID 7 (dus resultaat 9,8,10)?
Ik heb het al een keer met een recursieve functie gedaan in C#, maar volgens mij is dat een beetje omslachtig...
Hoe kan ik dit nu het best doen?