MODELLER Modell: struktur som avbildar vissa aspekter av någon del av verkligheten Exempel: Kartor Differentialekvationer Miniatyrmodeller Syfte med modeller:

Slides:



Advertisements
Liknande presentationer
Att förstå anonymiteten (översättning från
Advertisements

X-mas algebra Är du redo? Klicka!!.
Vad är en databas? “En databas är en delad samling logiskt relaterade data som designats för att möta informationsbehovet i en organisation eller för.
Relationsdatabasdesign
Databasadministration
Access med Sebastian och Robert
(Data)Modellering nikos dimitrakas rum 6626
INFORMATIONSKOMPETENS 3
Hur bör samhället organiseras
Klasser och objekt.
DATABASHANTERING för programmerare
B2KUNO Johan Eklund.
ayer_embedded Källkritik
Från verksamhet till databas
Järfälla, Lidingö, Sigtuna, Solna, Upplands Bro
2D1311 Programmeringsteknik med PBL Föreläsning 7 Skolan för Datavetenskap och kommunikation.
Objektorientering.
Datamodellering med E/R-diagram
Andreas Carlsson Barvefjord och Carlsson Datakraft AB Svarkråkev Värnamo Tel: Epost: Databasteknik 2.
Digitalisering av kulturarvet
MEDELVÄRDE, MEDIAN & TYPVÄRDE
Informationssystem och databasteknik, 2I-1100
Svenska WebDewey Introduktion
Databaser och databas-system
Praktisk databasdesign (kap 12)
Datamodellering med E/R-diagram
Karin Larsson GIS-centrum Lunds universitet
Algebraiska uttryck Matematik 1.
If you want to build a ship, don´t herd people together to collect wood and don´t assign them tasks and work, but rather teach them to long for the endless.
Introduktionskurs för användare Del 1
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt.
Källor! Hur gör man egentligen?
UPPSATSSKRIVNING ENTRÉSKOLAN
Tabeller.
DATABASHANTERING för programmerare
DATABASHANTERING för programmerare Lektion 3 Mahmud Al Hakim
Databaser ©Ulrik Mårtensson, Naturgeografiska Institutionen, Lunds Universitet och StrateGIS, Skåne Län.
ITK3:DB/EIT:DB Databasmetodik
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 8 ( ) INNEHÅLL:Klasser: -Konstruktorer -Klassvariabler -Instansmetoder -Privata.
Databashantering MS Access 2003 Lektion 2
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
F. Drewes, Inst. f. datavetenskap1 Föreläsning 11: Funktionella språk Funktioner och variabler i matematiken Funktionella språk LISP, ML och.
Mahmud Al Hakim 2  Mål för kursen  Kursplanering  Kurslitteratur  Betygsättning  Grunder om databaser  Tabeller.
Databaser och databassystem
IT i organisationer och databasteknik
Introduktion till klasser, objekt och BlueJ Kursbok: “Objects First with Java - A Practical Introduction using BlueJ”, David J. Barnes & Michael Kölling.
INFORMATIONSSYSTEM Informationssystem: datoriserat system som stödjer en organisations informationsförsörjning VERKSAMHET avbildar Definitionen alltför.
Tabellrelationer Innan ni får göra lite övningar tänkte jag att jag skulle gå igenom lite om tabellrelationer.
Logikprogrammering 16/ : operatorer Staffan Larsson.
Vara kommun Grundskoleundersökning 2014 Föräldrar 2 Levene skola årskurs 5 Antal svar 2014 för aktuell årskurs i skola: 12 Antal svar 2014 för årskurs.
Återblick. Vad är en databas? ”En samling information som är organiserad på ett sådant sätt att det är lätt att söka efter och hämta enskilda bitar information”
DATABASHANTERING för programmerare Lektion 5 Mahmud Al Hakim
Access 1 ITDA 2 Kurs Namn Klass Betyg En elev (namn) kommer att läsa många kurser och få ett betyg i varje kurs. Försök modellera om till funktionella.
1 Mjukvaru-utveckling av interaktiva system God utveckling av interaktiva system kräver abstrakt funktionell beskrivning noggrann utvecklingsmetod Slutanvändare.
TDDB77 Databasteknik Fö 2 Relationsdatabaser & SQL Henrik André-Jönsson.
TDDB77 Databasteknik Fö 4 Gå från ER/EER-schema till ett relationsschema Henrik André-Jönsson.
IT Databas Göran Wiréen
IT Databas Göran Wiréen
IT Databas Göran Wiréen
Om databaser.
En trygg framtid görs i dag. Paikkakunta xxxxxxxxxxxxxx.fi
Hela världen i ett bibliotek på Odengatan
Repetition Del 1.
IT Fördjupning Göran Wiréen
Operativ informationshantering, databaser
KaU - Datavetenskap - DAV B04 - MGö
Presentationens avskrift:

MODELLER Modell: struktur som avbildar vissa aspekter av någon del av verkligheten Exempel: Kartor Differentialekvationer Miniatyrmodeller Syfte med modeller: Studera verkligheten indirekt genom att studera modellen Underlätta kommunikation

KARTOR Modeller förenklar Modeller förvanskar - Afrika, Grönland Modeller fokuserar - topografisk, politisk

KONCEPTUELL MODELLERING SYSTEMASPEKTER MÅLMODELLERING MÅL uttrycker önskvärda tillstånd hos styr påverkar HAND- LINGAR OBJEKT KONCEPTUELL MODELLERING BETEENDE MODELLERING

KONCEPTUELL MODELLERING PERSON BIL Grundbegrepp Objekt Attribut Typer Regler Händelser äger (m,1,t,p) En person kan äga många bilar En bil ägs av högst en person En person behöver ej äga en bil En bil måste ägas av en person har_mor PERSON

OGDENS TRIANGEL TERM EXTENSION INTENSION

SAMMA ORD - OLIKA BEGREPP På vilka sätt används ordet ”bok” i meningarna nedan? Jules Verne skrev många böcker Biblioteket i Vällingby har många böcker Nazi Tyskland förbjöd många böcker Bokhandlaren i Jönköping sålde många böcker Kurskod Kursnamn Startdatum Antal poäng Kursansvarig KURS

SAMMA BEGREPP - OLIKA ORD Avskeda - Friställa Arbetsgivare - Arbetsköpare Afro-American - Colored - Black - Negro

Introduktion till databaser Vad är en databas? Logiskt sammanhängande mängd av data, med en därtill hörande betydelse, strukturerad och försedd med data avsedda för ett visst ändamål, med en viss användargrupp i åtanke och återspeglande någon aspekt av världen. Vad är ett databashanteringssystem? En mängd program som tillåter användaren att skapa och underhålla databaser.

Databashanteringssystem Användare / Programmerare Databassystem Applikationsprogram / Frågor DBMS Program för att hantera frågor/program Program för att hantera lagrade data Metadata Databas

Varför databaser? Beständighet Delning Dataoberoende

Typer av databaser Relationsdatabaser Hierarkiska databaser Nätverksdatabaser

Relationsdatabaser Ett relationsschema är en mängd av attribut Exempel: PERSON(Pnr, Namn, Ålder, Lön) Till varje attribut hör en domän Exempel: Namn har domänen Sträng, Ålder har domänen Heltal En tupel för ett relationsschema ger ett värde till varje attribut i schemat Exempel: (Kalle Svensson, 710101-1133, 26, 13000) Värdet för varje attribut måste hämtas ur domänen En relation är en mängd av tupler

Relationsdatabaser PERSON Relations- schema Pnr Namn Ålder Lön 650101-2288 Eva Svensson 33 25000 750203-3133 Per Jonsson 23 20000 500107-5532 Sven Olsson 47 25000 800515-0044 Pia Eriksson 17 18000 Relation Man kan tänka på en relation som en tabell där inga dubletter får förekomma

Från verksamhet till databas skola elev kurs lärare ämne bibliotek låntagare lån bok skola ((sNr), adress) elev ((eNr), förNamn, efterNamn) lärare ((lNr), förNamn, efterNamn) ämne ((äNamn), kursBok) ((sNr, eNr, lNr, äNamn) bibliotek ((bNamn), adress) låntagare ((ISBN), titel) ((bNamn, lNr, ISBN, datum) Världen Delmängd Modell Databasstruktur Från verksamhet till databas

Databasdesign Varför design? Varför inte bara en enkel tabell? bibliotek låntagare bibliotek ((bNamn), adress) låntagare ((lNr), förNamn, efterNamn) lån bok ((ISBN), titel) lån ((bNamn, lNr, ISBN, datum) bok Varför design? Varför inte bara en enkel tabell? ISBN Titel Förf Bibl BAdr LåntNamn LåntAdr Datum 12345 Mitt liv Pelle Stora Storgatan 19 Kalle Karlavägen 12 891102 23456 Ditt liv Lisa Stora Storgatan 19 Kalle Karlavägen 12 890723 12346 Vårt liv Pelle Stora Storgatan 19 Vera Verdandig 3 890809 12347 Vilket liv! Lisa Stora Storgatan 19 Mona Månvägen 7 891011 23412 Mitt liv Lisa Stora Storgatan 19 Kalle Karlavägen 12 891112 121212 Stickning Johan Stora Storgatan 19 Kalle Karlavägen 12 890909 1212 Matlagning Eva Stora Storgatan 19 Vera Verdandig 3 891010 100 Matematik Vera Stora Storgatan 19 Mona Månvägen 7 891102

Ett onormaliserat relationsschema Namn Regnr Andel Lön Märke Per Eriksson ABC123 50 25000 Volvo Eva Olsson ABC123 50 18000 Volvo Per Eriksson DEF456 100 25000 Mercedes Per Eriksson GHI789 50 25000 Toyota Pia Johnsson GHI789 50 30000 Toyota Pia Johnsson BCD321 100 30000 Ford Bo Persson CDE654 100 18000 Volvo

Problem med onormaliserade scheman Redundans Uppdateringsanomalier

Funktionella beroenden Ett funktionellt beroende innebär att ett attribut unikt bestämmer ett annat attribut. Exempel: Namn --> Lön Detta funktionella beroende innebär att om två tupler har samma värde på Namn så måste de ha samma värde på Lön.

Funktionella beroenden Vilka av följande funktionella beroenden är uppfyllda i relationen ovan? A --> B AB --> C CD --> B CD --> E

Nycklar En nyckel i ett relationsschema är är ett attribut (eller en minimal mängd av attribut) som funktionellt bestämmer övriga attribut i schemat. Det betyder att en nyckel entydigt identifierar en tupel i en relation. Vilken är nyckeln i följande relationsschema? RULLE(Film, Biograf, Klocka, Pris)

Första normalform Ett relationsschema är i första normalform om alla attributvärden är atomära. Persnr Efternamn Förnamn 750101-0032 Svensson Gunnar, Sven 550401-0044 Olsson Karin, Eva Ej 1NF Persnr Efternamn Förnamn 750101-0032 Svensson Gunnar 750101-0032 Svensson Sven 550401-0044 Olsson Karin 550401-0044 Olsson Eva Vilka är nycklarna? 1NF

Àndra normalform Namn Regnr Lön Ett relationsschema är i andra normalform om varje attribut är funktionellt beroende av hela nyckeln. Per Eriksson ABC123 25000 Per Eriksson DEF456 25000 Pia Johnsson GHI789 30000 Pia Johnsson BCD321 30000 Namn Regnr Per Eriksson ABC123 Per Eriksson DEF456 Pia Johnsson GHI789 Pia Johnsson BCD321 Namn Lön Per Eriksson 25000 Pia Johnsson 30000

Tredje normalform Ett relationsschema är i tredje normalform om varje attribut är funktionellt beroende av nyckeln, hela nyckeln och inget annat än nyckeln.

Tredje normalform Om ett attribut inte uppfyller villkoret för 3NF så bryter man ut det och låter det bilda ett nytt relationsschema tillsammans med de attribut som det är funktionellt beroende av. Exempel: PERSON(Pnr, Namn, Land, Antal_inv) Pnr --> Namn, Land Land --> Antal_inv Antal_inv uppfyller ej villkoret för 3NF. Så det bryts ut till ett nytt relationsschema tillsammans med Land: PERSON(Pnr, Namn, Land) LAND(Land, Antal_inv)

Tredje normalform Bryt ned följande relationsschema till relationsscheman i 3NF. BOK(Exemplarnr, Personnr, Lånedatum, Återlämningsdatum, Bibliotek, Biblioteksadress, Personadress, Titel) Ett exemplar av en bok med en titel lånas ut till en person, som har en adress, vid ett datum och återlämnas ett annat datum. Bokexemplaret finns på ett bibliotek som har en adress.