Databasteknik NADA, KTH & SU

Storlek: px
Starta visningen från sidan:

Download "Databasteknik NADA, KTH & SU"

Transkript

1 Databasteknik Kjell Lindqvist, (08) Sid 1 Objekt/Objektklasser Samband / Sambandsklasser Ett objekt är ett föremål eller ett begrepp som kan identifieras entydigt med ett identifikationsbegrepp inom modellens ram. En objektklass är en samlande beskrivning av objekt som identifieras på samma sätt. Person Objektklass Objektklassen person används t.ex. för att skapa objekt (instanser) innehållande (i det här fallet) ID-nr, namn och adress på personer Hans Perssson Gamla Vägen Olle Jonsson NyaVägen33 I datamodeller beskriver vi objektklasserna enligt ovan med angivande av objektklassens namn, samt i tabeller enligt nedan (T-matriser), där identifikationsterm (I-term) samt egenskapstermer (E-termer) anges med namn. Ett samband beskriver ett relevant förhållande mellan två eller flera objekt. Det identifieras entydigt av I-termerna för de objekt det relaterar till varandra. Beroende på om det beskriver ett samband mellan två eller flera objekt kallas det av 2:a, 3:e o.s.v ordningen. Sambandet har dessutom, om det är av 2:a ordningen, en typ 1:1, 1:N eller M:N, enligt nedan. Om det är av högre ordning tillmäts det inte någon typ. Sambandsklasserna beskrivs som linjer mellan de objekt som de relaterar till varandra utan angivande av I-termer eller E-termer, samt i T-matriser med angivande av namnen på sina I- resp. E-termer. Kvinna Chef Författare 1:1 1:N M:N Gift med Basar över Till Man Anställd Bok T-matris Typ Namn I-termer E-termer Obj Person ID-nr Namn, Adress Projekt Beställning Leverantör Material Objektförekomster presenteras i huvudsak genom tabeller, t.ex.: Sambandförekomster beskrivs i form av tabeller, precis som objektförekomster. Person ID-nr Namn Adress 2207 Hans Persson Gamla Vägen Olle Jonsson Nya Vägen 33

2 Sid 2 Kjell Lindqvist, (08) Databasteknik Övningsuppgifter i datamodellering Uppgift 1 Ett flygbolag önskar ett databassystem omfattande: Alla passagerare som har rest eller ämnar resa med bolaget. Namn, adress och telnr är intressanta samt naturligtvis sträckan de har eller ska åka. Varje sträcka som trafikeras varje dag av ett antal förbindelser (flights). Varje sådan förbindelse har ett unikt förbindelsenummer och ska innehålla information om varifrån planet går, destination, avgångstid och ankomsttid. Observera dock att 0900-planet mellan Umeå (=UME) och Bromma (=BMA) har samma förbindelsenummer varje dag. För olika resursberäkningar registreras också för varje avgång vilket specifikt plan som ska användas. För varje avgång vill man också ha uppgifter om arbetande personal. De registreras med namn, yrke och adress. För piloterna är man också intresserad av vilka flygplanstyper de är utbildade för. Flygplanstypen består av tillverkare och modellbeteckning Det kan naturligtvis finnas flera plan av samma typ. Dessa identifieras unikt med ett namn t.ex. LELLE VIKING. Gör en datamodell över detta så att t.ex. följande frågor kan besvaras : Med vilka piloter har en passagerare åkt? Bestäm namnet på de flygplan en speciell pilot är utbildad för. Ta reda på alla avgångar från BMA till UME under veckan 22/4-29/4 med förbindelsenummer, avgångs- och ankomsttid. Undersök om någon pilot är kompetent att flyga hela flygplansflottan. Vilka passagerare har åkt med någon förbindelse med avgångstid före kl 0700? Uppgift 2 Upprätta en datamodell över en skolas högstadium. Den skall innehålla uppgifter om alla skolklasser, alla elever och alla lärare. För alla klasser vill man förutom klassrumsnumret även veta vilka lärare de har i de olika ämnena, vem som är klassföreståndare och var de skall vara då de har specialämnen och inte kan vara i det egna klassrummet. Elever har en klassföreståndare men kan gå kurser som inte omfattar alla elever i klassen (tillvalsämnen tex) där de går tillsammans med elever från andra klasser. Beroende på ämne kan olika klassrum vara olika lämpliga. En lärare kan vara behörig i flera ämnen. Systemet skall naturligtvis ge information om i vilken klass en elev går samt dessutom namn, personnummer, adress, tel, m.m. för såväl lärare som elever. Uppgift 3 En sjukvårdsförvaltning som innefattar 6 större och 4 mindre sjukhus samt 3 fristående laboratorier önskar en datamodell över den interna sjukhusadministrationen. För sjukhusen finns uppgifter om namn, adress, telnr, antal rum och totalt antal bäddar. För laboratorierna finns uppgifter om namn, adress, telnr, de prover (med unikt provnummer) som undersökts de senaste 6 månaderna och från vilka personer resp prov kommer. Alla inneliggande patienter skall medtas med uppgift om personnummer, namn, adress, bäddnr, vilket rum och vilket sjukhus patienten finns på samt vilken diagnos patienten fått. Diagnosen innehåller t.ex. information om typ av sjukdom, övriga besvär och allergiska reaktioner. Om läkarna finns uppgifter om personnummer, namn, adress, skiftschema och specialitet och vilka patienter han ansvarar för. Om övrig personal finns uppgifter om personnummer, namn, adress samt vilka rum denna person helt eller delvis ansvarar för. Gör en datamodell över detta. Uppgift 4 Gör en datamodell över följande biblioteksverksamhet. Detta skall finnas med : Bibliotekets namn, storlek (5 olika värden), adress, distrikttillhörighet samt uppgift om vilket bibliotek som är huvudbibliotek inom distriktet. Uppgifter om personalen som jobbar på biblioteken (Namn, adress och lön). Alla böcker med klassifikationskod, titel, författare, antal utlåningar/bibliotek. Utlåningsdatum och återlämningsdatum för böcker som är utlånade. Låntagares namn, adress och lånekortsnummer. Kö för låntagare som vill låna en speciell bok.

