IT i organisationer och databasteknik
|
|
- Leif Nilsson
- för 8 år sedan
- Visningar:
Transkript
1 IT i organisationer och databasteknik Föreläsning 5 Analytisk databasdesign Arkitektur hos ett informationssystem Presentation Användargränssnitt via en browser Applikationslogik Data Java servlets som exekverar på en server Data från en databashanterare 1
2 Funktionellt beroende: Pnr Namn Funktion (i vanlig mat. betydelse): Maria Eva Sture Olle För varje värde på Pnr, tex 22222, får det finnas högst ett värde på ett Namn. Däremot får två (eller flera) Pnr ha samma värde på Namn. Dessutom finns det Namn som inte pekas ut av något Pnr. Liksom det finns Pnr:er som inte pekar ut något Namn Ej funktion: Maria Eva Sture Olle Här är det funktionella beroendet inte uppfyllt. Pnr:et pekar ut två värden på Namn, nämligen Maria och Eva. Semantiken i funktionella beroenden Primärnyckeln i en tabell bestämmer övriga attribut funktionellt (dvs givet en viss primärnyckel finns det maximalt ett värde på alla övriga attribut/kolumner) Dessutom är vissa normalformer definerade i termer av funktionella beroenden. Kom ihåg att funktionella beroenden är ett uttryck för semantiken, betydelsen, i en applikation. Det svåra i en designprocess är att klarlägga denna semantik. 2
3 Det finns ingen bra notation för att visa funktionella beroenden INOM en klass - alltså funktionella beroenden mellan attribut! Namn: String 1..1 Vikt: Integer 1..1 Adressort: String 1..1 Postnr: Integer ägs_av 0..* HUND Namn: String 1..1 Vikt: Integer 1..1 Favoritmat: String 1..1 Funktionellt beroende, exempel Produkt Prodnr Mtrl Färg Lagerplats 1234 trä gul hylla stål grå hylla5 Prodnr Prodnr Prodnr Mtrl Färg Lagerplats När man ibland talar om Fullständigt funktionellt beroende har det att göra med primärnyckelns "minimalitet", dvs attributen skall vara beroende av hela (sammansatta) nyckeln. I en del litteratur gör man inte denna distinktion. 3
4 1NF, 2NF och 3NF 1NF A relation is in 1 NF iff the domains for all attributes are atomic 2NF A relation is in 2NF if it is in first normal form and all the nonkey attributes are fully functionally dependent on the key 3NF A relation is in 3NF if it is in second normal form and no nonkey attribute is transitively dependent on the key 1 NF En relation (tabell) är i 1NF omm varje attribut i tabellen består av atomära värden. Hur skulle en tabell se ut om den inte var i 1NF (dvs. i 0NF)? Pnr Namn Ort Postnr Ann, Maria Kista Kalle Södertälje Maria Södertälje Lisa Kista Attributet Namn innehåller en mängd värden, dvs tabellen är inte i 1 NF. 4
5 Två möjliga lösningar: 1. Pnr Namn Ort Postnr Ann Kista Maria Kista Kalle Södertälje Maria Södertälje Lisa Kista Pnr Ort Postnr Kista Södertälje Södertälje Kista NF Pnr Namn Ann Maria Kalle Maria Lisa Observera att def. av 1NF inte talar om vare sig nycklar eller funktionella beroenden. Alla attribut ska vara atomära. Punkt slut. Lösning nr 2 bygger dock intuitivt på att vi i den ursprungliga tabellen insåg att Pnr funktionellt bestämde alla de andra attributen (i alla fall så länge Namn utgjorde en mängd värden). I den ursprungliga tabellen kunde alltså Pnr väljas till primärnyckl (PN). I så fall kan man alltid övergå till 1 NF genom att bryta ut PN plus det attribut som inte var atomärt och skapa en en ny tabell av dessa två. I den gamla tabellen blir Pnr, Ort och Postnr kvar. Nycklar Pnr Namn Ort Postnr Ann Kista Maria Kista Kalle Södertälje Maria Södertälje Lisa Kista Det (de) attribut som ska utgöra primärnyckel måste funktionellt bestämma alla övriga attribut. Vilka funktionella beroenden finns i 1? Jo, Pnr,Namn Ort, Postnr Pnr och Namn får utgöra PN 2. Pnr Ort Postnr Pnr Namn Kista Ann Södertälje Maria Södertälje Kalle Kista Maria Lisa Vilka funktionella beroenden finns i 2? I första tabellen har vi Pnr Ort, Postnr så där får Pnr bli PN. I andra tabellen finns inga funktionella beroenden utan båda attributen behövs för att identifiera en rad. 5
6 PRODUKT Pid Färg Pris Penna Blå, Vit, Röd 3 Skruv Metall 5 Mutter Metall 33 Stol Vit, Röd, Grön 6 Bord Vit, Blå, Röd 9 Vas Vit 44 Pall Gul 10 Mera 1NF Finns det något funktionellt beroende i den nya tabellen? Ja förmodligen Pid --> Pris Felöversatt från det konceptuella schemat? PRODUKT Pid Färg Pris Penna Blå 3 Penna Vit 3 Penna Röd 3 Skruv Metall 5 Mutter Metall 33 Stol Vit 6 Stol Röd 6 Stol Blå 6 Bord Vit 9 Bord Blå 9 Bord Röd 9 Vas Vit 44 Pall Gul 10 Partiellt funktionellt beroende A --> B kallas ett partiellt funktionellt beroende omm det existerar ett C som är en äkta delmängd av A OCH C --> B En relation, R, är i 2NF omm den är i 1NF och om det för varje attribut i R gäller ETT av följande villkor: 1. Attributet ingår i en kandidatnyckel (ev. den som väljs som PN) 2. Attributet är INTE partiellt beroende av en kandidatnyckel (ev. PN). Mao, alla attribut ska vara fullständigt funktionellt beroende av hela primärnyckeln, inte bara en del av denna. 6
7 2NF En tabell är i 2NF omm den är i 1NF och alla attribut är funktionellt beroende av hela primärnyckeln. Dvs Pnr, Namn Ort, Postnr Vi fortsätter exemplet från 1NF: gäller. Dvs. för varje par av värden på Pnr och Namn så finns det högst ett värde Pnr Namn Ort Postnr på såväl Ort som Postnr Ann Kista Men både Ort och Pnr Maria Kista bestämms också av enbart Kalle Södertälje Pnr. Alltså gäller Maria Södertälje Pnr Ort, Postnr Lisa Kista Ort och Postnr är alltså inte beroende av hela nyckeln. 2NF 2NF -NAMN Bryt ut Pnr och de attribut Pnr Ort Postnr Pnr Namn som Pnr bestämmer till en Kista Ann egen tabell! Södertälje Maria Som synes får vi samma lösning som lösning 2. när vi Södertälje Kalle Kista Maria försökte gå från 0NF till 1NF. Lösning 2. var alltså Lisa redan i 2NF! PRODUKT Pid Färg Pris Penna Blå 3 Penna Vit 3 Penna Röd 3 Skruv Metall 5 Mutter Metall 33 Stol Vit 6 Stol Röd 6 Stol Blå 6 Bord Vit 9 Bord Blå 9 Bord Röd 9 Vas Vit 44 Pall Gul 10 Mera 2NF Pid --> Pris PRODUKT Pid Pris Penna 3 Skruv 5 Mutter 33 Stol 6 Bord 9 Vas 44 Pall 10 PRODUKT Pid Färg Penna Blå Penna Vit Penna Röd Skruv Metall Mutter Metall Stol Vit Stol Röd Stol Blå Bord Vit Bord Blå Bord Röd Vas Vit Pall Gul 7
8 Mera 2NF KURSTILLFÄLLE Kurs Lärare Telefon Sal IS:4 Paul Sal4 2i1033 Maria Sal4 GK:D Mats SalA ISIntro Paul SalB GK:D Paul SalA FK: DB Peter Sal3 FK:IS Paul F3 Kurs, Lärare --> Telefon, Sal Lärare --> Telefon KURSTILLFÄLLE Kurs Lärare Sal IS:4 Paul Sal4 2i1033 Maria Sal4 GK:D Mats SalA ISIntro Paul SalB GK:D Paul SalA FK: DB Peter Sal3 FK:IS Paul F3 LÄRARE Lärare Telefon Paul Maria Mats Peter 4444 Identifierare - Primärnyckel? ENTITET/ KLASS a: Datatype 1..1 UNIK b: Datatype 1..1 c: Datatype 1..1 c: Datatype 1..1 TABELL blev ju en tabell: a b c d Observera att om a har avbildningsregeln 1..1 UNIK och övriga attribut (dvs. b, c, d) 1..1 så finns det ett funktionellt beroende: a b, c, d dvs a kan väljas till PN. TABELL a b c d 8
9 Transitivt beroende Ett funktionellt beroende X --> Y för en relation R utgör ett transitivt beroende om följande båda saker gäller: 1. Det existerar en mängd attribut Z, sådan att Z varken utgör en kandidatnyckel för R eller ingår i en kandidatnyckel för R 2. X --> Z OCH Z --> Y Något svagare definition (baserad på primärnyckel istället för kandidatnyckel): Z får varken utgöra primärnyckel eller ingå i primärnyckeln. 2NF 3NF En tabell är i 3NF omm den är i 2NF och det inte existerar några transitiva beroenden mellan något icke-nyckel attribut och nyckeln. 2NF (och 3NF!) -NAMN Pnr Ort Postnr Pnr Namn Kista Ann Södertälje Maria Södertälje Kalle Kista Maria Lisa 3NF POST Postnr Ort Kista Södertälje Södertälje 3NF Pnr Postnr Ort är transitivt beroende av nyckeln (Pnr). Lösning: Bryt ut det transitiva beroendet till en egen tabell. 9
10 Tabell i 2N Mera 3NF Kurs Datum Lärare Sal Antal_sittplatser DB: Maria F1 100 DB: Kalle F1 100 PP: Kalle F2 50 SYS: Maria F1 100 SÄK: Kurt F1 100 Kurs, Datum --> Lärare, Sal, Antal_sittplatser Sal --> Antal_sittplatser Tabell i 3NF Tabell i 3NF Kurs Datum Lärare Sal Sal Antal_sittplatser DB: Maria F1 DB: Kalle F1 PP: Kalle F2 SYS: Maria F1 SÄK: Kurt F1 F1 100 F2 50 Problem vid ofullständig normalisering Ofullständig normalisering leder till sk uppdateringsanomalier: INSÄTTNING: Man kan inte lägga in uppgifter om en sals antal sittplatser om salen ifråga inte används av en kurs BORTTAG: När den enda kursen som en sal används i tas bort så försvinner även alla uppgifter om salen UPPDATERING: Om man bygger om en sal och följdaktligen kanske vill ändra angivelsen av antal platser (om nu salen blivit mindre/större) så måste man ändra på ALLA rader där just denna sal förekommer - risk för inkonsistens! 10
11 Utrymme vs Tid vs Konsistens Titel Författare Librettot Vikt Antal Sidor Förlag Hamlet Shakespeare Once upon.the End Bonniers Hamlet Shakespeare Once upon.the End Pierson Hamlet Shakespeare Once upon.the End Nordstedts etc. Hamlet Shakespeare Once upon.the End Prentice-Hall 1984 Orwell Bonniers etc. Titel Vikt Ant.sid. Förlag Titel Författare Librettot Hamlet Shakespeare Once upon The End Orwell Hamlet Bonniers Hamlet Pierson Hamlet Nordstedts etc Bonniers etc. Semantiken i funktionella beroenden Primärnyckeln i en tabell bestämmer övriga attribut funktionellt (dvs givet en viss primärnyckel finns det maximalt ett värde på alla övriga attribut/kolumner) Dessutom är vissa normalformer definerade i termer av funktionella beroenden. Kom ihåg att funktionella beroenden är ett uttryck för semantiken, betydelsen, i en applikation. Det svåra i en designprocess är att klarlägga denna semantik. 11
12 Vilka funktionella beroenden kan man identifiera genom att inspektera instanserna? Anställd Projekt Titel Olle Proj1 Fil. lic Olle Proj2 Civ. ing Olle Proj1 Civ. ing Lisa Proj2 Civ. ing etc. etc. etc. Inga alls. Inget av det tre attributen, Antälld, Projekt och Titel räcker ensamt till för att bestämma övriga attribut funktionellt. Inte heller några två-kombinationer av attribut räcker till: Anställd+Projekt har flera värden på Titel (tex har Olle+Proj1 två olika titlar: Fil. lic eller Civ.ing). Anställd+Titel har två olika värden på Projekt (dvs Olle är betitlad Civ.ing i såväl Proj1 som Proj2), slutligen har Projekt och Titel minst två värden på Anställd (Civ. ing i Proj1 innehas av både Olle och Lisa). Alltså måste vi använda ALLA attributen för att identifiera en rad. Tabellen bli sk. all-key. Armstrongs axiom Låt A, B, C, X och D utgöra mängder av attribut (ibland med bara ett element) i en relation R Reflexiva lagen: OM B är en delmängd av A SÅ gäller A --> B Transitiva lagen: OM A --> B och B --> C SÅ A --> C Additiva lagen: OM A -->B och A --> C SÅ A --> BC Dekomponeringslagen: OM A --> BC SÅ (A -->B OCH A --> C) Pseudotranitiva lagen: OM A --> B OCH CB --> D SÅ AC --> D Augmentativa lagen: OM A --> B så gäller XA --> XB 12
13 Uppgift I (uppgift d) från seminarium 3): Om vi vet att (a) X--> Y (b) Z --> WY (c) YW --> ZX gäller Gäller det då även att (d) Z --> X? SANT. Bevis: Vi använder först dekomponeringslagen på (b): (e) Z --> W OCH (f) Z --> Y Sen använder vi (f) och (e) och additiva lagen och får: (g) Z --> YW Sen tar vi transitiva lagen på (g) och (c) och får: (h) Z --> ZX Slutligen används dekomponeringslagen en gång till på (h) och vi får Z --> X, vilket skulle bevisas. Uppgift (b) från seminarium 3: OM vi vet att följande gäller: (a): XY --> Z (b): ZY --> W Gäller då följande: XW --> Z? FALSKT. Visas med ett motbevis: X Y Z W Både (a) och ( b) är uppfyllda men INTE (c) a b c b a m q b 13
14 Kvar att göra (från seminarium 3) är uppgift a) och c) a) OM XY --> Z och XZ --> W, följer då att XY --> W? C) OM XY --> Z och XZ --> Y och ZW --> X, följer då att YW --> X? PROJEKTANSTÄLLNING Projekt Datum Anställd Deltagandegrad Budget Projekt, Datum --> Anställd, Deltagandegrad, Budget Datum, Anställd --> Deltagandegrad Projekt --> Budget Vilken normalform? Ja, vi ser ju att attributet Budget är beroende av bara en del av primärnyckeln så vi är INTE i 2NF. Projekt Datum Anställd Deltagandegrad Projekt Budget 14
15 PROJEKTANSTÄLLNING Projekt Datum Anställd Deltagandegrad Projekt, Datum --> Anställd, Deltagandegrad, Budget Datum, Anställd --> Deltagandegrad Projekt --> Budget Vilken normalform? Tillämpa dekomponeringslagen: Vi får Projekt, Datum --> Anställd Reflexiva lagen ger sen att Projekt, Datum --> Datum Additiva lagen ger sen att Projekt, Datum --> Datum, Anställd. Vi har redan att Datum, Anställd --> Deltagandegrad. Dvs, vi har ett transitivt beroende mellan primärnyckeln och Deltagandegrad. Således är PROJEKTANSTÄLLNING INTE i 3NF. Vi överför den till 3NF genom att bryta ut determinanten, (Datum, Anställd) och det den bestämmer till en ny relation. Kvar i den gamla relationen blir determinanten plus övriga attribut: PROJEKTANSTÄLLNING Projekt Datum Anställd Projekt Budget PROJEKTANSTÄLLNING Datum Anställd Deltagandegrad Glöm inte att ange nya främmande nycklar! 15
Informationssystem och databasteknik
Informationssystem och databasteknik Föreläsning 5 Analytisk databasdesign F5! Funktionellt beroende: Pnr Namn Funktion (i vanlig mat. betydelse): 610321 11111 22222 33333 Maria Eva Sture Olle För varje
Läs merAnalytisk relationsdatabasdesign
Analytisk relationsdatabasdesign Att förbättra kvaliteten i databaser Presenter s Name Organization name www.horton.com Domän-regler och främmande nyckel regler via DDL Datatyp! Datatyp! Maxvärde! Maxvärde!
Läs merInformationssystem och Databasteknik
Informationssystem och Databasteknik Föreläsning 4 Relationsmodellen Från konceptuell modell till relationsdatabasschema Analytisk databasdesign Vad är ett databashanteringssystem? En mängd program som
Läs merFöreläsning 3 Transformation från konceptuell datamodell till relationsschema ( Syntetisk databasdesign ) Vad är ett databashanteringssystem?
Föreläsning 3 Transformation från konceptuell datamodell till relationsschema ( Syntetisk databasdesign ) Vad är ett databashanteringssystem? En mängd program som tillåter användaren att skapa och underhålla
Läs merFöreläsning 4 Transformation från konceptuell datamodell till relationsschema ( Syntetisk databasdesign ) Normalisering (Analytisk databasdesign)
Föreläsning 4 Transformation från konceptuell datamodell till relationsschema ( Syntetisk databasdesign ) Normalisering (Analytisk databasdesign) 1 Vad är en databas? Logiskt sammanhängande mängd av data,
Läs merPga att (Nummer och Typ) tillsammans bestämmer övriga attribut funktionellt väljer vi (Nummer, Typ) till primärnyckel:
ÖVNING 1. PRODUKT(Nummer, Namn, Typ, Klass, Prisklass, Vikt, Volym, Fraktkostnad) Nummer, Typ Namn, Klass, Pris, Prisklass, Vikt, Volym, Fraktkostnad Namn, Typ Nummer Typ Klass Pris Prisklass Vikt, Volym,
Läs merLogisk databasdesign
NORMALISERING Peter Bellström Logisk databasdesign 2 Arbetssteget vars syfte är att konstruera en modell (diagram, schema), baserad på en specifik datamodell, över verksamhetens begrepp och samband. Modellen
Läs merKarlstads Universitet, Datavetenskap 1
* * * * DAV B04 - Databasteknik! "# $ %'&( ) KaU - Datavetenskap - DAV B04 - MGö 132 Riktlinjer när man vill skapa en databas 1) Designa så att det är lätt att förstå innebörden. Kombinera inte attribut
Läs merDatabaser Design och programmering
Databaser Design och programmering Fortsättning på relationsmodellen: Normalisering funktionella beroenden normalformer informationsbevarande relationsschemauppdelning 2 Varför normalisera? Metod att skydda
Läs merFunktionella beroenden - teori
Relationell databasdesign, FB Teori 7-12 Funktionella beroenden - teori Vid utformning av databassystem är det av största vikt att man kan resonera systematiskt om funktionella beroenden bl.a. för att
Läs mer2NF Hästnamn, KursId, StartDatum, SlutDatum KursId NY!, där RIDKURS.KursId = KURS.KursId 3NF Hästnamn, Art, NY! NY! NY! NY!
ÖVNING 9 2NF HÄST (Hästnamn, Mankhöjd, Favoritmat, Art, Medelvikt, Spiltnummer, Bredd, Höjd) PERSON(Personnummer, Namn, Adress, Telefon) RIDKURS(KursId, StartDatum, SlutDatum, Ledare) KURS(KursId, Svårighetsgrad)
Läs merIdag. Databaskvalitet(??) Databaskvalitet... Databaskvalitet...
Idag Databaskvalitet(??) Hur vet vi att vår databas är tillräckligt bra? Vad är ett beroende? Vad gör man om det blivit fel? Vad är en normalform? Hur når man de olika normalformerna? Det finns metoder
Läs merTentamen plus lösningsförslag
Inst. för Data- och Systemvetenskap SU/KTH Maria Bergholtz, Paul Johannesson Tentamen plus lösningsförslag 2I-1100 Informationssystem och databasteknik Skriv bara på en sida av pappret Skriv namn på varje
Läs merÖVNING 10 2NF Hästnamn, KursId, StartDatum, SlutDatum KursId NY! 3NF Hästnamn, Art, NY! NY! NY! NY! KursId, StartDatum, SlutDatum KursId NY!
ÖVNING 10 2NF HÄST (Hästnamn, Mankhöjd, Favoritmat, Art, Medelvikt, Spiltnummer, Bredd, Höjd) PERSON(Personnummer, Namn, Adress, Telefon) RIDKURS(KursId, StartDatum, SlutDatum, Ledare) KURS(KursId, Svårighetsgrad)
Läs merDatabaser och databasdesign. Den relationella modellen, normalisering och modellering (2)
Databaser och databasdesign Den relationella modellen, normalisering och modellering (2) Varför databaser (DB)? Vi vill och måste kunna lagra data på sätt som motsvarar olika verksamheters behov Vad är
Läs merNormalisering. Christer Stuxberg Institutionen för Informatik och Media
Normalisering Christer Stuxberg christer.stuxberg@im.uu.se Institutionen för Informatik och Media Översikt Normalisering Dataredundans och Uppdateringsanomalier Anomalier vid insättning Anomalier vid borttagning
Läs merKonceptuella datamodeller
Databasdesign Relationer, Nycklar och Normalisering Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Konceptuella datamodeller Om man ska skapa en databas som beskriver en del av verkligheten
Läs merÖVNING 10 2NF Hästnamn, KursId, StartDatum, SlutDatum KursId NY! 3NF Hästnamn, Art, NY! NY! NY! NY! KursId, StartDatum, SlutDatum KursId NY!
ÖVNING 10 2NF HÄST (Hästnamn, Mankhöjd, Favoritmat, Art, Medelvikt, Spiltnummer, Bredd, Höjd) PERSON(Personnummer, Namn, Adress, Telefon) RIDKURS(KursId, StartDatum, SlutDatum, Ledare) KURS(KursId, Svårighetsgrad)
Läs merUniversitetet: ER-diagram
Databaser Design och programmering Fortsättning på relationsmodellen: Normalisering funktionella beroenden normalformer informationsbevarande relationsschemauppdelning Varför normalisera? Metod att skydda
Läs merFöreläsning 6: Normalisering & funktionella beroenden
Föreläsning 6: Normalisering & funktionella beroenden DVA234 Databaser IDT Akademin för Innovation, Design och Teknik Innehåll Föreläsningens mål: Att ge en överblick över hur normalisering fungerar Önskvärda
Läs merLösningsförslag till Tentamen,
Institutionen för Data- och Systemvetenskap SU/KTH Maria Bergholtz och Paul Johannesson Lösningsförslag till Tentamen, 022 2I-00 Informationssystem och databasteknik För att erhålla betyget tre räcker
Läs merNORMALISERING. Mahmud Al Hakim
NORMALISERING Mahmud Al Hakim mahmud@webacademy.se 1 SCHEMA Schema eller databasschema är en beskrivning av vilka data som kan finnas i en databas, oberoende av vilka data (innehållet) som råkar finnas
Läs merKarlstads Universitet, Datavetenskap 1
2003-01-20 DAV B04 - Databasteknik 2003-01-20 KaU - Datavetenskap - DAV B04 - MGö 26 Relationsmodellen En formell teori som baserar sig på (främst) mängdlära predikatlogik Föreslogs av E.F Codd 1970 i
Läs merNormalisering. Varför? För att åstadkomma en så bra struktur i databasen som möjligt med minimalt med dubbellagrad info.
Normalisering Varför? För att åstadkomma en så bra struktur i databasen som möjligt med minimalt med dubbellagrad info. Tillbaka i modelleringsfasen. 1NF: Vad menas med ett sammansatt attribut? Exempel:
Läs merTentamen Databasmetodik DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen Lördag 8 juni kl
Institutionen för Data- och Systemvetenskap IT-universitetet Maria Bergholtz Tentamen DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen Lördag 8 juni kl. 10-14 Inga hjälpmedel tillåtna (syntaxsammanställning
Läs merDatabasdesign. E-R-modellen
Databasdesign Kapitel 6 Databasdesign E-R-modellen sid Modellering och design av databaser 1 E-R-modellen 3 Grundläggande begrepp 4 Begränsningar 10 E-R-diagram 14 E-R-design 16 Svaga entitetsmängder 19
Läs merExempel-Tentamen III
Institutionen för Data- och Systemvetenskap IT-universitetet Maria Bergholtz Exempel-Tentamen III Inga hjälpmedel tillåtna (syntaxsammanställning behövs inte på denna tentamen) Skriv bara på en sida av
Läs merProgramdesign, databasdesign. Databaser - Design och programmering. Funktioner. Relationsmodellen. Relation = generaliserad funktion.
Databaser Design och programmering Relationsmodellen definitioner ER-modell -> relationsmodell nycklar, olika varianter Programdesign, databasdesign Databasdesign Konceptuell design Förstudie, behovsanalys
Läs merTentamen ISGB01 (delkurs i ISGB24) Databasdesign 7,5 Poäng
Tentamen ISGB01 (delkurs i ISGB24) Databasdesign 7,5 Poäng Datum: 2016-11-02 Tid: 08:15 13:15 Lärare: Peter Bellström, Katarina Groth, Remigijus Gustas Hjälpmedel: Inga Tentamen är på 40 poäng. Gränsen
Läs merRelationell databasdesign
Relationell databasdesign Kapitel 7 Relationell databasdesign sid Uppdelning m.h.a. funktionella beroenden 3 Funktionella beroenden - teori 12 Uppdelningsalgoritmer 27 Designprocess 33 Relational oath
Läs merKvalitetstänkande. Utgångsläge Samtliga ER-diagram har överförts till scheman
Kvalitetstänkande Utgångsläge Samtliga ER-diagram har överförts till scheman Förbättra kvaliteten på relationsscheman Normalformler ger dugligare nycklar Hitta funktionella beroenden med hjälp av slutsatsdragning
Läs merRelationsmodellen och syntetisk databasdesign
Relationsmodellen och syntetisk databasdesign Den teoretiska grunden för relationsdatabaser Från konceptuellt schema till databas Relationsmodellen Bil Ägare En relationsdatabas är en databas som uppfattas
Läs merDatabaser - Design och programmering. Relationsmodellen. Relationer - som tabeller. Relationer som tabeller. Alternativa notationer: Relationsschema
Databaser Design och programmering Relationsmodellen definitioner ER-modell -> relationsmodell nycklar, olika varianter Relationsmodellen Introducerades av Edward Codd 970 Mycket vanlig Stödjer kraftfulla
Läs merDatabaser och Datamodellering Foreläsning IV
Webbprogrammering - 725G54 Databaser och Datamodellering Foreläsning IV Agenda Databaser ERD SQL MySQL phpmyadmin Labb 4 Databaser Databas - samling med data Databashanterare Enkelt Kraftfullt Flexibelt
Läs merGIS, databasteknik och kartografi. Kursmaterial för databasdelen
GIS, databasteknik och kartografi Kursmaterial för databasdelen Våren 2004 Innehåll Objekt och objektklasser......................... 3 Samband och sambandsklasser...................... 4 Övningsuppgifter:
Läs merTentamen 2I1033, IT i Organisationer och Databasteknik lördag 17/4 2004, kl. 10 15 LÖSNINGSFÖRSLAG
Institutionen för Data- och Systemvetenskap SU/KTH Maria Bergholtz Tentamen 2I033, IT i Organisationer och Databasteknik lördag 7/4 2004, kl. 0 5 LÖSNINGSFÖRSLAG Inga hjälpmedel tillåtna. Skriv bara på
Läs merSkriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik 2008-08-11 kl. 14 18
LiTH, Tekniska högskolan vid Linköpings universitet 1(5) IDA, Institutionen för datavetenskap Juha Takkinen Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik 2008-08-11 kl. 14 18 Lokal T2 och
Läs merTentamen ISGB01, ISGB24. Databasdesign 7,5 Poäng
Tentamen ISGB01, ISGB24 Databasdesign 7,5 Poäng Datum: 2016-09-30 Tid: 08.15-13.15 Lärare: Peter Bellström, Katarina Groth, Johan Högberg Tentamen är på 40 poäng. Gränsen för Godkänd (G) är 20 poäng. Gränsen
Läs merTENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: 033-4354424. Anslås inom 3 veckor
TENTAMEN För kursen DATUM: 2013-12-12 TID: 9 14 Ansvarig för tentamen: Cecilia Sönströd Förfrågningar: 033-4354424 Resultat: Betygsskala: Hjälpmedel: Anslås inom 3 veckor Godkänt 20 p, Väl godkänt 32 p,
Läs merTentamen Databasmetodik DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen 8 augusti 2013 kl. 9-13
Institutionen för Data- och Systemvetenskap IT-universitetet Maria Bergholtz Tentamen DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen 8 augusti 203 kl. 9-3 Inga hjälpmedel tillåtna (syntaxsammanställning
Läs merRelationsdatabasdesign
Vad är Relationsdatabasdesign? Relationsdatabasdesign nikosd@kth.se 08-7904460 rum 8522 Connolly/Begg (3rd edition) Kapitel 4., 4.2 och 5 (4th edition) Kapitel 5., 5.2 och 6 (5th edition) Kapitel 6., 6.2
Läs merTENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor
TENTAMEN För kursen DATUM: 2014-12-18 TID: 9 14 Ansvarig för tentamen: Cecilia Sönströd Förfrågningar: 033-4354424 Resultat: Betygsskala: Hjälpmedel: Anslås inom 3 veckor Godkänt 20 p, Väl godkänt 32 p,
Läs merTENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: 033-4354424. Anslås inom 3 veckor
TENTAMEN För kursen DATUM: 2014-08-20 TID: 9 14 Ansvarig för tentamen: Cecilia Sönströd Förfrågningar: 033-4354424 Resultat: Betygsskala: Hjälpmedel: Anslås inom 3 veckor Godkänt 20 p, Väl godkänt 32 p,
Läs merInformationssystem och Databasteknik
Informationssystem och Databasteknik Föreläsning 4 Relationsmodellen Från konceptuell modell till relationsdatabasschema Inför projektarbetet: - sammansmältning av flera överlappande modeller av samma
Läs merKarlstads Universitet, Datavetenskap 1
DAV B04 - Databasteknik KaU - Datavetenskap - DAV B04 - MGö 1 Normalisering Förut sunt förnuft Nu formell metod riktlinjer för att hjälpa till att gruppera attributen (egenskaperna) för varje relation
Läs merConcepts learned this far. ER till relationer. ER till relationer. ER till relationer. TDDD12 Database Technology
2008-04-07 TDDD12 Lecture 3: EER and mapping E 1 TDDD12 Database Technology Concepts learned this far Lecture 3: EER/ER and mapping to relations by Juha Takkinen 2008-04-07 1 2 2008-04-07 TDDD12 Lecture
Läs merVad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista
Databaser Vad är en databas? Vad du ska lära dig: Använda UML för att modellera ett system Förstå hur modellen kan översättas till en relationsdatabas Använda SQL för att ställa frågor till databasen Använda
Läs merTentamen för DD1370 Databasteknik och informationssystem
Tentamen för DD1370 Databasteknik och informationssystem 16 Januari 2015 Hjälpmedel: Inga hjälpmedel utom papper och penna Tänk på: Skriv högst en uppgift på varje blad. Använd endast framsidan på varje
Läs merTentamen i Databasteknik
Tentamen i Lördagen den 21 oktober 2006 Tillåtna hjälpmedel: Allt skrivet material Använd bara framsidan på varje blad. Skriv max en uppgift per blad. Motivera allt, dokumentera egna antaganden. Oläslig/obegriplig
Läs merGrunderna för relationsmodellen!
Grunderna för relationsmodellen! 1 Varför behöver jag lära mig relationsmodellen?! Relationsmodellen är den totalt dominerande datamodellen i moderna databassystem Beskriver databaser som en mängd tabeller
Läs merTentamen EIT:DB Databastmetodik 11/1 2013 kl. 13 17 + Lösningsförslag
Tentamen EIT:DB Databastmetodik 11/1 2013 kl. 13 17 + Lösningsförslag Inga hjälpmedel är tillåtna (annat än ordbok). Kort syntaxsamling för delar av SQL samt lista med symboler för relationsalgebraiska
Läs merFrågor att lösa med SQL mot databasen kursdb_sql Sida 1 av 5
Frågor att lösa med SQL mot databasen kursdb_sql Sida 1 av 5 1 Frågor mot en tabell och något selektionsvillkor. A Ta fram personnummer, namn, adress och postnummer på personer som bor i Solna! B Ta fram
Läs merTentamen för DD1370 Databasteknik och informationssystem
Tentamen för DD1370 Databasteknik och informationssystem 10 April 2015 Hjälpmedel: Inga hjälpmedel utom papper och penna Tänk på: Skriv högst en uppgift på varje blad. Använd endast framsidan på varje
Läs merWebbprogrammering, grundkurs 725G54
Webbprogrammering, grundkurs 725G54 Bootstrap jquery SEO RWD MuddyCards. Tidigare Muddycards Många positiva kommentarer Ibland för högt tempo på föreläsning Lägg ut labbar tidigare Mer föreläsningar (2
Läs merIT i organisationer och databasteknik
IT i organisationer och databasteknik Föreläsning 4 Relationsmodellen Från konceptuell modell till relationsdatabasschema Regler i ER-scheman eller UMLklass diagram? I Som klasser: RABATT KlassArabatt:
Läs merTentamen. Databasmetodik Lördag 27 september 2014 kl
Inst. för Data- och Systemvetenskap SU/KTH Tentamen EIT:DB, SP:DB, DVK:DB, ATD:DB, FK:DB, DSK:DB Ska även användas av äldre kurstillfällen, t ex för IV1018, IV1003, ITK3:DB, ITK1:DB, DSV1:DB mfl. Databasmetodik
Läs merTentamen för DD1370 Databasteknik och informationssystem
Tentamen för DD1370 Databasteknik och informationssystem 13 Mars 2014 Hjälpmedel: Inga hjälpmedel utom papper och penna Tänk på: Skriv högst en uppgift på varje blad. Använd endast framsidan på varje blad.
Läs merLösningsförslag Tentamen, 25 april 03
Lösningsförslag Tentamen, 25 april 03 Uppgift 1 Kommentar: Svårigheterna ligger i att differentiera mellan BIL och BILMODELL och MOTOR och MOTORTYP. Båda avbildare ett sk. powertype-förhållande (templatecopy)
Läs merTENTAMEN TDDB77 Databaser och Bioinformatik 17 mars 2005, kl 8-12
Institutionen för atavetenskap Linköpings universitet TENTAMEN TDDB77 Databaser och Bioinformatik 17 mars 2005, kl 8-12 Jourhavane lärare: Patrick Lambrix/Almut Herzog (28 26 05/28 26 08) Poäng: Tentan
Läs merModul DB1-1 Databasmodellering
Modul DB1-1 Databasmodellering Antal föreläsningar: 2 Antal laborationer: 1 Förkunskapskrav: Databasintroduktion Kurslitteratur: Referenslitteratur: Praktisk datamodellering ISBN: 91-44-38001-1 1 Innehållsförteckning
Läs merIdag. Hur vet vi att vår databas är tillräckligt bra?
Idag Hur vet vi att vår databas är tillräckligt bra? Vad är ett beroende? Vad gör man om det blivit fel? Vad är en normalform? Hur når man de olika normalformerna? DD1370 (Föreläsning 6) Databasteknik
Läs merExempel tentamen. Skriv bara på en sida av pappret Skriv namn på varje papper Skriv läsligt, annars rättas inte tentamen Alla hjälpmedel är tillåtna
Inst. för Data- och Systemvetenskap SU/KTH Maria Bergholtz, Paul Johannesson Exempel tentamen 2I-1100 Informationssystem och Databasteknik Tentamen är öppen i så motto att läroböcker, föreläsningsanteckningar,
Läs merLite om databasdesign och modellering
Lite om databasdesign och modellering Konceptuell databasdesign Med konceptuell databasdesign avses processen att konstruera en datamodell för en verksamhet, oberoende av fysiska villkor. Modelleringen
Läs merTentamen. i Databasteknik. lördagen den 13 mars 2004. Tillåtna hjälpmedel: Allt upptänkligt material
Tentamen i lördagen den 13 mars 2004 Tillåtna hjälpmedel: Allt upptänkligt material Använd bara framsidan på varje blad. Skriv max en uppgift per blad. Motivera allt, dokumentera egna antaganden. Oläslig/obegriplig
Läs merWebprogrammering och databaser. Konceptuell datamodellering med ER-modellen
Webprogrammering och databaser Konceptuell datamodellering med ER-modellen 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign
Läs merTentamen DATABASTEKNIK - 1DL116
Uppsala universitet Institutionen för informationsteknologi Kjell Orsborn Tentamen 2003-05-20 DATABASTEKNIK - 1DL116 Datum...Tisdagen den 20 Maj, 2003 Tid...12:00-17:00 Jourhavande lärare...kjell Orsborn,
Läs merInst. för Data- och Systemvetenskap SU Maria Bergholtz. Tentamen. 21/ kl Inga hjälpmedel är tillåtna (annat än ordbok).
Inst. för Data- och Systemvetenskap SU Maria Bergholtz Tentamen 2/3 205 kl. 4 8 Inga hjälpmedel är tillåtna (annat än ordbok). Skall även användas som omtentamen för DB:EIT/DSK/FK samt äldre databaskurser.
Läs merFöreläsning 3 Dagens föreläsning går igenom
Databasbaserad publicering Föreläsning 3 1 Föreläsning 3 Dagens föreläsning går igenom E/R-modellen & Läs om E/R-diagram i kapitel 2-3 i boken "Databasteknik" eller motsvarande avsnitt på http://www.databasteknik.se/webbkursen/er/index.html
Läs merWebprogrammering och databaser. Konceptuell datamodellering med ER-modellen
Webprogrammering och databaser Konceptuell datamodellering med ER-modellen 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign
Läs merTentamen för DD1370 Databasteknik och informationssystem
Tentamen för DD1370 Databasteknik och informationssystem Exempeltenta för kursen ht2013 Hjälpmedel: Inga hjälpmedel utom papper och penna Tänk på: Skriv högst en uppgift på varje blad. Använd endast framsidan
Läs merRelationsmodellen. Relations modellen är idag den mest änvända datamodellen för kommersiella
Relationsmodellen 2-1 Relationsmodellen Relations modellen är idag den mest änvända datamodellen för kommersiella applikationer. Relationsdatabasstruktur En relationsdatabas består av en samling tabeller,
Läs merDD1350 Logik för dataloger. Fö 7 Predikatlogikens semantik
DD1350 Logik för dataloger Fö 7 Predikatlogikens semantik 1 Kryssprodukt av mängder Om A och B är två mängder så är deras kryssprodukt A B mängden av alla par (a,b), där a A och b B. Ex: A={1,2}, B={3,4},
Läs merTENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor
TENTAMEN För kursen DATUM: 2014-11-07 TID: 9 14 Ansvarig för tentamen: Cecilia Sönströd Förfrågningar: 033-4354424 Resultat: Betygsskala: Hjälpmedel: Anslås inom 3 veckor Godkänt 20 p, Väl godkänt 32 p,
Läs merLösningsförslag till fiktiv tentamen för DD1370 Databasteknik och informationssystem
Lösningsförslag till fiktiv tentamen för DD1370 Databasteknik och informationssystem Hösten 2011 1. a) Jag följer kokboken (förel 3, bild 34) a. Regeln säger att alla objektklasser med e-termer ska bilda
Läs merLMA033/LMA515. Fredrik Lindgren. 4 september 2013
LMA033/LMA515 Fredrik Lindgren Matematiska vetenskaper Chalmers tekniska högskola och Göteborgs universitet 4 september 2013 F. Lindgren (Chalmers&GU) Matematik 4 september 2013 1 / 25 Outline 1 Föreläsning
Läs merVad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista
Databaser Vad är en databas? Vad du ska lära dig: Använda UML för att modellera ett system Förstå hur modellen kan översättas till en relationsdatabas Använda SQL för att ställa frågor till databasen Använda
Läs merUppdelning. Relationell databasdesign, FB Teori 7-20. Låt R vara ett relationsschema. R 1, R 2,..., R n är en uppdelning av
Relationell databasdesign, FB Teori 7-20 Uppdelning Låt R vara ett relationsschema. R 1, R 2,..., R n är en uppdelning av R om R i = R, i=1,...,n. Dvs. varje R i är en delmängd av R och varje attribut
Läs merModul DB1-2 Datamodellering
Modul DB- Datamodellering Antal föreläsningar: Antal laborationer: Förkunskapskrav: Grundläggande kännedom om databaser (Modul DB-) Kurslitteratur: Referenslitteratur: Praktisk datamodellering ISBN: 9-44-800-
Läs merKonceptuell modellering
Konceptuell modellering En konceptuell modell beskriver data och datasamband på ett representationsoberoende sätt. Vad modellen sen ska implementeras som/i får inte påverka modellens utformning! Grundbegrepp:
Läs merDatabaser design och programmering. Design processen ER- modellering
Databaser design och programmering Design processen ER- modellering 2 Programutveckling Förstudie, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign Databasdesign
Läs merTentamenskod: Tentamensdatum: Tid: 14:00-19:00. Inga hjälpmedel är tillåtna
Databasteknik 7,5 högskolepoäng Provmoment: Ladokkod: Tentamen ges för: Tentamen NDA01G Öppen för alla Tentamenskod: Tentamensdatum: 2017-11-02 Tid: 14:00-19:00 Hjälpmedel: Inga hjälpmedel är tillåtna
Läs mer25/11/14. Databasteknik och informationssystem DD1370. Påminnelse inför Lab 1 redovisningen. Repetition: ER modellering (gammalt + nytt)
25//4 Påminnelse inför Lab redovisningen Databasteknik och informationssystem DD370 Föreläsning 5: ER-modellenà Databas Påminnelse: Kursens mål. Förklara ett databashanteringssystems funktioner och uppbyggnad
Läs merTENTAMEN. TDDD12 Databasteknik TDDD46 Databasteknik. 16 augusti 2010, kl 14-18
LiTH, Linköpings tekniska högskola IDA, Institutionen för datavetenskap Jose M. Peña 2010-08-10 Lokal TER1 och TERC. Tillåtna hjälpmedel Lexikon, miniräknare. TENTAMEN TDDD12 Databasteknik TDDD46 Databasteknik
Läs merTentamen i. Databasteknik
Tentamen i Databasteknik Torsdagen den 10/3 2005 14.00-19.00 Tillåtna hjälpmedel: Allt tänkbart material Använd bara framsidan på varje blad Skriv max en uppgift per blad. Skriv tydligt. Motivera allt.
Läs merEtt arbetsexempel Faktureringsrutin
Ett arbetsexempel Faktureringsrutin Detta dokument är skrivet för att i första hand förstå den process som äger rum och vilka steg som man ska genomföra och att förstå vad som utförs i de tre viktiga stegen
Läs merLösningsförslag, tentamen i Databaser
LUNDS TEKNISKA HÖGSKOLA 1(4) Institutionen för datavetenskap Lösningsförslag, tentamen i Databaser 2004-04-20 1. ER-diagram: Matsedel år vecka serveras 1..5 lagas-med Maträtt Ingrediens dag mängd Allergi
Läs merDatabaser design och programmering. Fö 2: Design processen, ER-modellering
Databaser design och programmering Fö 2: Design processen, ER-modellering 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign
Läs merTentamen för DD1370 Databasteknik och informationssystem
Tentamen för DD1370 Databasteknik och informationssystem 24 Augusti 2015 Hjälpmedel: Inga hjälpmedel utom papper och penna Tänk på: Skriv högst en uppgift på varje blad. Använd endast framsidan på varje
Läs merTENTAMEN TDDB77 Databaser och Bioinformatik 12 juni 2007, kl 14-18
Institutionen för datavetenskap Linköpings universitet TENTAMEN TDDB77 Databaser och Bioinformatik 12 juni 2007, kl 14-18 Jourhavande lärare: Patrick Lambrix (013/28 26 05) Poäng: Tentan består av 2 delar.
Läs merMA2047 Algebra och diskret matematik
MA2047 Algebra och diskret matematik Något om funktioner och relationer Mikael Hindgren 1 oktober 2018 Funktionsbegreppet Exempel 1 f (x) = x 2 + 1, g(x) = x 3 och y = sin x är funktioner. Exempel 2 Kan
Läs merUtveckling av webbapplikationer med.net, DVA213 (1 av 5)
Utveckling av webbapplikationer med.net, DVA213 (1 av 5) TENTAMEN Utveckling av webbapplikationer med.net, DVA213, 15/08/12 kl. 8:10-12:30 Ansvariga lärare: Afshin Ameri, Dag Nyström Max poäng: 60p Betygsgränser:
Läs mer! Webprogrammering. ! Databasteori och praktik. ! Fö, le, la + projekt. ! Examination (tenta, dugga + labb, ! Studera användarna och deras problem
Webprogrammering och databaser! Idag: Diverse praktiskt om kursen Webprogrammering Databaser, terminogi Start på ER-modellering! Webprogrammering Kursöversikt! Databasteori och praktik! Fö, le, la + projekt!
Läs merAlgebra och kombinatorik 28/4 och 5/ Föreläsning 9 och 10
Grupper En grupp är ett par (G,*) där G är en mängd och * är en binär operation på G som uppfyller följande villkor: G1 (sluten) x,yϵg så x*yϵg G2 (associativ) x,y,z ϵg (x*y)*z=x*(y*z) G3 (identitet) Det
Läs merLösningsförslag till. tentamen för 1E1601
Lösningsförslag till tentamen för 1E1601 måndag 10 mars 2003 Lösningsförslag till tentamen för 1E1601 10 mars 2003 Sid 1 av 3 1. a. Antaganden: i. Varje film har ett eget beställningsnummer så att det
Läs merTENTAMEN För kursen. Databasteknik. Ansvarig för tentamen: Anna Palmquist. Förfrågningar: Anslås inom 3 veckor
TENTAMEN För kursen DATUM: 2015-11-06 TID: 14 19 Ansvarig för tentamen: Anna Palmquist Förfrågningar: 0734-612003 Resultat: Betygsskala: Hjälpmedel: Anslås inom 3 veckor Godkänt 20 p, Väl godkänt 32 p,
Läs merDiskret matematik: Övningstentamen 1
Diskret matematik: Övningstentamen 1 1. Bevisa att de reella talen är en icke-uppräknelig mängd.. För två mängder av positiva heltal A och B skriver vi A C B, om det är så att A innehåller ett heltal som
Läs merTentamen NDA01G Öppen för alla. Tentamenskod: Inga hjälpmedel är tillåtna
Databasteknik 7,5 högskolepoäng Provmoment: Ladokkod: Tentamen ges för: Tentamen NDA01G Öppen för alla Tentamenskod: Tentamensdatum: 2016-11-04 Tid: 14:00-19:00 Hjälpmedel: Inga hjälpmedel är tillåtna
Läs merTDDI60 Tekniska databaser
Lena Strömbäck 2006-10-13 Skriftlig tentamen i kursen TDDI60 Tekniska databaser Datum: 2006-10-13 Tid: 8-12 Lokal: T2, U3 Hjälpmedel: Engelsk ordlista tillåten ej elektronisk Poängränser: Tentamen består
Läs mer