webForumDet fria alternativet

primära och sekundära nycklar

Databaser & SQL

8 svar · 2 670 visningar · startad av Undran

Medlem sedan jan. 200915 inlägg
Frågan#1

Kan någon förklara på ett enkelt sätt vad skillnaden mellan primära och främmande nycklar?

Är främmande nycklar samma som sekundära nycklar?

Tack på förhand
Undran :)

Medlem sedan sep. 2005673 inlägg
#2

Kan någon förklara på ett enkelt sätt vad skillnaden mellan primära och främmande nycklar?

En primär nyckel är ett unikt värde i en kolumn i en tabell som används för att koppla samman en eller flera rader i en annan tabell (sekundär nyckel).

Exempel, en tabell med företag och en tabell med anställda. Ett företag kan ha många anställda... då har varje företag ett unikt id som är din primärnyckel och samma id används sedan i tabellen med dina anställda för att du ska veta på vilket företag den anställde arbetar på. Samma id på båda ställena alltså, men i tabellen anställda kan ju samma id förekomma flera gånger eftersom ett företag kan ha många anställda = sekundär nyckel. Det är alltså en teknik för att bestämma relationen mellan tabellerna.

Är främmande nycklar samma som sekundära nycklar?

Japp!

Medlem sedan dec. 20025 483 inlägg
#3

Nej, en primärnyckel P är en eller flera kolumner som tillsammans unikt identifierar en rad i en tabell T. En sekundär nyckel har samma egenskaper som P, men har valts bort som primärnyckel i T till förmån för P.

En främmande nyckel är inte detsamma som en sekundär nyckel. En främmande nyckel i tabell U refererar till en annan tabells primärnyckel, men behöver inte vara - och är oftast inte - kandidatnyckel i U.

Medlem sedan jan. 200915 inlägg
#4

primär nyckel och främmande nyckel

Hej igen

Nu har jag försökt göra en databas med primär nyckel och främmande nyckel.

Databas för biografer och deras filmer har jag kallat det jag har skissat.
Vad jag inte förstår är:
Ska jag skapa en primärnyckel som jag kallar ID+ tabellens namn?
Eller kan respektive tabell ändå fungera eftersom de har fått en främmande nyckel som referens till primär nyckeln?

Hoppas Ni förstår vad jag beskriver!

Vh
Undran

Medlem sedan sep. 2005673 inlägg
#5

Häpp, där ser man... ursäkta om jag lånar tråden men en fråga i sammanhanget,... vad är kandidat-nyckel?

Medlem sedan jan. 200915 inlägg
#6

Om jag har förstått rätt är en kandidat-nyckel en primär nyckel som man inte har valt.
Se länk

Medlem sedan jan. 200915 inlägg
#7

Har jag missuppfattat helt detta?

Ska varje tabell ha en primär nyckel?
Skapar man i kolumnerna en främmande nyckel?

Det finns inga dumma frågor sägs det.
Undran

Medlem sedan mars 20007 896 inlägg
#8

Varje tabell behöver inte ha en primärnyckel, men utan [minst] en primärnyckel kan tabellerna inte indexeras - vilket [oftast] leder till sämre prestanda i dina applikationer då sökningar i tabellerna kommer att ta längre tid.

Undran skrev:

Skapar man i kolumnerna en främmande nyckel?

Den här frågan förstår jag inte. Vad menar du?

Medlem sedan dec. 20025 483 inlägg
#9

Relationerna mellan de tilltänkta tabellerna ser inte alldeles rätt ut. Fundera på vilka entiteter som hör ihop; i din skiss verkar alla (utom Bio då förstås) vara direkt relaterade till Bio och det är väl inte riktigt korrekt.

254 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)