3 Databasteknik Kjell Lindqvist, (08) Sid 3 Från datamodell till databasstruktur 1. Huvudregler a. Objektklass som innehåller E-term(er) bildar en egen basrelation. b. Objektklass som bara består av en I-term och som finns på N-sidan i ett 1:N-sambandsklasser bildar egna basrelationer. c. Sambandsklass av ordning > 2 bildar egen basrelation. d. Sambandsklass av ordning = 2 och av typ M:N bildar egen basrelation. e. Sambandsklass av typ 1:N försvinner men I-termen i objektklassen som finns på 1-sidan blir E-term i objektklassen på N-sidan. Eventuella E-termer i sambandsklassen blir E-termer i objektet på N- sidan. f. Sambandsklass av typ 1:1 behandlas som om den vore av typen 1:N (regel e) med godtyckligt val av N-sida. Alternativt slås de objektklasser, som sambandet förbinder, samman till en basrelation. Eventuella E- termer i sambandsklassen blir E-termer i objektet på N-sidan. 2. Normalisering Kontroll måste ske av att de enligt 1. erhållna basrelationerna är normaliserade. Om så inte är fallet måste man normalisera dessa. Efter normaliseringen måste man genom reverse engeneering rita den modell som motsvarar de erhållna basrelationerna (rita modellen genom att använda reglerna enligt 1 "baklänges"). Kontrollera att modellen fortfarande stämmer med den verklighet som den avbildar och om så inte är fallet måste justeringar göras. Om modellen justerats måste hela processen göras om från början (överför till databasstruktur, kontrollera att basrelationerna är normaliserade ). Avseende metodiken vid normalisering, se normaliseringsavsnittet. 3. Sammanslagning av basrelationer Att slå samman två eller flera basrelationer till en basrelation kan ibland vara nödvändigt, framförallt av prestandaskäl. Den basrelation man erhåller på detta sätt är i regel inte normaliserad och man kan alltså få alla de problem som icke normaliserade basrelationer kan medföra. 4. Uppdelning av basrelationer Att dela upp en basrelation i två eller flera basrelationer kan vara en annan metod att uppnå vissa prestandaförbättringar. Om man t.ex. har många egenskapstermer i en basrelation och det är mycket olika åtkomstfrekvens på dessa termer kan man separera de termer man vill komma åt och låta dem bilda en egen basrelation, speciellt då det gäller tunga transaktioner. 5. Sammanslagning och uppdelning av basrelationer p.g.a. databashanteringssystemet Även om man har beslutat sig för att kokboksmässigt följa reglerna och inte acceptera annat än basrelationer normaliserade till minst 3:e normalform kan det databashanteringssystem man använder ha egenskaper som gör det nödvändigt att slå samman resp. dela upp basrelationer. Det kan t.ex. finnas restriktioner avseende antalet samtidigt öppna filer, på antalet element i en post eller på antalet poster i en fil.

4 Sid 4 Kjell Lindqvist, (08) Övningsuppgifter i frågespråk Databasteknik Normalisering Databasstruktur: Anställd ( ( namn ), lön, chef, avd ); Försäljning ( ( avd, varunr ), volym ); Leverantör ( ( företag ), adress ); Lager ( ( företag, avd, varunr ), volym ); Avdelning ( ( avd ), våning ); Vara ( ( varunr ), typ ); Formulera följande frågor i Relationsalgebra, tupelkalkyl, domänkalkyl, SQL, SAL och QBE. 1. Vilka anställda arbetar på leksaksavdelningen? 2. Vilka varor säljs på andra våningen? 3. Vilka varor säljs inte av någon avdelning på andra våningen? 4. Vilka varor säljs av alla avdelningar på andra våningen? 5. Vilka varor säljs av minst två avdelningar på andra våningen? 6. Hur mycket tjänar Anderssons chef? 7. Vilka anställda tjänar mer än sin chef? 8. På vilka avdelningar tjänar alla anställda mindre än sina chefer? 9. Vilka företag levererar varor till mer än en våning? 10. På vilka avdelningar är medellönen större än 10000? 11. Vilka chefer har mer än 10 anställda under sig, och vilken lön har dessa chefer? 12. Vilka anställda på skoavdelningen har mer än i lön, och vad heter deras närmsta chef? 13. Vilka anställda tjänar mer än alla på skoavdelningen? 14. Vilka företag levererar pennor? 15. Vilka företag levererar inte pennor? OBS! En i huvudsak semantisk operation, svår att automatisera.det bästa sättet är att gå tillväga på enklast möjliga, manuella sätt. Nedan följer en liten "handbok" i normalisering till 3NF. Det finns högre normalformer än 3NF, men det räcker att kunna dessa 3. Avsikten med normaliseringen är att avslöja och lösa upp dolda strukturer i data, oftast dolda i egenskaperna hos ett objekt eller samband. I en normaliserad datamodell är de egenskaper som definierats i ett objekt eller ett samband "funktionellt beroende" av id-termen. Normaliseringsprocessen utförs i tre steg och en fullt normaliserad databas säga vara i "tredje normalform" (3NF). Detta betyder att alla termer i egenskapsdelen på ett objekt/samband skall vara funktionellt beroende av alla id-termer, och får inte vara funktionellt beroende av ickeprima attribut. Funktionellt beroende kan man definiera så: Term A är funktionellt beroende av term B om A kan ha ett och endast ett värde tillsammans med ett givet värde hos term B. Term B kan vara en sammansatt term. Ex.: Ex.: En persons namn och hårfärg kan anses vara funktionellt beroende av personens personnummer. En sammanställning av timpriset för olika projektmedlemmar på ett företag visar att, i detta fall, timpriset är funktionellt beroende av både personen och projektet. Varför är normalisering viktigt? Utan den kan vi stöta på problem avseende uppdatering, lagring av nya data samt borttagning av data.

5 Databasteknik Kjell Lindqvist, (08) Sid 5 Normalisering Hur definieras de olika normalformerna?? 1NF: En basrelation är i 1NF omm alla attributvärden är atomära (en tabell är i 1NF omm alla skärningar mellan rad och kolumn endast innehåller ett distinkt värde). 2NF: En basrelation är i 2NF omm den är i 1NF och varje ickeprimt attribut är fullständigt funktionellt beroende av varje kandidatnyckel *. 3NF: En basrelation är i 3NF omm den är i 2NF och varje ickeprimt attribut är icke transitivt beroende av varje kandidatnyckel, d.v.s. inte beror av kandidatnyckeln via något annat ickeprimt attribut. OK, låter bra men, hur når man detta, för relationsdatabasen, så viktiga tillstånd?? * Se Elmasri, Navathe Första normaliseringssteget: Genomföres genom att man hittar en nyckel för hela relationen. Det är viktigt att hitta alla kandidatnycklarna till relationen. Andra normaliseringssteget: Utförs om en eller flera av de ickeprima egenskaperna i en basrelation är funktionellt beroende av en del av någon kandidatnyckel, men inte av hela. Detta steg kan alltså utföras endast på basrelationer som har minst en sammansatt kandidatnyckel. Genomföres genom att man skiljer ut de ickeprima egenskaper som är funktionellt beroende av endast en del av en kandidatnyckel och gör dem till en egen tabell som får som identifikationsdel den del av den ursprungliga kandidatnyckel som de är partiellt beroende av. Tredje normaliseringssteget: Utförs om det existerar transitiva funktionella beroenden i en basrelation, d.v.s. om en ickeprim egenskapsterm är funktionellt beroende av andra ickeprim egenskapstermer som i sin tur beror av en nyckel. Genomföres genom att man skiljer ut de egenskaper som är funktionellt beroende av andra egenskapstermer och gör dem till en egen tabell som får som identifikationsdel de egenskapstermer i den ursprungliga basrelationen som de är funktionellt beroende av. Dessa kvarstår som egenskapstermer i den ursprungliga basrelationen. Efter utförd normalisering: Utgående från den normaliserade strukturen ritas en ER-modell. Med hjälp av modellen kontrolleras resultatet så att det stämmer med den verklighet som avbildas.

6 Sid 6 Kjell Lindqvist, (08) På det till dags dato lilla företaget Lilla AB har man nöjt sig med ett kortregister för att hålla reda på personalen. Företaget har som policy att se till att dess anställda är rejält försäkrade, och försäkringar som företaget består med finns också med på korten. Ett ex. på hur ett kort kan se ut: Databasteknik Övningsuppgifter i normalisering 3. Problemet i 1) råkar även Mekanik montering AB ut för när det gäller företagets inköp. Dessa har skötts m.h.a kort med utseendet: Varunamn: Skål Varunummer: Vikt: 0,37 Anställd Namn: PNr: Adress: PostNr: PAdr: AnstDat: Lön: Anhöriga Karin Johan Ann Krister Pelle Karlsson Vårgatan Vårstad maka son dotter son Försäkringar Olycksfall Liv Leverantör: Lasses Järn Adress: Storgat 16 tele: best Leverantör: Olles spik Adress: Lillgat 45 tele: best datum datum pris 34,70 34,70 35,10 pris lev lev rest 74 0 rest Företaget växer och har behov av en databas. Att direkt överföra informationen på korten till en databasstruktur är inte möjligt. Normalisera därför detta till 1NF, 2NF samt 3NF. Notera alla antaganden. 2. Man har på KTH elevprojekt där man för varje deltagande elev registrerar: Personnummer, namn, linjetillhörighet (t.ex.: D87/ MD87/SU89), handledares anställningsnummer(= persnr), handledares namn, handledares kontor (lokala adress), handledares arbetstelefon, projektnummer, projektnamn, kort projektbeskrivning, totala antalet poäng på projektet, elevens hittills insamlade poäng (på projektet) samt datum för elevens sista kontakt med handledare. En elev kan delta i flera projektarbeten. Allt detta har man registrerat under elevens personnummer och om eleven deltar i flera projekt finns ett registerblad per projekt (alltså är inte persnr ett entydigt id-begrepp). Skriv som en relation och överför till 1NF, 2NF samt 3NF. Motivera varje steg i lösningen , Normalisera även detta till 1NF, 2NF samt 3NF. 4. Tandläkaren Sven Borrglad har ett kortregister över sina patienter där man tycker sig kunna se att han vill betrakta sig själv som familje-tandläkare. Ett kort har följande utseende: FamiljeNr PatientNr 150 FamiljeNamn FamiljeAdress BetalningsBalans PatientNamn TandStatus Åtgärdskod ÅtgärdsBeskrivning Pris Datum sorterat efter patientnr. Överför steg för steg till 1, 2, 3NF, med angivande av vilka funktionella beroenden som motiverar varje utförd åtgärd.

