Avatar billede avminarm Juniormester
25. september 2002 - 11:48 Der er 5 kommentarer og
1 løsning

nøgler

hejsa

hvis man skal binde 4 tabeller sammen er det en fordel at have flere fremmednøgler ??

OBS: jeg ved ikke så meget om nøgler (endnu) opdagede først fremmednøgler ca. i forgårs ;-)
Avatar billede lasse_buck Nybegynder
25. september 2002 - 20:30 #1
Referentiel integritet er et system med regler, som bruges til at sikre, at relationer mellem poster i relaterede tabeller er gyldige, og at du ikke kommer til at slette eller ændre relaterede data.
Når du opretter primær- og fremmednøgler, sørger databasen for, at disse regler altid er overholdt:
http://www.aof-rodovre.info/edbside/edbopgaver/Access/Kursusfiler/Hvad%20er%20referentiel%20integritet.htm

Eksempel:
Tabellen ANSATTE har feltet MEDARBEJDERNR defineret som primær nøgle (dette felt er derfor også unikt).

Tabellen PEDELLER har feltet PEDELNAVN defineret som primær nøgle. Tabellen indeholder også feltet MEDARBEJDERNR som 'peger' på det samme nr i tabellen ANSATTE .

Hvis du opretter en fremmednøgle fra PEDELLER til ANSATTE på feltet MEDARBEJDERNR, får du fejl, hvis du forsøger at overtræde reglerne. Du kan f.eks. ikke insætte en ny pedel uden at han er oprettet som ansat først.
Avatar billede avminarm Juniormester
26. september 2002 - 08:01 #2
dvs en tabel med "rang 1" (her ansatte) og en tabel med "rang 2" (her pedeller) - så for mit vedkomne skal jeg have 4 tabeller der er ligesom ligger opdelt i rang 1 - 4.

Er det forstået rigtigt ?
Avatar billede lasse_buck Nybegynder
26. september 2002 - 08:56 #3
Nej, det afhænger af din datamodel. Det er ikke nødvendigvis et hieraki fra top til bund.

En fremmednøgle er et (eller flere) felter, som referer  til (peger på) en post i en anden tabel.

Tabellen PERSONER:
CPRNR er unik nøgle - der kan ikke være to personer med samme cpr.
Navn er et almindelig felt - ingen nøgle her
ADRESSEID peger på en adresse-post i tabellen ADRESSE.
HELBREDSID peger på en helbreds-post i tabellen HELBREDSDATA
ARBEJDSPLADSNR peger på en post i tabellen ARBEJDSPLADSER

Som du kan se, så afhænger relationerne helt af, hvordan vi har sammensat vores datamodel.

Her er et eksempel med relationer på kryds og tværs.
ADRESSE<--PERSONER<--ANSATTE<--PEDELLER-->SLØJDLOKALER
ADRESSE<--PERSONER<--ANSATTE<--LÆRERE<--OVERLÆRERE
ADRESSE<--PERSONER<--PENSIONISTER
Avatar billede avminarm Juniormester
26. september 2002 - 09:52 #4
ok jeg tror jeg fatte lidt mere nu - du kender tilfældigvis ikke lidt litteratur omkring dette emne jeg kunne læse? (altså ud over det link du henviser til).

takker for hjælpen
Avatar billede lasse_buck Nybegynder
26. september 2002 - 10:55 #5
Jeg har ikke nogen gode links på begynderniveau lige nu.
Måske ville noget så utraditionelt som en tur på biblioteket være en god ide... Der findes adskillige gode bøger på dansk, og du kan hurtigt vurdere sværhedsgraden.
Avatar billede avminarm Juniormester
26. september 2002 - 12:45 #6
ok - tak
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester