webForumDet fria alternativet

Uppbyggnad av tabell för resvägar

Databaser & SQL

8 svar · 271 visningar · startad av KalsongCesar

Medlem sedan mars 2001339 inlägg
Frågan#1

Tänkte jag skulle få till en databas med möjliga resvägar med buss eller flyg.

Så jag la upp en tabell som håller informationen om alla orterna som finns..
Sen skapade jag en tabell där jag tyckte att det borde gå att ha tex
from,tom
1,2
1,3
1,6

dvs ort nr 1 kan man resa till 2,3,6 ifrån. Men när jag skapar relationen mellan huvudtabellen och den sistnämda med alla reskombinationer så får jag inte upp ngr orter.. skapar jag en relation till enbart from så funkar det men det måste väl finnas ngn koppling till båda kolumnerna.. eller går inte sånt?

Tacksam för svar

Medlem sedan juli 200012 978 inlägg
#2

Du måste väl ha en pseudotabell för den ena!

Medlem sedan mars 2001339 inlägg
#3

är inte riktigt säker på vad du menar.. kan du ge exempel?

Medlem sedan juni 200032 967 inlägg
#4

Eftersom du ska ha två olika värden från den ena tabellen, med olika villkor, så får du också ha två instanser av den tabellen.

Något sånt här kanske kan fungera?

SELECT a.Ort AS TravellingFrom, b.Ort AS TravellingTo 
FROM Orter AS a, Orter as B, Relactionstabell AS r 
WHERE a.OrtID = r.Ort1 AND b.OrtID = r.Ort2 ORDER BY a.Ort ASC

Mvh,

Medlem sedan mars 2001339 inlägg
#5

Perfekt.
Tack för hjälpen..

När jag ska uppdatera tabellen som håller alla resvägar, är det ngt jag ska tänka på då eller?

Är detta rätt sätt att lägga upp tabellerna på? Eller finns det smartare sätt?

Medlem sedan mars 20034 471 inlägg
#6

Jag är inte riktigt säker på vad du är ute efter? Är det så att du har en tabell Orter där du lagrar id (nr) och namn (på orten) ev mera, och en annan tabell där du ska lagra MER info än bara alla kombinationer för att ta sig från x till y? Alltså:
Orter ((nr) namn, ...)
Resrutter ((till, från) info, ...)
där de extra parentesparet anger något som ger unika värden på resten, dvs nycklarna för relationen. I så fall är det väl bäst att ange både till och från i Resrutter som varande foreign keys referencing Orter.

Jag kanske missförstår frågan... :q

Medlem sedan mars 2001339 inlägg
#7

Jag är bara ute efter att
från ort 1 kan man åka till 1,2,3,4
och från ort 2 kan man bara åka till 1,3 tex
Sen så vill jag ju så klart ha informationen om dessa orter och nu är det bara förkortning och namn, men det kan ju rymmas mer sen.

Medlem sedan mars 20034 471 inlägg
#8

Okej! Då skapar du en tabell orter:
Orter
idnr Namn
1 Stockholm
2 Göteborg
...

och en tabell Resrutt
from to
1 2
1 3
1 4
2 1
2 4
...

Orter får primary key idnr, Resrutter får primary key (from, to) OCH
foreign key(from) references Orter, foreign key(to) references Orter
så är du i hamn.

Medlem sedan mars 2001339 inlägg
#9

Tack. Jag har löst de så som du sa. det var access som bråkade med relationerna när jag testade..
Tackar

256 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)