/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Er tabellen på 3NF ?
Fra : VK


Dato : 23-06-06 20:22

Taget fra wikipedia:
"Third normal form (3NF) requires that the table be in 2NF, and that
there be no non-trivial functional dependencies of non-key attributes on
something other than a superset of a candidate key. A table is in 3NF if
none of the non-primary key attributes is a fact about any other
non-primary key attribute. In summary, all non-key attributes are
mutually independent (i.e. there should not be transitive dependencies).
Thus, any relation in which all the attributes are prime attributes
(part of some key) is guaranteed to be in at least 3NF."


Jeg har følgende tabel:

kunde_id (PK)
navn
adresse
postnr (FK,fra en separat tabel)
tlf
dato

Er tabellen så på 3BF siden samtlige nøgler peger på PK ?

Jeg synes faktisk, f.eks. POSTNR peger mere på ADRESSE end på KUNDE_ID
(PK). Samtidig er der også ADRESSE og TLF, der peger mere i retning af
"NAVN" end KUNDE_ID :-?
Kan man ud fra det slutte, at tabellen ikke er på 3NF alligevel ?

 
 
Jens Gyldenkærne Cla~ (23-06-2006)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 23-06-06 23:03

VK skrev:

> kunde_id (PK)
> navn
> adresse
> postnr (FK,fra en separat tabel)
> tlf
> dato

Så vidt jeg kan bedømme (ud fra feltnavnene) er tabellen på 3NF.

> Er tabellen så på 3BF siden samtlige nøgler peger på PK ?

Jeg ved ikke helt hvad du mener med "peger på" - men definitionen
taler om funktionelle afhængigheder. Hvis du fx havde bynavn med i
tabellen, ville der være en funktionel afhængighed fra postnummer
til bynavn (et postnummer svarer præcis til ét bynavn) - og
tabellen ville derfor ikke være på 3NF.


> Jeg synes faktisk, f.eks. POSTNR peger mere på ADRESSE end på
> KUNDE_ID (PK). Samtidig er der også ADRESSE og TLF, der peger
> mere i retning af "NAVN" end KUNDE_ID :-?

Selv om postnummeret er knyttet til adressen, bliver det ikke
bestemt af adressen. Hvis jeg kun fortæller at jeg bor på
Hovedgaden 13, kan du ikke finde frem til postnummeret, da der er
flere gader med samme navn i forskellige postdistrikter.
Derfor er der ikke en funktionel afhængighed mellem adresse og
postnr - og heller ikke mellem de andre felter du nævner.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177455
Tips : 31962
Nyheder : 719565
Indlæg : 6408149
Brugere : 218880

Månedens bedste
Årets bedste
Sidste års bedste