Normalisation

Descripción

2 Databaser Mapa Mental sobre Normalisation, creado por Jenny Degling el 07/01/2014.
Jenny Degling
Mapa Mental por Jenny Degling, actualizado hace más de 1 año
Jenny Degling
Creado por Jenny Degling hace alrededor de 12 años
61
0

Resumen del Recurso

Normalisation
  1. Mål: minimera upprepningar och minskar där med lagringsutrymmet som krävs
    1. Anomalies
      1. Insertion
        1. För att skriva in nya uppgifter så behöver man även lägga till ytterligare information om något som inte är relaterat i grund och botten.
          1. För att skriva in information om något som kanske inte har någon personal än krävs null-värden.
          2. Deletion
            1. Om man tar bort en anställd som försvinner även information om arbetsplatsen, data som går helt förlorad om det var den enda anställda.
            2. Modification
              1. För att ändra ett värde på adressen på arbetsplats måste adressen ändras på alla anställda som har den arbetsplatsen.
              2. Lösning: decoupling , alltså att separera informationen. Varje tabell ska bara vara ansvarigt för att hålla en sorts information.
                1. Exempel: Facebook. Allt verkar vara separerat från det andra, har vänner på en plats, meddelanden på en plats, bilder på en plats osv. Upplevs därför som strukturerat, enklare och mer användarvänligt.
              3. First Normal Form (1NF)
                1. En tabell där varje cell bara innehåller ETT värde.
                  1. Löser genom att separera tabellerna och skapar istället en länk mellan de två genom primary keys / foreign keys.
                    1. Foreign keys: en kolumn eller flera kolumner som skapar en länk mellan flera tabeller. Den ena refererar alltså till en annan tabell och den andra är referensen.
                  2. Tänk: varje tabell ska innehålla en sak/ ett koncept. Om tabellen innehåller BÅDE adress och telefonnummer är något fel → skapa en ny tabell för att separera informationen.
                  3. Second Normal Form(2NF)
                    1. Appliceras på tabeller med sammansatta primärnycklar – alltså primärnycklar med två eller fler kolumner – alltså en tabell som är i 1NF och där värdena i alla kolumner som inte är primärnycklar bestäms av värdena i ALLA kolumner som är primärnycklar.
                      1. Tänk: om man ska uppdatera tabellen och behöver ändra i två rader för att göra samma sak är något förmodligen fel.
                      2. När tabeller har sammanslagna primary keys, alltså består av två eller fler kolumner för att skapa en unik primary key. Ex staffNum (S45) och dCentreNum (D2) skapar en unik primary key S45-D2. Men vissa kolumner kan vara kopplade till en av dessa primary keys t.ex. Name och Position hör till staffNum = partial dependency.
                        1. Olika former av beroende
                          1. Partiellt beroende: alla kolumner styrs inte av primärnyckeln.
                            1. Funktionellt beroende: anta att det finns en tabell med kolumnerna a och b där kolumn a bestämmer b: a→b Om man vet värdet för a så finns det bara ETT värde för b i alla records som har detta värde för a. MEN för ett givet värde för b kan det finnas flera olika värden av a.
                              1. Fullt funktionellt beroende: b ska bestämmas helt av a och inte av något subset till a. För att en tabell ska vara i 2NF så ska alla kolumner som inte är primärnyckel vara fullt funktionellt beroende av primärnyckeln
                            2. Third Normal Form(3NF)
                              1. Trots att en tabell är i 2NF kan den fortfarande lida av update anomalies. ”En tabell som är i 1NF och 2NF, och där värdena i alla kolumner som inte är primärnyckel kan bestämmas av BARA primärnyckel och inga andra kolumner.
                                1. → transitivt beroende: ” If a determines b (i.e. a ⇒ b) and b determines c (i.e.
b ⇒ c), then c is transitively dependent on a via b (provided that b or c does not determine a)
                                  1. Om kolumner bestäms av varandra ska de har en egen tabell.
                                2. Tänk: om värden upprepas inom tabellen är något förmodligen fel.
                                Mostrar resumen completo Ocultar resumen completo

                                Similar

                                Huskekort eksamen i databaser
                                Eilif Johansen
                                Enter text here
                                Jenny Degling
                                Logisk databasdesign
                                Jenny Degling
                                Begrepp - databas
                                Jenny Degling
                                Enter text here - created from Mind Map
                                Jenny Degling
                                Konceptuell design/ERD - created from Mind Map
                                Jenny Degling
                                Sin título
                                Jenny Degling