Hjem Personlig finansiering SQL Domain-Key Normal Form (DK / NF) og Abnorm Form - dummies

SQL Domain-Key Normal Form (DK / NF) og Abnorm Form - dummies

Indholdsfortegnelse:

Video: DBMS - Domain Key Normal Form (DKNF) and Sixth Normal Form (6NF) 2024

Video: DBMS - Domain Key Normal Form (DKNF) and Sixth Normal Form (6NF) 2024
Anonim

Efter at en SQL-database er i tredje normale form, har du elimineret de fleste, men ikke alle, chancerne for ændring af anomalier. Normale former ud over tredje er defineret til at squash de få resterende bugs.

Domæne-nøgle normal form (DK / NF)

Boyce-Codd normal form (BCNF), fjerde normal form (4NF) og femte normal form (5NF) er eksempler på sådanne former. Hver formular eliminerer en mulig ændring af anomali, men garanterer ikke forebyggelse af alle mulige modifikationsanomalier. Domæne-nøgleformularen giver dog en sådan garanti.

En relation er i domæne-nøgleformel (DK / NF) hvis enhver begrænsning på forholdet er en logisk konsekvens af definitionen af ​​nøgler og domæner. En begrænsning i denne definition er en regel, der er præcis nok til, at du kan vurdere, hvorvidt det er sandt eller ej. En nøgle er en unik identifikator af en række i en tabel. Et domæne er sætet af tilladte værdier af en attribut.

Kig på denne database, som er i 1NF, for at se, hvad du skal gøre for at sætte databasen i DK / NF.

Tabel: SALG (Customer_ID, Product, Price)

Nøgle: Customer_ID

Begrænsninger:

  • Customer_ID bestemmer Produkt

  • Produkt bestemmer Pris

  • Customer_ID skal være et helt tal > 1000

For at håndhæve begrænsning 3 (at Customer_ID skal være et helt tal større end 1000), kan du simpelthen definere domænet for Customer_ID for at indarbejde denne begrænsning. Det gør begrænsningen til en logisk konsekvens af domænet i CustomerID-kolonnen. Produktet afhænger af Customer_ID, og ​​Customer_ID er en nøgle, så du har ikke noget problem med Begrænsning 1, hvilket er en logisk konsekvens af definitionen af ​​nøglen.

Begrænsning 2 er et problem. Pris afhænger af (er en logisk konsekvens af) Produkt, og Produkt er ikke en nøgle. Løsningen er at opdele SALES bordet i to tabeller. Én tabel bruger Customer_ID som en nøgle, og den anden bruger Produkt som en nøgle. Databasen er udover at være i 3NF, også i DK / NF.

Design dine databaser, så de er i DK / NF, hvis det er muligt. Hvis du kan gøre det, vil håndhævelse af nøgle- og domænerestriktioner medføre, at alle begrænsninger er opfyldt, og ændringer i anomalier er ikke mulige. Hvis en databasestruktur er designet til at forhindre dig i at sætte den ind i DK / NF, så skal du opbygge begrænsningerne i applikationsprogrammet, der bruger databasen. Databasen selv garanterer ikke, at begrænsningerne vil blive opfyldt.

Unormal form

Som i livet, så i databaser: Nogle gange er unormal lønnet.Du kan blive båret væk med normalisering og gå for langt. Du kan opdele en database i så mange tabeller, at hele sagen bliver uhåndterlig og ineffektiv. Ydeevne kan dæmpe. Ofte er den optimale struktur for din database noget denormaliseret.

Faktisk er praktiske databaser (de virkelig store) alligevel aldrig normaliseret helt til DK / NF. Du vil dog normalisere de databaser, du designer så meget som muligt, for at eliminere muligheden for datakorruption, der skyldes ændringer i anomalier.

Når du har normaliseret databasen, så vidt du kan, gør du nogle hentninger som et tørt løb. Hvis ydeevnen ikke er tilfredsstillende, skal du undersøge dit design for at se, om selektiv denormalisering vil forbedre ydeevnen uden at ofre integriteten. Ved omhyggeligt at tilføje redundans på strategiske steder og denormaliserende lige nok , kan du komme til en database, der er både effektiv og sikker mod uregelmæssigheder.

SQL Domain-Key Normal Form (DK / NF) og Abnorm Form - dummies

Valg af editor

Fuld redigeringsfunktion i Photoshop Elements 10 - dummies

Fuld redigeringsfunktion i Photoshop Elements 10 - dummies

