Dette er sandsynligvis alt for forældet til at være nyttigt, men jeg sender et indlæg, hvis det hjælper andre mennesker!
Jeg gemmer urettede grafer som dit andet eksempel og har en begrænsning om, at node_a skal være mindre end node_b. Du placerer så trivielt en UNIQUE
begrænsning på parret og ved, at dataene er konsistente. Forespørgsler skal lidt mere arbejde ved at sammenligne node_a med den mindste af {a,b} og node_b den anden værdi. PostgreSQL (den DB jeg kender bedst) giver GREATEST()
og LEAST()
funktioner, der hjælper her.