Relationell databasdesign
|
|
- Marcus Fredriksson
- för 8 år sedan
- Visningar:
Transkript
1 Relationell databasdesign Kapitel 7 Relationell databasdesign sid Uppdelning m.h.a. funktionella beroenden 3 Funktionella beroenden - teori 12 Uppdelningsalgoritmer 27 Designprocess 33 Relational oath : "A nonkey field must provide a fact about the key the key the whole key and nothing but the key so help me Codd"
2 Relationell databasdesign 7-1 Hur skall ett schema för en relationell databas utformas? Målet är att generera en mängd relationsscheman som tillåter att data lagras utan onödig redundans men som samtidigt möjliggör en enkel åtkomst av information. Dvs. en god uppdelning av data i relationsscheman bör hittas. Målet nås genom att utforma scheman i lämplig normalform. En normalform specifiserar krav (vilka typer av begränsningar som får finnas i ett relationsschema) på ett schema. För att kunna avgöra om ett relationsschema är i lämplig normalform eller ej behövs information om den reella värld databasen avbildar. En del av denna information finns i E-R-diagrammet, men mera information om organisationen behövs - begränsningar som ej kan uttrycks i diagrammet. En "bra" samling av relationsscheman Undviker upprepning av data Tillåter representation av all behövlig information Möjliggör kontroll av uppdateringar dvs. kontroll m.a.p. brytande av integritetsbegränsningar Ex.: Lending_schema = (branch_name, branch_city, assets, customer_name, loan_number, amount) Överflödighet: Data för branch_name och assets upprepas för varje lån som branch ger => Minnesutrymme slösas, uppdateringar kompliceras, risken för inkonsistens i DB ökas. null-värden: ingen information om en branch kan lagras om branchen ej givit lån, om ej null-värden tillåts (svåra att hantera).
3 Relationell databasdesign, Första normalformen 7-2 Första normalformen, 1NF Första normalformen pålägger bara ett mycket grundläggande krav på relationer: Domänerna för alla attribut är atomiska, dvs. betraktas som odivisibla. Icke-atomära domäner kan leda till designer med redundanta datalager (entitetsmängder), som i sin tur lätt leder till inkonsistens i databasen. att information kodas i program (det krävs programmering för att komma åt information) Icke-atomära domäner kan vara användbara i vissa fall varför många moderna databassystem understöder icke-atomära domäner (kap 9) Vad innebär detta?
4 Relationell databasdesign, Uppdelning m.h.a.fb 7-3 Uppdelning m.h.a. funktionella beroenden Funktionella beroenden (beteckning ) Nycklar, eller mera allmänt funktionella beroenden är begränsningar på databasen som kräver att relationer satisfierar vissa egenskaper. En relation som satisfierar alla sådana begränsningar säges vara legal. Låt R vara ett relationsschema. En delmängd K av R är en supernyckel om inga två tupler kan ha samma värde på attributmängden K. dvs. t 1 t 2 t 1 [K] t 2 [K] eller t 1 [K] = t 2 [K] t 1 = t 2 Def.: Låt R vara ett relationsschema. Låt α, β R. Det funktionella beroendet α βgäller på R, om för varje giltig relation r(r), för alla par av tupler t 1,t 2 i r så att t 1 [α] =t 2 [α], det även gäller att t 1 [β] = t 2 [β]. Dvs. t 1 [α] = t 2 [α] t 1 [β] = t 2 [β] M.a.o, K är en supernyckel för R, om K R, dvs, t 1 [K] = t 2 [K] t 1 [R] = t 2 [R], dvs. t 1 = t 2 Funktionella beroenden kan användas för att uttrycka begränsningar som vi ej kan uttrycka m.h.a. supernycklar. Ex.: Schemat loan_info_schema = (branch_name, loan-number, customer-name, amount) Ett givet lån kan ges åt mera än en person, så loan_number är ej en supernyckel, men de funktionella beroendena loan_number amount loan_number branch_name bör gälla.
5 Relationell databasdesign, Uppdelning m.h.a.fb 7-4 Funktionella beroenden används på två sätt: 1. För att specificera begränsningar på mängden av legala relationer. Vi skall alltså bara handskas med de relationer som satisfierar en given mängd F av funktionella beroenden. Vi säger då att F gäller på R. 2. För att testa relationer för att se om de (relationerna) är legala under F. Om en relation r är legal under F, säger man att r satisfierar F. Ex.: Betrakta följande relation r. Vilka funktionella beroenden gäller? A C? ja det finns två par av tupler med samma värde på A: de har samma C värde C A? nej ty t.ex. t 4 [C] = t 5 [C] men t 4 [A] t 5 [A] AB D? ja det finns inget par av olika tupler t 1 och t 2 så att t 1 [AB] = t 2 [AB] A BC? nej ty t.ex. t 1 [A] = t 2 [A] men t 1 [BC] t 2 [BC] A B C D a 1 b 1 c 1 d 1 a 1 b 2 c 1 d 2 a 2 b 2 c 2 d 2 a 2 b 3 c 2 d 3 a 3 b 3 c 2 d 4 Ett funktionellt beroende säges vara trivialt om det satisfieras av alla relationer, t.ex. A A. Allmänt kallas ett funktionellt beroende α β trivialt om β α Obs! En instans av en viss relation kan satisfiera ett funktionellt beroende som ej gäller på relationens schema. t.ex. i bankdatabasens exempelinstans gäller customer_street customer_city men eftersom gator kan tänkas ha samma namn i olika städer inkluderar vi ej customer_street customer_city i mängden av funktionella beroenden som skall gälla för customer schemat.
6 Relationell databasdesign, Uppdelning m.h.a.fb 7-5 I bankexemplet måste åtminstone följande icke-triviala funktionella beroenden alltid gälla: Customer_schema = (customer-name, customer_street, customer_city): customer_name customer_street customer_name customer_city Branch_schema = (branch-name, branch_city, assets): branch_name branch_city branch_name assets Loan_schema = (branch_name, loan-number, amount): loan_number branch_name loan_number amount Borrower_schema = (loan-number, customer-name ): inga FB Account_schema = (account-number, branch_name, balance ): account_number branch_name account_number balance Depositor_schema = (account-number, customer-name): inga FB
7 Relationell databasdesign, Uppdelning m.h.a.fb 7-6 Boyce-Codd normalform (BCNF), 2NF BCNF eliminerar all redundans som kan uppteckas på basen av funktionella beroenden. Ett relationsschema R är i BCNF om för alla funktionella beroenden på R av formen α β (α, β R) minst en av följande gäller 1. α β är ett trivialt funktionellt beroende (dvs. β α) 2. α är en supernyckel för R Vad innebär detta? En databasdesign är i BCNF om alla relationsscheman är i BCNF. Ex.: Bankexemplet - alla scheman är i BCNF Customer_schema är BCNF ty de icke-triviala funktionella beroenden har customer_name på vänstra sidan (customer_name är en kandidatnyckel). Borrower_schema är i BCNF ty det har inga funktionella beroenden. Customer_schema = (customer-name, customer_street, customer_city): customer_name customer_street customer_name customer_city Branch_schema = (branch-name, branch_city, assets): branch_name branch_city branch_name assets Loan_schema = (branch_name, loan-number, amount): loan_number branch_name loan_number amount Borrower_schema = (loan-number, customer-name ): Account_schema = (account-number, branch_name, balance ): account_number branch_name account_number balance Depositor_schema = (account-number, customer-name):
8 Relationell databasdesign, Uppdelning m.h.a.fb 7-7 Ex.: Schemat Loan_info_schema = (customer-name, loan-number, amount ) loan_number amount customer_name, loan_number amount är inte i BCNF ty loan_number är inte en supernyckel. Uppdelning av scheman Ett schema som inte är i BCNF kan uppdelas i två: Låt R vara ett schema som ej är i BCNF. Då finns det åtminstone ett icke-trivialt funktionellt beroende α β sådant att α inte är en supernyckel för R. Ersätt R med scheman (α β) och (R - (β - α)) Ex.: Loan_info_schema ersätts av Loan_schema = (loan-number, amount): (α β ) loan_number amount Borrower_schema =(customer-name, loan-number): (R - (β - α)) = (R - β) ty β innehåller inga av α s attribut Loan_schema är i BCNF Borrower_schema är i BCNF Resulterande scheman som ej är i BCNF uppdelas vidare.
9 Relationell databasdesign, Uppdelning m.h.a.fb 7-8 BCNF och beroendebevarande För att uttrycka konsistensbegränsningar i en databas finns olika metoder primärnyckelbegränsningar funktionella beroenden check-begränsningar assertationer Varje gång databasen uppdateras skall begränsningarna testas. En databas bör utformas så att begränsningar kan testas effektivt. Ett test av ett funktionellt beroende som kan göras genom att bara undersöka en relationskapsmängd är effektivt. Uppdelning i BCNF kan leda till att testning involverar flere mängder dvs. blir ineffektiv. Ex.: Bankexemplet ändras så att en kund tillåts ha flera personliga bankirer, men bara en från en gren En anställd måste nu associeras med en gren. Ändringen kunde implementeras i E-R-diagrammet på följande sätt: ursprunglig version (en bankir per kund) Ett fel i denna design : en kund kan ha flera bankirer från samma gren branch_city branch_city branch-amne assets branch-amne assets branch en anställd tillhör en gren branch customer-id customer_street customer-id customer_street customer_name customer_city customer_name customer_city customer customer cust_ banker type-ass. works_in cust_ banker type-ass. flera bankirer per kund employee employee emploee-id employee_name tel_num emploee-id employee_name tel_num
10 Relationell databasdesign, Uppdelning m.h.a.fb 7-9 Man borde ha en relationskapsmängd som tvingar fram begränsningen att en kund bara har en bankir per gren: Istället för att lägga till works_in ersätts cust_banker med en ternär relationskapsmängd: och FB cust_banker_branch(customer-id,employee-id, branch_name, type_ass) med customer-id,employee-id cust_banker_branch employee_id branch_name Fördel: en enda relationskapsmängd representerar begränsningen, dvs. den är enkelt att testa. Men cust_banker_branch schemat är ej i BCNF ty employee_id är ej en supernyckel och vi måste upprepa branch_name för varge gång en anställd deltar i en cust_banker_branch relationskap. Uppdelning ger: branch_city (employee-id, branch_name) assets (customer-id, emploee-id, type_ass) branch-amne Dvs. denna design är den samma som den ursprungliga versionen (med works_in som tillåter att en kund har flera bankirer från samma gren) och begränsningen (en kund kan ha högst en personlig bankir från en gren) måste uttryckas med det funktionella beroendet: customer_id, branch_name employee_id branch customer-id customer_street customer_name customer_city customer Dvs. uppdelning i BCNF är ej beroendebevarande Varför ej? cust_ banker_ branch employee type-ass. emploee-id tel_num employee_name
11 Relationell databasdesign, Uppdelning m.h.a.fb 7-10 Tredje normalformen, 3NF BCNF kräver att alla icke-triviala funktionella beroenden är av formen α β där α är en supernyckel. 3NF är svagare, den tillåter icke-triviala funktionella beroenden vars vänstersida ej är en supernyckel: Ett relationsschema R är i tredje normalform med avseende på en mängd F av funktionella beroenden om det gäller för varje funktionellt beroende i F + av formen α β, där α R och β R, att åtminstone en av följande gäller: 1. α β är ett trivialt funktionellt beroende 2. α är en supernyckelför R 3. Varje attribut A i β α ingår i en kandidatnyckel för R Obs! alla attribut i β α behöver ej ingå i samma kandidatnyckel. Villkor 3 medför att varje schema har en beroendebevarande uppdelning i 3NF. Obs! varje schema som satisfierar BCNF satisfierar även 3NF. Ex.: Betrakta schemat. cust_banker_branch(customer-id, employee-id, branch_name, type_ass) med det FB som medför att det ej är i BCNF employee_id branch_name Är det i 3NF? Dvs. är branch_name en del av en kandidatnyckel?
12 Relationell databasdesign, Uppdelning m.h.a.fb 7-11 Visa att branch_name ingår i en kandidatnyckel: Vi har de funktionella beroendena employee_id branch_name customer_id, branch_name employee_id ( samt customer_id, employee_id cust_banker_branch eftersom (customer_id, employee_id) är primärnyckel och då även en kandidatnyckel. Finns det andra kandidatnycklar? Är customer_id, branch_name en kandidatnyckel? customer_id, branch_name employee_id gäller För ett visst (customer_id, employee_id) par kan det bara finnas en relationskap i cust_banker_branch ty customer_id, employee_id cust_banker_branch Dvs. (customer_id, branch_name) är en supernyckel ty employee_id branch_name gäller Varken customer_id eller branch_name är supernycklar så (customer_id, branch_name) är en kandidatnyckel. Dvs. employee_id branch_name strider ej mot 3NF regler, dvs. cust_banker_branch är i 3NF gäller Obs! Besvärligt varför man bör använda formella metoder vid resonering om funktionella beroenden, normalformer och uppdelningar av scheman.
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 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 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 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 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 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 merReducering till relationsscheman
E-R-modellen, Reducering till rel.scheman 6-26 Reducering till relationsscheman En databas som överensstämmer med ett E-R-databasschema kan representeras som en mängd relationsscheman ty E-R-modellen och
Läs merAndra relationella språk
Andra relationella språk Kapitel 5 Andra relationella språk sid Tupelrelationskalkyl 1 Domänrelationskalkyl 6 Query-by-Example (QBE) 8 Andra relationella språk, tupelrelationskalkyl 5-1 Tupelrelationskalkyl
Läs merE-R-modellen, E-R-diagram 6-14. E-R-diagram. representerar entitetsmängder
E-R-modellen, E-R-diagram 6-14 Komponenter Rektanglar Ellipser Ruter Linjer E-R-diagram representerar entitetsmängder repr. attribut repr. relationskapsmängder länkar attribut till entitetsmängder och
Läs merFrågeoptimering. Frågeoptimering kapitel 14
Frågeoptimering kapitel 14 Frågeoptimering sid Introduktion 1 Transformering av relationsuttyck 4 Kataloginformation för kostnadsestimering Statisk information för kostnadsestimering Kostnadsbaserad optimering
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 merInformationssystem 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 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 merSQL, nästlade delfrågor 3-19. Nästlade delfrågor. En nästlda delfråga är ett select-from-where uttryck inom where-klausulen i en annan fråga.
SQL, nästlade delfrågor 3-19 Nästlade delfrågor SQL har en mekanism för nästling av delfrågor: En nästlda delfråga är ett select-from-where uttryck inom where-klausulen i en annan fråga. Delfrågor används
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 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 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 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 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 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 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 merIT 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 merDatabasteori. Ö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 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 merEtt databashanteringssystem (DBHS) skiljer sig från andra programmeringssystem bl.a.
1 Kap. 1 INTRODUKTION Ett databashanteringssystem (DBHS) skiljer sig från andra programmeringssystem bl.a. 1. Möjligheten att hantera persistenta data 2. Möjligheten att accessera stora mängder av data
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 merAvancerad SQL Kapitel 4. Databaser: Avancerad SQL. sid SQL datatyper 1 Integritetsbegränsningar 3 Auktorisering 7 Inbäddad SQL 10 Dynamisk SQL 10
Avancerad SQL Kapitel 4 Avancerad SQL sid SQL datatyper 1 Integritetsbegränsningar 3 Auktorisering 7 Inbäddad SQL 10 Dynamisk SQL 10 Avancerad SQL, datatyper 4-1 Datatyper i SQL En datatyp, dvs. domän
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 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 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 merTER3. Försättsblad till skriftlig tentamen vid Linköpings universitet G28 TEN1 Webprogrammering och databaser Tentamen IDA 1 (7)
1 (7) Försättsblad till skriftlig tentamen vid Linköpings universitet Datum för tentamen Sal (1) Tid Kurskod Provkod Kursnamn/benämning Provnamn/benämning Institution Antal uppgifter som ingår i tentamen
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 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 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 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 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 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 merDatabasteori Övningar
Databasteori Övningar Eva L. Ragnemalm November 2009, uppdaterad april 2010 Kapitel 1: ER-modellering Skapa ER-diagram för nedanstående övningar (läs om ERmodeller i boken) 1. Universitetet (Detta är samma
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 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 merLösningsförslag till Exempel tentamen
Inst. för Data- och Systemvetenskap SU/KTH Maria Bergholtz, Paul Johannesson Lösningsförslag till Exempel tentamen 2I-1033 IT i Organisationer och Databasteknik Tentamenstiden är 5 timmar Skriv bara på
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 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 Databasteknik
Försättsblad Tentamen Databasteknik 2003 04 29, 8.00 13.00 Inga hjälpmedel. Bedömning (preliminär): uppgifterna ger maximalt 14 + 11 + 11 + 6 + 4 + 4 = 50 poäng. För godkänt krävs 25 poäng (3/25, 4/33,
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 merLö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 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 merRelationsalgebra. Relationsalgebra består av en mängd operatorer som tar en eller två relationer som input och producerar en ny relation som resultat.
Database: Relationsalgeba 2-11 Relationsalgeba Relationsalgeba bestå av en mängd opeatoe som ta en elle två elatione som input och poducea en ny elation som esultat. De fundamentala opeationena ä unäa
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 merTENTAMEN 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 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 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 merTentamen DATABASTEKNIK - 1DL116, 1MB025
Uppsala universitet Institutionen för informationsteknologi Kjell Orsborn, Tore Risch Tentamen 2004-08-16 DATABASTEKNIK - 1DL116, 1MB025 Datum...Måndagen den 16 Augusti, 2004 Tid...14:00-19:00 Jourhavande
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 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 merCertifikattjänsten - testbädd. Anläggningsprojekt för ett nationellt inkomstregister
Certifikattjänsten - testbädd Anläggningsprojekt för ett nationellt inkomstregister 2 (9) INNEHÅLL 1 Inledning... 3 2 Testmaterial... 3 2.1 Parametrar som används i testbäddens tjänster... 3 2.2 Testbäddens
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 merTDDI 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! 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 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 merDesign 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 merDatabasteori. Övningar
Databasteori Övningar Eva L. Ragnemalm November 2009, reviderad 2012, 2014, augusti 2016, mars 2017 Observera: det finns inget facit till dessa övningar, eftersom många går att lösa på flera sätt, mer
Läs merUtvecklingen av ett tidregistrerings- och faktureringssystem
Datavetenskap Opponenter: Anders Heimer & Jonas Seffel Respondenter: Daniel Jansson & Mikael Jansson Utvecklingen av ett tidregistrerings- och faktureringssystem Oppositionsrapport, C-nivå 2006:10 1 Sammanfattat
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 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 merDisposition. 1. Kopplingen mellan Processanalys (DFDdiagram) 2. Treskikts Client-Server arkitektur (Fig 1.8) 3. Data layer
Disposition 1. Kopplingen mellan Processanalys (DFDdiagram) och konceptuell modellering (ERdiagram) (se kap 4) 2. Treskikts Client-Server arkitektur (Fig 1.8) 3. Data layer Databasen (Kap 2) Den relationella
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 merVad ä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 merTentamen. TDDB38 - Databasteknik
Tekniska Högskolan i Linköping, Institutionen för datavetenskap Almut Herzog / Olof Johansson / Patrick Lambrix / Cecile Åberg Tentamen TDDB38 - Databasteknik (Svensk version) Datum: Fredag 12:e januari
Läs merRättningsmall tenta den 25e oktober Uppgift 1. Uppgift 2. se slides
Rättningsmall tenta den 25e oktober 2011 Uppgift 1 A) Null (Connolly/Begg, p.103) Represents a null value for an attribute that is currently unknown or is not applicable for this tuple. Its not a value
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 merFöreläsning 5: Relationsmodellen
Föreläsning 5: Relationsmodellen DVA234 Databaser IDT Akademin för Innovation, Design och Teknik Innehåll Föreläsningens mål: Att ge en överblick över hur relationsmodellen fungerar Relationsmodellen Relationsalgebra
Läs merTENTAMEN 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 merDatabasteori Övningar
Databasteori Övningar Eva L. Ragnemalm November 2009, reviderad augusti 2016 Kapitel 1: ER-modellering Skapa ER-diagram för nedanstående övningar (läs om ERmodeller i boken). Övningarna kräver inte EER-komponenter.
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 4,5 hp Delkurs: Databaser och databasdesign 7,5hp Tentander: VIP2, MMD2, INF 31-60, ASP
Tentamen 4,5 hp Delkurs: Databaser och databasdesign 7,5hp Tentander: VIP2, MMD2, INF 31-60, ASP Skrivtid: 14.30-18.30 Hjälpmedel: papper, penna och radergummi Betygsgränser: G = 36p (60 %), VG = 48p (80
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 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