Fuld fotoredigeringsfunktion tilbyder bundter af værktøjer, som du kan bruge at redigere dine billeder, fra korrektionsværktøjer til fastsættelse af farve og klarhed til filtre, lag og meget mere for at ændre eksisterende fotos eller skabe helt originale billeder fra bunden. Men alle disse værktøjer gør også Komplet fotoredigeringstilstand kompleks. Du kan flytte ind i ...

Generelle blandingsformer i Photoshop Elements - dummies

Generelle blandingsformer i Photoshop Elements - dummies

Elementer spænder over 25 blandingstilstande. Blend modes påvirker hvordan farver interagerer mellem lag og også hvordan farver interagerer, når du anvender maling på et lag. Ikke alene gør blandingstilstande interessante effekter, men du kan også nemt anvende, redigere eller fjerne blandingsfunktioner uden at røre dine billedpixel. De forskellige blandingstilstande ...

Geometriske formindstillinger i Photoshop Elements - dummies

Geometriske formindstillinger i Photoshop Elements - dummies

Geometriindstillinger hjælpe med at definere, hvordan dine figurer ser ud. Klik på nedpegepilen i værktøjsindstillingerne i Elements for at få adgang til de geometriske indstillinger, der beskrives i det følgende. Rektangulære og afrundede rektangel geometriske indstillinger Her er geometriske indstillinger for rektangel og afrundede rektangelformer: Ubegrænset: Giver dig mulighed for at få fri tøj til at tegne en ...

Valg af editor

Sådan bygger du tabeller i HTML5 - dummies

Sådan bygger du tabeller i HTML5 - dummies

Sommetider indeholder din webside data bedst fremlagt i et bord . Du kan bruge HTML5's komplette bordsystem til at oprette tabeller som den i dette eksempel: Den grundlæggende struktur i et bord i HTML-format er rimeligt let at forstå; Tjek koden, der oprettede tabellen i eksemplet:

Hvordan man ændrer gentagne baggrunde på CSS3-steder - dummier

Hvordan man ændrer gentagne baggrunde på CSS3-steder - dummier

Der er situationer, hvor man kun vil en enkelt kopi af et baggrundsbillede på dit CSS3-websted. Det kan være, at billedet du har brugt er noget, der ikke gentager sig godt eller er stort nok til, at du virkelig ikke vil have det gentaget. Følgende procedure viser en teknik, du kan bruge til at fortælle ...

Hvordan man opbygger en webside skabelon fra scratch-dummies

Hvordan man opbygger en webside skabelon fra scratch-dummies

Standardværktøjet på tværs af digitalt agenturer og interne afdelinger til opbygning af website grafik er Adobe Photoshop. Selvom fyrværkeri er optimeret og målrettet til at producere web-grafiske kildefiler, er det bare ikke fanget, sandsynligvis på grund af den massive genoplæringsindsats ville det medføre, at hele afdelinger gør omskifteren. At oprette et nyt ...

Valg af editor

Sådan godkendes medlemmer til din LinkedIn Group - dummier

Sådan godkendes medlemmer til din LinkedIn Group - dummier

Som flere og flere mennesker finder ud af din ny LinkedIn-gruppe, og som medlemmer begynder at deltage, kan du opleve, at nogle af de personer, der har klikket på linket for at deltage, ikke er på din forhåndsgodkendte liste. Måske er de mennesker, du ikke har forstået var på LinkedIn, eller du var ikke klar over, at de var gyldige grupper ...

Hvordan man tilføjer billeder til kroppen i din LinkedIn-profil til Visual Social Marketing - dummies

Hvordan man tilføjer billeder til kroppen i din LinkedIn-profil til Visual Social Marketing - dummies

Ud over et profilbillede giver LinkedIn brugere mulighed for at forbedre de visuelle sociale markedsføringselementer i deres profiler ved at tilføje billeder til deres profilprofil. Du kan tilføje billeder til ethvert afsnit i din LinkedIn-profil. Tilføjelse af billeder til din profil kan hjælpe dig med at fortælle din historie visuelt og ...

Sådan tilføjer du en virksomhedsside til LinkedIn - dummies

Sådan tilføjer du en virksomhedsside til LinkedIn - dummies

, Når du har opfyldt kravene til oprettelse en virksomhedsside på LinkedIn, er det tid til at komme i gang ved at tilføje selskabets side til Linkedins system. For at oprette din virksomhedsside skal du blot følge disse trin: