webForumDet fria alternativet

Smidigt sätt att lägga upp en databas?

Databaser & SQL

2 svar · 200 visningar · startad av Rocket

Medlem sedan feb. 2000372 inlägg
Frågan#1

Jag håller på att göra en databas över alla skivor och låtar som ett band har släppt. Jag har lite problem med att skapa en vättig koppling mellan tabellen med låt namn och tabellen med skivor. Saken är den att en låt kan finnas med på många skivor så att bara skriva in ett record_id för varje låt fungerar inte. Någon som kan komma på något smidigt sätt att ha flera record_id för vissa av låtarna?

Medlem sedan juni 20008 205 inlägg
#2

Ah, många-till-många-relationer! :)
Du får ha en tredje tabell "mellan" dem, en s.k. kopplingstabell. Exempel:

Skiva - tabell över skivor
ArtistID
Skivnamn
SkivID (primärnyckel - egentligen skulle det kunna vara ArtistID kombinerat med Skivnamn, men vafan... )

Låt - tabell över låtar
LåtID (primärnyckel)
ArtistID
Låtlängd

Spår - tabell över förekomster av låtar på skivor
LåtID
SkivID
LåtID och SkivID utgör primärnyckel tillsammans (en låt förekommer bara en gång / skiva, får man hoppas ;) )

------------------
All things serve the Beam!

[Redigerat av spango den 19 jul 2001]

Medlem sedan feb. 2000372 inlägg
#3

Det låter mycket bra. Jag ska testa och se hur det blir.

262 ms totalt · 4 externa anrop · v20260731065814-full.d8c17768
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)