7 Kjell Lindqvist, (08) Databasteknik Sid 7 Övningsuppgifter i normalisering 5. Öhmans Varuhus skall skapa ett datoriserat system för att administrera personal och varor. En nyanställd systemerare (som tidigare arbetat på Varuhuset) utgår ifrån varuhusdatabasen men kommer fram till att tillägg bör göras för att ta hänsyn till följande: En anställd identifieras, förutom av sitt namn, av pnr och ett anställningsnr. En anställd bor på en viss gatuadress har ett postnr och en ortsadress. En anställd kan ha ett flertal telnr. Varje avdelning har endast en chef. En leverantör kan leverera vissa varor (det är dock inte säkert att han levererar något). En leverantör kan kan ha ett antal filialer. En leverantörsfilial har en adress bestående av gatuadress, postnr och ort. En leverantörsfilial kan endast ha ett telnr och ett faxnr. Följande funktionella beroenden gäller: (Listan är inte säkert komplett.) pnr anstnr, Namn, lön, gatuadr, postnr, ort, chef, avd, våning anstnr pnr, Namn, lön, gatuadr, postnr, ort, chef, avd, våning Namn pnr, anstnr, lön, gatuadr, postnr, ort, chef, avd, våning chef avd, våning postnr ort varunr varutyp avd chef, våning leverantör, varunr, avd lagervol, försvol, varutyp varunr, avd försvol, varutyp tel leverantörsfilial, gatuadr, postnr, ort, fax fax leverantörsfilial, gatuadr, postnr, ort, tel leverantörsfilial tel, fax, gatuadr, postnr, ort 6. Givet en relation med schemat U={A, B, C, D, E, F, G} och de funktionella beroendena BC A FG BC B D C E F A G A ABE G ACD F Normalisera till 1NF, 2NF och 3NF 7. Givet en relation med schemat U={A, B, C, D, E, F, G} och de funktionella beroendena AB C B E CF D C A B F CE F CD B B C Normalisera till 1NF, 2NF och 3NF Hjälp systemeraren att definiera en struktur som är normaliserad till 3NF.

8 Sid 8 Databasteknik Kjell Lindqvist, (08) Övningsuppgifter i transaktionshantering 1 Tre olika transaktioner T 1, T 2 och T 3 skall utföra följande operationer i en databas: T 1 : läs A, sedan skriv till B T 2 : läs B, sedan skriv till C T 3 : läs C, sedan skriv till A När transaktionerna påbörjas blir deras operationer sammanflätade i följande operationsföljd: 2 Nedan visas schematiskt ett antal transaktioner mot en databas. Ange hur databasen förändras av de olika transaktionerna. T 1 Write(A) T2 T3 Read(A) Write(A) Read(A) Write(B) Tid T 1 T 2 T 3 Begin Read A Begin Read B Begin Read C Write C Write B Write A a. Är denna operationsföljd serialiserbar? b. Vad händer om man använder låsning? (Antag att varje transaktion låser objekten innan den läser eller skriver det och släpper låset då den inte längre behöver det.) c. Vad händer om man använder tvåfaslåsning? d. Vad händer om man använder konservativ 2- faslåsning? e. Vad händer om man använder 2-faslåsning med wait-die protokollet? f. Vad händer om man använder 2-faslåsning med wound-wait protokollet? g. Vad händer om man använder 2-faslåsning med cautious-wait protokollet? h. Vad händer om man använder 2-faslåsning med no-wait protokollet? i. Vad händer om man använder 2-faslåsning med timeout protokollet? j. Vad händer om man använder tidsstämpling? k. Vad händer om man använder optimistisk samtidighetskontroll? Checkpoint T 5 T 4 Read(D) Read(A) Write(C) Write(D) Systemfel 3 Beskriv hur databassystemet skall agera vid återstart efter systemfel och ange vad effekten blir i föregående övningsuppgift. 4 En bankkund har tre konton i en bank. I början finns det 2000:- på konto A, 1000:- på konto B och 1000:- på konto C. Kunden vill transferera 100:- från konto C till konto B. För detta skall följande transaktion T 1 genomföras: T 1 : C := C T 1 : B := B +100 Ungefär samtidigt startar en transaktion T 2 för ränteberäkning som skall höja alla kontobelopp med 10 procent: T 2 : A := A * 1.1 T 2 : B := B * 1.1 T 2 : C := C * 1.1 När de två transaktionerna genomförs så kan deras operationer sammanflätas på olika sätt. Betrakta följande två operationsföljder (OF): OF1: T 2 : A := A * 1.1 OF2: T 2 : A := A * 1.1 T 1 : C := C 100 T 1 : C := C T 1 : B := B +100 T 2 : B := B * 1.1 T 2 : B := B * 1.1 T 2 : C := C * 1.1 T 2 : C := C * 1.1 T 1 : B := B +100

9 Kjell Lindqvist, (08) Databasteknik Sid 9 a. Är operationsföljderna serialiserbara? b. Vilket blir slutresultaten i de två operationsföljderna? c. Hur mycket förlorar kunden? d. Vilken av följande metoder kan garantera korrekt genomförande av transaktionerna? 1. låsning av varje dataobjektprecis innan det användsoch släpps direkt efter 2. 2-faslåsning 3. konservativ 2-faslåsning 4. optimistisk samtidighetskontroll 5 Ett databassystem har kraschat. Vid återstart av systemet måste innehållet i databasen återställas till ett konsistent tillstånd. För detta används loggfilen, vilken har följande innehåll: Begin_transaction(T2) Write(T2, A, 80, 50) Begin_transaktion(T3) Commit_transaction(T2) Checkpoint Write(T3, B, 40, 30) Begin_transaktion(T1) Write(T1, A, 50, 100) Read(T3, A, 100) Rollback(T3) Begin_transaktion(T3) Write(T1, A, 100, 150) Commit_transaction(T1) Write(T3, B, 40, 30) Övningsuppgifter i transaktionshantering, forts a. Beskriv vad som händer vid återstart. b. Hur ser det återställda databastillståndet ut? c. Vad händer sedan?

GIS, databasteknik och kartografi. Kursmaterial för databasdelen

GIS, 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 mer

Idag. Databaskvalitet(??) Databaskvalitet... Databaskvalitet...

Idag. 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 mer

Normalisering. 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. 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 mer

Tentamen. i Databasteknik. lördagen den 13 mars 2004. Tillåtna hjälpmedel: Allt upptänkligt material

Tentamen. 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 mer

Idag. Varför modellera? Modellering. Modelleringsverktygets egenskaper. Modelleringsverktyget

Idag. Varför modellera? Modellering. Modelleringsverktygets egenskaper. Modelleringsverktyget Idag Varför modellera? Varför modellera? Konceptuell modell sverktyg Objektklasser Sambandsklasser Knepiga attribut sprocessen I all ingenjörsverksamhet där man hanterar komplicerade system behöver man

Läs mer

Idag. Modellering. Varför modellera? Konceptuell modell Modelleringsverktyg Objektklasser Sambandsklasser Knepiga attribut Modelleringsprocessen

Idag. Modellering. Varför modellera? Konceptuell modell Modelleringsverktyg Objektklasser Sambandsklasser Knepiga attribut Modelleringsprocessen Idag Modellering Varför modellera? Konceptuell modell Modelleringsverktyg Objektklasser Sambandsklasser Knepiga attribut Modelleringsprocessen DD1370 (Föreläsning 3) Databasteknik och informationssystem

Läs mer

Idag. Modellering. Varför modellera? Konceptuell modell Modelleringsverktyg Objektklasser Sambandsklasser Knepiga attribut Modelleringsprocessen

Idag. Modellering. Varför modellera? Konceptuell modell Modelleringsverktyg Objektklasser Sambandsklasser Knepiga attribut Modelleringsprocessen Idag Modellering Varför modellera? Konceptuell modell Modelleringsverktyg Objektklasser Sambandsklasser Knepiga attribut Modelleringsprocessen DD1370 (Föreläsning 3) Databasteknik och informationssystem

Läs mer

Idag. Varför modellera? Modellering. Modelleringsverktygets egenskaper. Modelleringsverktyget

Idag. Varför modellera? Modellering. Modelleringsverktygets egenskaper. Modelleringsverktyget Idag Varför modellera? Varför modellera? Konceptuell modell sverktyg Objektklasser Sambandsklasser Knepiga attribut sprocessen I all ingenjörsverksamhet där man hanterar komplicerade system behöver man

Läs mer

Tentamen i. Databasteknik

Tentamen 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 mer

Tentamen för 1E1601. Måndag 10 mars 2003, kl 08.00 13.00. Alla hjälpmedel tillåtna

Tentamen för 1E1601. Måndag 10 mars 2003, kl 08.00 13.00. Alla hjälpmedel tillåtna Tentamen för 1E1601 Måndag 10 mars 2003, kl 08.00 13.00 Alla hjälpmedel tillåtna Totalt kan tentan ge 45p + max 10p för gjorda övningsuppgifter 27p ger säkert betyget 3, 35p ger säkert betyget 4 och 43p

Läs mer

Lösningsförslag till fiktiv tentamen för DD1370 Databasteknik och informationssystem

Lö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 mer

Fiktiv tentamen för DD1370 Databasteknik och informationssystem

Fiktiv tentamen för DD1370 Databasteknik och informationssystem Fiktiv tentamen för DD1370 Databasteknik och informationssystem Torsdag 4 dec 2008 Hjälpmedel: Allt inklusive kursbok, försläsningsanteckningar, gamla tentor och egna anteckningar, men inte tentalösningar

Läs mer

Idag. Exempel. Exempel modellen (1) Exempel...

Idag. Exempel. Exempel modellen (1) Exempel... Idag Exempel Knyta ihop säcken Repetition av hela processen från värld till databas Kontroll av resultatet Exempel på frågor mot varuhusdatabasen Man börjar alltid med att bestämma vad man måste hålla

Läs mer

Tentamen i Databasteknik

Tentamen i Databasteknik Tentamen i Onsdagen den 7 mars 2007 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 mer

GIS, databasteknik och kartografi. Databasmodellering

GIS, databasteknik och kartografi. Databasmodellering Databasmodellering 1. När vi studerar verkligheten för att beskriva (en del av) den i ett system (inte bara datorer), måste vi göra en modell. 2. Modelleringsverktyget ska ha egenskaper som gör att vi:

Läs mer

Lösningsförslag till. tentamen för 1E1601

Lö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 mer

TENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor

TENTAMEN. 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 mer

Tentamen i Databasteknik

Tentamen i Databasteknik Tentamen i Databasteknik Tisdagen den 15 mars 2010 Tillåtna hjälpmedel: Allt skrivet material och räknedosa Använd bara framsidan på varje blad. Skriv max en uppgift per blad. Motivera allt, dokumentera

Läs mer

Informationssystem och databasteknik

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 mer

TENTAMEN. 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. 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 mer

Logisk databasdesign

Logisk 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 mer

Tentamen i Databasteknik

Tentamen 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 mer

Fiktiv tentamen för DD1370 Databasteknik och informationssystem

Fiktiv tentamen för DD1370 Databasteknik och informationssystem Fiktiv tentamen för 1370 atabasteknik och informationssystem Hösten 2011 Hjälpmedel: Allt man kan tänka sig, men ingen kontakt med hjälpsamma kamrater och inga elektroniska hjälpmedel. Tänk på: Skriv högst

Läs mer

Idag. Hur vet vi att vår databas är tillräckligt bra?

Idag. 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 mer

Databaser design och programmering. Design processen ER- modellering

Databaser 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 mer

Lösningsförslag till tentamen för 1E1601

Lösningsförslag till tentamen för 1E1601 Lösningsförslag till tentamen för 1E1601 Måndag 20 augusti 2001 1. a) Student Studiemerit Prio.Kö Kö Område LägenhetsTyp Kontrakt Datum Husbestånd ÄrAvTyp Hus LghBestånd Lägenhet InvBestånd Inventarie

Läs mer

Idag. 1. Från modell till databasstruktur. 2. Prata med databaser (frågepsråket SQL)

Idag. 1. Från modell till databasstruktur. 2. Prata med databaser (frågepsråket SQL) Idag 1. Från modell till databasstruktur 2. Prata med databaser (frågepsråket SQL) DD1370 (Föreläsning 3) Databasteknik och informationssystem 7,5 hp Hösten 2008 1 / 22 Från verklighet via modell till

Läs mer

Från verklighet via modell till databas. Idag. Testa reglerna på varuhusmodellen. Från verklighet via modell till databas

Från verklighet via modell till databas. Idag. Testa reglerna på varuhusmodellen. Från verklighet via modell till databas Idag 1. Från modell till databasstruktur Från verklighet via modell till databas När vi analyserat den värld vi vill representera i en databas har vi tagit med alla möjliga kopplingar och beskrivit dem

Läs mer

Karlstads Universitet, Datavetenskap 1

Karlstads 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 mer

Databasteknik. Vad är. Vad är databaser bra till? data? föreläsare: Kjell Lindqvist. och NADA. databaser? och. vad är de bra för?

Databasteknik. Vad är. Vad är databaser bra till? data? föreläsare: Kjell Lindqvist. och NADA. databaser? och. vad är de bra för? Databasteknik Vad är data? föreläsare: Kjell Lindqvist och NADA databaser? och vad är de bra för? och varför ska ni kunna något om dem? Copyright c NADA, KTH DBT, bild 1 Copyright c NADA, KTH DBT, bild

Läs mer

Programdesign, databasdesign. Databaser - Design och programmering. Funktioner. Relationsmodellen. Relation = generaliserad funktion.

Programdesign, 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 mer

Databaser - Design och programmering. Relationsmodellen. Relationer - som tabeller. Relationer som tabeller. Alternativa notationer: Relationsschema

Databaser - 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 mer

Databaser Design och programmering

Databaser 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 mer

Tentamen ISGB01, ISGB24. Databasdesign 7,5 Poäng

Tentamen 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 mer

Funktionella beroenden - teori

Funktionella 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 mer

Konceptuella datamodeller

Konceptuella 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

Databaser design och programmering. Transaktionshantering och säkerhet säkerhetsproblem fleranvändarproblem transaktioner låsning

Databaser design och programmering. Transaktionshantering och säkerhet säkerhetsproblem fleranvändarproblem transaktioner låsning Databaser design och programmering Transaktionshantering och säkerhet säkerhetsproblem fleranvändarproblem transaktioner låsning 2 Säkerhetsproblem Informationen i databasen måste vara pålitlig (inte kunna

Läs mer

Analytisk relationsdatabasdesign

Analytisk 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 mer

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik 2008-08-11 kl. 14 18

Skriftlig 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 mer

Ett arbetsexempel Faktureringsrutin

Ett 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 mer

NORMALISERING. Mahmud Al Hakim

NORMALISERING. 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 mer

Databaser - Design och programmering. Säkerhetsproblem. SQL-injektion. Databashanteraren. Transaktion. Exempel. Transaktionshantering och säkerhet

Databaser - Design och programmering. Säkerhetsproblem. SQL-injektion. Databashanteraren. Transaktion. Exempel. Transaktionshantering och säkerhet Databaser design och programmering 1 Säkerhetsproblem 2 Transaktionshantering och säkerhet säkerhetsproblem fleranvändarproblem transaktioner låsning Informationen i databasen måste vara pålitlig (inte

Läs mer

Tentamen ISGB01 (delkurs i ISGB24) Databasdesign 7,5 Poäng

Tentamen 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 mer

Introduktion till databaskursen. Välkomna. till kursen. Databasteknik och informationssystem. DD1370 (kursomgång dbtinf12)

Introduktion till databaskursen. Välkomna. till kursen. Databasteknik och informationssystem. DD1370 (kursomgång dbtinf12) Välkomna Introduktion till databaskursen Välkomna till kursen Databasteknik och informationssystem DD1370 (kursomgång dbtinf12) En kurs om grunderna i databasteknik DD1370 (Föreläsning 1) Databasteknik

Läs mer

Varför ska man lära sig sånt? Välkomna. Vad är databaser bra till? Kursansvarig. till kursen. Databasteknik och informationssystem

Varför ska man lära sig sånt? Välkomna. Vad är databaser bra till? Kursansvarig. till kursen. Databasteknik och informationssystem till databaskursen Varför ska man lära sig sånt? till databaskursen till kursen Databasteknik och informationssystem Nästan alla större system idag innehåller eller använder data lagrad i en databas Så

Läs mer

Databaser design och programmering Säkerhetsproblem Databashanteraren SQL-injektion

Databaser design och programmering Säkerhetsproblem Databashanteraren SQL-injektion Databaser design och programmering Transaktionshantering och säkerhet säkerhetsproblem transaktioner fleranvändarproblem låsning Säkerhetsproblem Informationen i databasen måste vara pålitlig (inte kunna

Läs mer

Universitetet: ER-diagram

Universitetet: ER-diagram Databaser Design och programmering Fortsättning på relationsmodellen: Normalisering funktionella beroenden normalformer informationsbevarande relationsschemauppdelning Varför normalisera? Metod att skydda

Läs mer

Varför ska man lära sig sånt? Välkomna. Vad är databaser bra till? Kursansvarig. till kursen. Databasteknik och informationssystem

Varför ska man lära sig sånt? Välkomna. Vad är databaser bra till? Kursansvarig. till kursen. Databasteknik och informationssystem till databaskursen Varför ska man lära sig sånt? till databaskursen till kursen Databasteknik och informationssystem Nästan alla större system idag innehåller eller använder data lagrad i en databas Så

Läs mer

SQLs delar. Idag. Att utplåna en databas. Skapa en databas

SQLs delar. Idag. Att utplåna en databas. Skapa en databas Idag SQLs delar Hur skapar vi och underhåller en databas? Hur skapar man tabeller? Hur får man in data i tabellerna? Hur ändrar man innehållet i en tabell? Index? Vad är det och varför behövs de? Behöver

Läs mer

Lösningsförslag till tentamen för DD1370 Databasteknik och informationssystem

Lösningsförslag till tentamen för DD1370 Databasteknik och informationssystem Lösningsförslag till tentamen för DD1370 Databasteknik och informationssystem Torsdag 11 dec 2008 1. a) Jag använder kokbokens regler a. En objektklass som innehåller e-term(-er) bildar en tabell b. En

Läs mer

Normalisering. Christer Stuxberg Institutionen för Informatik och Media

Normalisering. 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 mer

Grunderna för relationsmodellen!

Grunderna 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 mer

Idag. Hur skapar vi och underhåller en databas? DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

Idag. Hur skapar vi och underhåller en databas? DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20 Idag Hur skapar vi och underhåller en databas? DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten 2009 1 / 20 Idag Hur skapar vi och underhåller en databas? Hur skapar man tabeller?

Läs mer

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Webprogrammering 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 mer

TENTAMEN TDDB77 Databaser och Bioinformatik 12 juni 2007, kl 14-18

TENTAMEN 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 mer

TENTAMEN TDDD12 Databasteknik 7 januari 2010, kl 14-18

TENTAMEN TDDD12 Databasteknik 7 januari 2010, kl 14-18 Institutionen för datavetenskap Linköpings universitet TENTAMEN TDDD12 Databasteknik 7 januari 2010, kl 14-18 Jourhavande lärare: Jose M. Peña (1651) Poäng: Tentan består av 2 delar. För godkänd krävs

Läs mer

Exempel-Tentamen III

Exempel-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 mer

TENTAMEN. 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. 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 mer

Databaser och databasdesign. Den relationella modellen, normalisering och modellering (2)

Databaser 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 mer

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Webprogrammering 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 mer

Databasdesign. E-R-modellen

Databasdesign. 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 mer

Karlstads Universitet, Datavetenskap 1

Karlstads 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 mer

Idag. Exempel. Exempel modellen (1) Exempel...

Idag. Exempel. Exempel modellen (1) Exempel... Idag Exempel Knyta ihop säcken Repetition av hela processen från värld till databas Kontroll av resultatet Man börjar alltid med att bestämma vad man måste hålla reda på, de s.k. objektklasserna. Ofta

Läs mer

Tentamen för DD1370 Databasteknik och informationssystem

Tentamen 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 mer

Karlstads Universitet, Datavetenskap 1

Karlstads Universitet, Datavetenskap 1 DAV B04 - Databasteknik KaU - Datavetenskap - DAV B04 - MGö 193 Tekniker för concurrency control Olika slags lås (locks) Tidsstämpling (timestamps) KaU - Datavetenskap - DAV B04 - MGö 194 Binära lås 2

Läs mer

TDDI 60 Tekniska databaser

TDDI 60 Tekniska databaser Lena Strömbäck 2004-08-19 Skriftlig tentamen i kursen TDDI 60 Tekniska databaser Datum: 2004-08-19 Tid: 14-18 Lokal: TER1 Hjälpmedel: Engelsk ordlista tillåten ej elektronisk Miniräknare ej programmerbar

Läs mer

Tentamenskod: Tentamensdatum: Tid: 14:00-19:00. Inga hjälpmedel är tillåtna

Tentamenskod: 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 mer

IT i organisationer och databasteknik

IT i organisationer och databasteknik 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

Läs mer

TENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor

TENTAMEN. 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 mer

Uppdelning. Relationell databasdesign, FB Teori 7-20. Låt R vara ett relationsschema. R 1, R 2,..., R n är en uppdelning av

Uppdelning. 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 mer

Tentamen för DD1370 Databasteknik och informationssystem

Tentamen 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 mer

Vad är en databas? Exempel på databaser: Databas = Organiserad samling och lagring av information.

Vad är en databas? Exempel på databaser: Databas = Organiserad samling och lagring av information. Vad är en databas? Exempel på databaser: Kortregister på kontor Sjukvårdsjournal Bokregister på bibliotek Medlemsregister i en förening Kundregister på företag Telefonkatalogen Databas = Organiserad samling

Läs mer

TENTAMEN TDDB77 Databaser och Bioinformatik 15 mars 2002, kl 14-18

TENTAMEN TDDB77 Databaser och Bioinformatik 15 mars 2002, kl 14-18 Institutionen för datavetenskap Linköpings universitet TENTAMEN TDDB77 Databaser och Bioinformatik 15 mars 2002, kl 14-18 Jourhavande lärare: Patrick Lambrix, 2605 Poäng: Tentan består ut av 2 delar. För

Läs mer

Modul DB1-2 Datamodellering

Modul 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 mer

Tentamen DATABASTEKNIK - 1DL116

Tentamen 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 mer

Fö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? 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 mer

Databasteori. Övningar

Databasteori. Övningar Databasteori Övningar Erik Prytz Uppdaterad november 2014, november 2015 Eva L. Ragnemalm November 2009, uppdaterad april 2010 Kapitel 1: ER- modellering Skapa ER- diagram för nedanstående övningar (läs

Läs mer

TENTAMEN TDDB77 Databaser och Bioinformatik 22 augusti 2006, kl 14-18

TENTAMEN TDDB77 Databaser och Bioinformatik 22 augusti 2006, kl 14-18 Institutionen för datavetenskap Linköpings universitet TETAME TDDB77 Databaser och Bioinformatik 22 augusti 2006, kl 14-18 Jourhavande lärare: Lena Strömbäck (Patrick Lambrix, 0703-492066) Poäng: Tentan

Läs mer

Databaser och Datamodellering Foreläsning IV

Databaser 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 mer

08/12/14. Databasteknik och informationssystem DD1370. Behövs Föreläsning 8? Kursens (återstående) mål Dagens föreläsning

08/12/14. Databasteknik och informationssystem DD1370. Behövs Föreläsning 8? Kursens (återstående) mål Dagens föreläsning 08/12/14 Behövs Föreläsning 8? Databasteknik och informationssystem DD1370 Idag F7 - (sista nyheterna & repetition) F8 (?) - (repetition, repetition, repetition ) Föreläsning 7 Svara med knapptryckning

Läs mer

Tentamen för DD1370 Databasteknik och informationssystem

Tentamen 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 mer

Karlstads Universitet, Datavetenskap 1

Karlstads 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 mer

Design och underhåll av databaser

Design och underhåll av databaser Design och underhåll av databaser 1. Modell av verkligheten 2. Normalformer 3. Introduktion till DDL 4. Skapa databaser 5. Skapa tabeller 6. Skapa index 7. Restriktioner 8. Ta bort databaser, tabeller

Läs mer

Relationsmodellen. Relations modellen är idag den mest änvända datamodellen för kommersiella

Relationsmodellen. 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 mer

! Webprogrammering. ! Databasteori och praktik. ! Fö, le, la + projekt. ! Examination (tenta, dugga + labb, ! Studera användarna och deras problem

! 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 mer

Uppgift 1. (a) Ange tre orsaker hur felaktigheter i en databas kan uppsta. Till varje av dem, ange en lamplig metod som anvands som atgard mot dessa.

Uppgift 1. (a) Ange tre orsaker hur felaktigheter i en databas kan uppsta. Till varje av dem, ange en lamplig metod som anvands som atgard mot dessa. Institutionen for datavetenskap CTH- TIN 140 Goteborg GU- INN 12 mw DATABASER D4 och GU HT -97 Andra omtentamen i DATABASER Obs! Larare-version, med losningar DAG: lo, 22 aug 1998 TID: kl. 8.45 { 12.45

Läs mer

Tentamen för DD1370 Databasteknik och informationssystem

Tentamen 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 mer

Föreläsning 6: Normalisering & funktionella beroenden

Fö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 mer

TENTAMEN För kursen. Databasteknik. Ansvarig för tentamen: Anna Palmquist. Förfrågningar: Anslås inom 3 veckor

TENTAMEN 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 mer

TENTAMEN TDDB77 Databaser och Bioinformatik 24 april 2004, kl 14-18

TENTAMEN TDDB77 Databaser och Bioinformatik 24 april 2004, kl 14-18 Institutionen för datavetenskap Linköpings universitet TENTAMEN TDDB77 Databaser och Bioinformatik 24 april 2004, kl 14-18 Jourhavande lärare: Pawel Pietrzak (013/28 24 10, 013/21 01 17) Poäng: Tentan

Läs mer

Lösningar till tentamen i EDAF75

Lösningar till tentamen i EDAF75 Lösningar till tentamen i EDAF75 4 april 2018 Lösning 1 (a) Här är ett förslag till E/R-modell: Det finns flera rimliga alternativa sätt att modellera, så du behöver inte vara orolig bara för att du inte

Läs mer

Tentamen plus lösningsförslag

Tentamen 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

TDDI60 Tekniska databaser

TDDI60 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

Lite om databasdesign och modellering

Lite 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 mer

Webbprogrammering, grundkurs 725G54

Webbprogrammering, 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 mer

Transaktioner och samtidighet

Transaktioner och samtidighet Databases Transaktioner och samtidighet Real World Model User 4 Updates User Queries 3 Answers Updates User Queries 2 Answers Updates UserQueries 1 Answers Updates Queries Answers Database management system

Läs mer

An English version of the questions is found at the back of each page.

An English version of the questions is found at the back of each page. Lena Strömbäck Pawel Pietrzak 2004-06-02 Skriftlig tentamen i kursen TDDB48 Databasteknik Datum: 2003-06-02 Tid: 14-18 Lokal: GAR Hjälpmedel: Engelsk ordlista tillåten ej elektronisk iniräknare ej programmerbar

Läs mer