Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Storlek: px
Starta visningen från sidan:

Download "Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista"

Transkript

1 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 en databashanterare Ordlista UML ett språk för modellering av alla typer av problem relationsdatabas data ordnade i tabeller SQL ett språk för att hämta och ändra data i databasen databashanterare program som hanterar databasen En samling data som hör ihop som modellerar en del av verkligheten. som är persistent (dvs. inte försvinner när man avslutar programmet). En databas kan till exempel vara: en textfil. ett excel-dokument. en databas som hanteras av en databashanterare. EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Vad är en databashanterare? Relationsdatabas Ett program som har till uppgift att lagra och hantera databaser. Kan hantera mycket data på ett effektivt sätt. Låter användaren specificera strukturen för databasen. Låter användare ställa frågor till databasen. Hanterar samtidig access till databasen. Exempel på databashanterare: MySQL Oracle Microsoft Access En relationsdatabas består av relationer (tabeller). En relation har attribut (kolumner itabellen). En relation består av en mängd tupler (rader itabellen) E. F. Codd EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

2 Exempel på en relation Relationers schema relation attribut personnr förnamn efternamn adress Bo Ek Malmö Lars Bok Malmö Eva Alm Lund Sara Alm Lund Relationens schema (beskrivning av vad som kan lagras i tabellen) skrivs så här: Kunder(personNr, förnamn, efternamn, adress) relationens namn attribut tupel EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Exempel: relationen Bankkonton Nycklar Bankkonton(kontoNr, saldo, personnr) kontonr saldo personnr En nyckel är ett (eller flera attribut tillsammans) vars värde garanterat är unikt. Det får alltså inte finnas flera tupler (rader) med samma värde på nyckeln. Man brukar välja ut en av nycklarna och kalla denna primärnyckel. Exempel: Kunder(personNr, förnamn, efternamn, adress) Bankkonton(kontoNr, saldo, personnr) EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

3 SQL SQL-frågor SQL Structured Query Language Datadefinitionsspråk för att definiera tabeller. Ex: CREATE TABLE Kunder( personnr CHAR(11) PRIMARY KEY, förnamn VARCHAR(40), efternamn VARCHAR(40), adress VARCHAR(60) ); På följande sidor finns exempel på SQL-frågor för att hämta information från en databas med tabellerna: Kunder(personNr, förnamn, efternamn, adress) Bankkonton(kontoNr, saldo, personnr) Datamanipuleringsspråk för att ställa frågor till databasen, t ex söka idatabasenelleruppdateradata.ex: SELECT FROM Kunder; EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Hämta all information från en tabell Exempel: Tag reda på all information i tabellen Bankkonton. SELECT kontonr saldo personnr Välja ut vissa kolumner Man kan välja ut vissa kolumner (attribut) genom att ange de önskade attributen i SELECT-delen. Exempel: Tag reda på alla kontons innehavare (personnummer) och kontonummer. SELECT personnr, kontonr personnr kontonr EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

4 Döpa om kolumner Man kan döpa om namnen på de kolumner som visas. Exempel: Tag reda på alla kontons innehavare (personnummer) och kontonummer, men visa resultatet med andra kolumnnamn. SELECT personnr AS kontoinnehavare, kontonr AS kontonummer Slå ihop kolumner Exempel: Visa personnummer och namn på alla kunder. Namnen ska vara på formen efternamn, förnamn. SELECT personnr, efternamn +, + förnamn AS namn FROM Kunder; kontoinnehavare kontonummer personnr namn Ek, Bo Bok, Lars Alm, Eva Alm, Sara EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Sortera Exempel: Tag reda på alla kunder. Visa kunderna sorterade efter efternamn i första hand och förnamn i andra hand. SELECT FROM Kunder ORDER BY efternamn, förnamn; personnr förnamn efternamn adress Eva Alm Lund Sara Alm Lund Lars Bok Malmö Bo Ek Malmö Sortera i avtagande ordning: Visa ej dubletter Exempel: Tag reda på alla kontoinnehavares personnummer. Även om personen har flera konton ska personens personnummer bara med en gång. SELECT DISTINCT personnr personnr ORDER BY efternamn DESC, förnamn DESC; EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

5 Välja ut vissa rader Flera delvillkor Man kan välja ut vissa rader (tupler) genom att skriva ett villkor i WHERE-delen. Exempel: Tag reda på de kontonummer som hör till en kontoinnehavaren med personnummer SELECT kontonr FROM Bankkonton WHERE personnr = ; Man kan sätta ihop flera delvillkor i WHERE-delen med AND (och), OR (eller) och NOT (icke). Exempel: Vilken adress har personen med namnet Sara Alm. SELECT adress FROM Kunder WHERE förnamn = Sara AND efternamn = Alm ; kontonr adress Lund EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Matcha strängar % motsvarar 0-många tecken, _ motsvarar exakt ett tecken. OBS! I den databashanterare som används på laborationerna är det som matchar 0-många tecken och? som matchar exakt ett tecken. Exempel: Visa kontonumren för de konton vars innehavare är födda år SELECT kontonr FROM Bankkonton WHERE personnr LIKE 85 ; Mönster för en fråga SELECT kolumner FROM tabeller WHERE villkor; SELECT Vilka kolumner (attribut) ska med? FROM Vilka tabeller ska data hämtas ifrån? WHERE Vilka rader (tupler) ska med? kontonr Tips! Det är oftast enklast att börja med FROM när man ska formulera en fråga. EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

6 Aggregatfunktioner Hämta information från flera tabeller En aggregatfunktion arbetar på en hel kolumn. Man kan t.ex. summera alla värden i kolumnen eller beräkna medelvärdet: SUM, AVG, MIN, MAX, COUNT Hur många konton finns det? 5 SELECT COUNT() Vilket är största saldot? SELECT MAX(saldo) Vi har tidigare använt en SQL-fråga som visar information om alla kontons innehavare (personnummer) och kontonummer. All information finns i tabellen Bankkonton och SQL-frågan ser ut så här: SELECT personnr, kontonr Antag att vi istället vill ta reda på kontoinnehavarnas namn istället för personnummer. Problemet är att de data vi vill ha finns i två olika tabeller: Bankkonton( kontonr, saldo, personnr) Kunder(personNr, förnamn, efternamn, adress) EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Tabellerna Bankkonton och Kunder kontonr saldo personnr personnr förnamn efternamn adress Bo Ek Malmö Lars Bok Malmö Eva Alm Lund Sara Alm Lund EDAA20 (Föreläsning databaser) HT / 52 Första försök att hämta data från två tabeller Kartesisk produkt Ta med bägge tabellerna i FROM-delen: SELECT efternamn, förnamn, kontonr FROM Bankkonton, Kunder; Resultatet blir den kartesiska produkten (alla rader matchas med alla): efternamn förnamn kontonr Ek Bo Bok Lars Alm Eva Alm Sara Ek Bo Bok Lars Alm Eva Alm Sara Ek Bo EDAA20 (Föreläsning databaser) HT / 52

7 Hämta data från två tabeller Forts. Vi vill bara matcha de rader som har samma personnummer i de bägge tabellerna: Hämta data från två tabeller JOIN Tag reda på alla kontons innehavare (namn) och kontonummer. SELECT efternamn, förnamn, kontonr FROM Bankkonton INNER JOIN Kunder ON Bankkonton.personNr = Kunder.personNr; Resultatet blir en rad per konto: kontonr saldo personnr personnr förnamn efternamn adress Bo Ek Malmö Lars Bok Malmö Eva Alm Lund Sara Alm Lund efternamn förnamn kontonr Alm Eva Ek Bo Alm Sara Alm Eva Ek Bo Vi har matchat raderna i Bankkonton och Kunder, men bara tagit med de rader där kontotinnehavarens personnummer är lika med kundens personnummer. EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Mönster för JOIN SELECT kolumnlista FROM tabell1 {INNER LEFT [OUTER] RIGHT [OUTER]} tabell2 ON tabell1.kolumn1 = tabell2.kolumn2; Man kan använda AND i ON-villkoret om man vill utföra join på flera attribut. Med INNER JOIN menas att vi tar den kartesiska produkten av tabell1 och tabell2, men bara behåller de rader med samma värde på tabell1.kolumn1 och tabell2.kolumn2. OUTER JOIN används då man vill ha med tupler från ena tabellen som inte har någon motsvarighet i den andra tabellen. T ex innebär RIGHT OUTER JOIN att varje tupel i högra tabellen matchas med de som passar i vänstra tabellen, om ingen matchande tupel finns fylls attributen från vänstra tabellen med null. EDAA20 (Föreläsning databaser) HT / 52 OUTER JOIN Exempel Tag reda på alla kontons innehavare (namn) och kontonummer. Men tag med även med namnen på de kunder som inte har något konto: SELECT efternamn, förnamn, kontonr FROM Bankkonton RIGHT OUTER JOIN Kunder ON Bankkonton.personNr = Kunder.personNr; Resultatet blir en rad per konto samt en rad för de kunder som ej har något konto: efternamn förnamn kontonr Ek Bo Ek Bo Bok Lars Alm Eva Alm Eva Alm Sara EDAA20 (Föreläsning databaser) HT / 52

8 Subfrågor IN Tag reda på vem som har högsta saldot. SELECT personnr FROM Bankkonton WHERE saldo = (SELECT MAX(saldo) FROM Bankkonton); Tag reda på vilka kunder som saknar konto. SELECT efternamn, förnamn FROM Kunder WHERE personnr NOT IN (SELECT personnr FROM Bankkonton); Observera att man inte kan ha aggregatfunktioner direkt i where-villkoret, utan måste använda en subfråga. Bok Lars Observera att IN används här (och inte =). Tecknet = kan bara användas för att jämföra ett värde med ett annat. Men subfrågan i exemplet kan ge flera personnummer som resultat. EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Gruppera GROUP BY Ibland vill man gruppera raderna i en tabell och behandla varje grupp för sig. Så här gör man för att summera alla kontons saldo: SELECT SUM(saldo) Om man istället vill se hur mycket pengar varje enskild person har på sina konton måste man dela in kontona i en grupp per kund och summera saldot i varje grupp: SELECT personnr, SUM(saldo) AS saldototalt FROM Bankkonton GROUP BY personnr; Gruppera GROUP BY Forts. Gruppering: kontonr saldo personnr personnr saldototalt EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

9 HAVING Having kan användas för att välja ut visa rader när man grupperat. Exempel: Summera hur mycket pengar varje enskild person har på sina konton. Men tag bara med personer som har mindre än kr: SELECT personnr, SUM(saldo) AS saldototalt FROM Bankkonton GROUP BY Bankkonton.personNr HAVING SUM(saldo) < 10000; personnr SaldoTotalt JOIN mellan samma tabell Tag reda på de kunder som har samma efternamn som någon annan kund. Tips! Låtsas som om det finns två tabeller med kunder där vi ska jämföra efternamnet från den ena tabellen med efternamnet från den andra. Vi behöver då två olika namn på tabellen Kunder, t ex Kunder1 och Kunder2. SELECT Kunder1.personNr, Kunder2.PersonNr, Kunder1.efternamn FROM Kunder AS Kunder1 INNER JOIN Kunder AS Kunder2 ON Kunder1.efternamn = Kunder2.efternamn WHERE Kunder1.personNr < Kunder2.personNr; Kunder1.PersonNr Kunder2.PersonNr efternamn Alm EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 ER-modell Databasdesign För att uttrycka en modell av vårt system använder vi en ER-modell. I ER-modellen visas vilken information som ska finnas i databasen. hur de olika komponenterna hänger ihop. ER står för Entity entitet ( sak, jfr objekt i programmering) Relationship samband Utveckla en ER-modell för systemet (uttryckt i UML). Omvandla ER-modellen till relationer (tabeller). Skapa tabellerna i en databashanterare. EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

10 Exempel Studentregister ER-modell Studentregister En databas för registrering av kurser, studenter och resultat ska utvecklas. Studenter har personnummer och ett namn. När en student är godkänd på en kurs registreras betyget 3, 4 eller 5. En kurs har en kurskod (ex: EDAA20), ett namn och ett poängantal. Kursen ges av en institution. Institutionen har ett namn och en adress. Student personnr förnamn efternamn Resultat betyg Kurs kurskod kursnamn poäng 1 Institution namn adress EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 ER-modell Multiplicitet I ER-modellen ser man: entitetstyper påminneromklasseriprogrammeringmeninnehåller bara attribut. attribut egenskaper hos entitetsyper och även hos samband ibland samband mellan entitetstyperna Vi använder UML (Unified Modeling Language) för att uttrycka ER-modellen. Vid sambandens ändar kan man ange multiplicitet (aritet). Ex 1: En företag har flera anställda. En person kan arbeta i flera företag. Företag Person Ex 2: En företag har flera anställda. En person är bara anställd vid ett företag. Företag 1 Person Multipliciteten anges som ett heltal (t.ex. 1) eller ett intervall (t.ex. 0..1). betyderettobegränsatantal. EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

11 Samband kan ha namn Man kan ge sambanden namn. Ex: anställer Företag Person Samband kan ha attribut Attributet betyg kan inte placeras i någon av entitetstyperna Student eler Kurs. En student klarar flera kurser och har då flera betyg. En kurs har flera godkända studenter. Attributet betyg hör istället ihop med sambandet mellan Student och Kurs. eller Person arbetar hos Företag Student personnr förnamn efternamn Kurs kurskod kursnamn poäng Vid sambandets ändar kan man skriva ut roller. Ex: Person anställd arbetsgivare Företag Resultat betyg EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Undvik redundans Kurs kurskod kursnamn poäng institutionsnamn 1 Institution namn adress Vanligt fel! Attributet instiutionsnamn uttrycker samma sak som sambandet mellan kurs och institution. Bort med det onödiga attributet i ER-diagrammet! (Däremot kanske det dyker upp som attribut i tabellen så smånigom.) EDAA20 (Föreläsning databaser) HT / 52 Primärnyckel En nyckel är ett (eller flera attribut tillsammans) vars värde garanterat är unikt. Man brukar välja ut en av nycklarna och kalla denna primärnyckel. Primärnycklarna kan markeras genom understrykning I UML-diagrammet. Student personnr förnamn efternamn Resultat betyg Kurs kurskod kursnamn poäng 1 Institution namn adress EDAA20 (Föreläsning databaser) HT / 52

12 Arv Relationsmodellen En speciell typ av samband mellan entitetstyper är arv. IexempletärverFysiskpersonochJuridiskpersongemensamma egenskaper från Person. Fysisk person personnummer Person namn Juridisk person organisationsnummer Fastighet fastighetsnummer Relationsmodellen beskriver vilka tabeller som ska finnas i databasen. Tabeller i exemplet studentregister: Studenter(personNr, förnamn, efternamn) Kurser(kurskod, kursnamn, poäng, institutionsnamn) Institutioner(namn, adress) Resultat(personNr, kurskod, betyg) EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Från ER-modell till relationer Olika modeller Varje entitetstyp blir en relation med samma attribut som entitetstypen. Studenter(personNr, förnamn, efternamn) Kurser(kurskod, kursnamn, poäng) Institutioner(namn, adress) Varje samband blir en relation vars attribut är nycklarna för de inblandade entitetstyperna plus sambandets egna attribut. Resultat(personNr, kurskod, betyg) ER-modellen är en konceptuell modell. Den beskriver verkligheten, t.ex. hur olika saker hänger ihop. Samma teknik att modellera verkligheten kan man använda i andra sammanhang, t.ex. vid programmering eller annat problemlösande. Relationsmodellen är en implementeringsmodell och beskriver vilka tabeller som ska finnas. Undantag: Om man har ett många-till-en-samband kan man istället lägga till nyckeln från en-sidan som attribut på många-sidan. Kurser(kurskod, kursnamn, poäng, institutionsnamn) EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

13 Integritetsvillkor Referensintegritet Främmande nyckel Villkor som begränsar vilka data som kan lagras i databasen. Hindrar oss att lägga in felaktiga data. Nyckelvillkor Två tupler kan inte ha samma värden på primärnyckeln. Attributen i primärnyckeln kan inte ha värdet NULL. Referensintegritet seföljandebilder. En främmande nyckel är ett attribut (eller en kombination av attribut) som refererar till en primärnyckel i en annan relation. Exempel: institutionsnamn är främmande nyckel och refererar till namn. Kurser(kurskod, kursnamn, poäng, institutionsnamn) Institutioner(namn, adress) Om det i tabellen Kurser finns en rad EDAA20 Programmering och databaser 7.5 Datavetenskap så måste det i tabellen institutioner finnas en rad med samma institutionsnamn: Datavetenskap Ole Römers väg Lund EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52 Referensintegritet Index Med referensintegritet menas att det måste finnas en motsvarande entitet i andra änden av sambandet. Kurs kurskod kursnamn poäng 1 Institution namn adress Man kan sätta ett index på ett attribut. Detta innebär att tabellen lagras på ett sådant sätt att det går snabbare att söka efter tupler med ett visst värde på attributet. Men insättningar, borttagningar och uppdateringar går långsammare. Ofta skapas det automatiskt ett index till nyckelattributen. Exempel: Varje kurs hör till en institution. För att man ska kunna lägga in ett institutionsnamn i tabellen Kurs måste det finnas i tabellen Institution. EDAA20 (Föreläsning databaser) HT / 52 EDAA20 (Föreläsning databaser) HT / 52

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Vad ä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 mer

Databasens består av: Tabell Kolumner fält Rader poster (varje post är unik)

Databasens består av: Tabell Kolumner fält Rader poster (varje post är unik) Databasföreläsning Databasens består av: Tabell Kolumner fält Rader poster (varje post är unik) Tabeller Personer Databas Nummer Namn Födelseår 1 Tina 1950 2 Siv 1965 3 Olle 1980 Platt databas: all information

Läs mer

Laborationer - databaser, EDAA20 Programmering och databaser

Laborationer - databaser, EDAA20 Programmering och databaser LUNDS TEKNISKA HÖGSKOLA EDAA20 Programmering och databaser Institutionen för datavetenskap HT 2015 Laborationer - databaser, EDAA20 Programmering och databaser I kursens databasdel ingår två obligatoriska

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

Tentamen för DD1370 Databasteknik och informationssystem

Tentamen för DD1370 Databasteknik och informationssystem Tentamen för DD1370 Databasteknik och informationssystem 24 Augusti 2015 Hjälpmedel: Inga hjälpmedel utom papper och penna Tänk på: Skriv högst en uppgift på varje blad. Använd endast framsidan på varje

Läs 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 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

Introduktion till frågespråket SQL (v0.91)

Introduktion till frågespråket SQL (v0.91) DD1370: Databaser och Informationssystem Hösten 2014 Petter Ögren Introduktion till frågespråket SQL (v0.91) 13:e November Disclaimer: Dessa anteckningar har producerats under viss tidspress, och kan därför

Läs mer

Grunderna i SQL del 1

Grunderna i SQL del 1 Grunderna i SQL del 1 1. SELECT-frågor 2. SELECT 3. WHERE 4. ORDER BY 5. Inre join 6. Yttre join 7. Andra typer av join 8. Union 9. Aggregatfunktioner 10. Gruppera och summera Kap. 3 Kap. 4 Kap. 5 utom

Läs mer

Föreläsning 3 Dagens föreläsning går igenom

Föreläsning 3 Dagens föreläsning går igenom Databasbaserad publicering Föreläsning 3 1 Föreläsning 3 Dagens föreläsning går igenom E/R-modellen & Läs om E/R-diagram i kapitel 2-3 i boken "Databasteknik" eller motsvarande avsnitt på http://www.databasteknik.se/webbkursen/er/index.html

Läs mer

Övningar i SQL. SQLAccess.doc Ove Lundgren 2000-11-14

Övningar i SQL. SQLAccess.doc Ove Lundgren 2000-11-14 Övningar i SQL Övningar i SQL Använd Access för att öva SQL (= Structured Query Language) Skapa tabeller med SQL 1. Ny databas: SQLÖVNING Klicka: Frågor > Ny > Design > OK >Stäng > SQL Radera ordet SELECT.

Läs mer

Databaskunskap 7,5 högskolepoäng Provmoment: Ladokkod: Tentamen ges för:

Databaskunskap 7,5 högskolepoäng Provmoment: Ladokkod: Tentamen ges för: Databaskunskap 7,5 högskolepoäng Provmoment: Ladokkod: Tentamen ges för: Namn: Personnummer: Individuell prövning 41E03B Öppen för alla Tentamensdatum: 2013-08-20 Tid: 09:00-13:00 Hjälpmedel: Inga hjälpmedel

Läs mer

Starta MySQL Query Browser

Starta MySQL Query Browser Starta MySQL Query Browser 1. Starta MySQL Query Browser genom att antingen välja i Startmenyn: 2. eller leta upp ikonen på skrivbordet för start av MySQL Query Browser och dubbelklicka på den. 3. Du bör

Läs mer

DIVISIONSEXEMPEL RELATIONSALGEBRA OCH SQL. r s använder vi för att uttrycka frågor där ordet alla figurerar:

DIVISIONSEXEMPEL RELATIONSALGEBRA OCH SQL. r s använder vi för att uttrycka frågor där ordet alla figurerar: DIVISIONSEXEMPEL RELATIONSALGEBRA OCH SQL r s använder vi för att uttrycka frågor där ordet alla figurerar: Ex. Vilka personer har stamkundskort vid ALLA klädesbutiker i stad X? Vilka personer har bankkonto

Läs mer

Structured query language (SQL)

Structured query language (SQL) Structured query language SQL) Varför SQL? SQL är ett standardspråk som är oberoende av databashanteringssystemen som finns på marknaden. Med andra ord kommer du kunna arbeta mot nästan alla sorters relationsdatabaser

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

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

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

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

Databasteknik för D1 m fl

Databasteknik för D1 m fl 1 of 5 Örebro universitet Institutionen för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Databasteknik för D1 m fl tisdag 10 januari 2017 Gäller som tentamen

Läs mer

Föreläsning 4 Dagens föreläsning går igenom

Föreläsning 4 Dagens föreläsning går igenom Databasbaserad publicering Föreläsning 4 1 Föreläsning 4 Dagens föreläsning går igenom E/R-modellen, fortsättning Frågor till flera tabeller samtidigt Många-till-många-relationer Läs om E/R-diagram i kapitel

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

Lär känna MS SQL 2008 / Övning. Observera. Tips. Förberedelse

Lär känna MS SQL 2008 / Övning. Observera. Tips. Förberedelse Lär känna MS SQL 2008 / Övning Observera Övningar som finns tillgängliga är till för att du ska kunna testa dina kunskaper och träna på dem. Det är helt upp till dig när du vill genomföra och om du vill

Läs mer

Prova på-laboration i SQL

Prova på-laboration i SQL Prova på-laboration i SQL Peter Dalenius petda@ida.liu.se Institutionen för datavetenskap, Linköpings universitet 2006-09-19 1. Introduktion till databaser Databaser finns i så gott som alla sammanhang

Läs mer

Tentamen för DD1370 Databasteknik och informationssystem

Tentamen för DD1370 Databasteknik och informationssystem Tentamen för DD1370 Databasteknik och informationssystem 13 Mars 2014 Hjälpmedel: Inga hjälpmedel utom papper och penna Tänk på: Skriv högst en uppgift på varje blad. Använd endast framsidan på varje blad.

Läs mer

INNEHÅLL SQL DEL 2. Funktioner inbyggda Aggregatfunktioner Skalärfunktioner. Chapter 11. Beginning SQL Server 2008 for Developers

INNEHÅLL SQL DEL 2. Funktioner inbyggda Aggregatfunktioner Skalärfunktioner. Chapter 11. Beginning SQL Server 2008 for Developers INNEHÅLL SQL DEL 2 Funktioner inbyggda Aggregatfunktioner Skalärfunktioner Chapter 11. Beginning SQL Server 2008 for Developers 1 FUNKTIONER, INBYGGDA Det finns ett mängd med funktionen du kan använd dig

Läs mer

07/11/14. Databasteknik och informationssystem DD1370 F2. Allmänna frågor. Är Lab0 svårbegriplig? Nu: Clickers. Är Kurswebben svårbegriplig?

07/11/14. Databasteknik och informationssystem DD1370 F2. Allmänna frågor. Är Lab0 svårbegriplig? Nu: Clickers. Är Kurswebben svårbegriplig? Allmänna frågor Databasteknik och informationssystem DD1370 F2 Petter Ögren Är Kurswebben svårbegriplig? Är lab0 svårbegriplig? Är bonus-poängen tydliga? Har ni lyckats installera Open Office? Fungerar

Läs mer

Webprogrammering och 729G28 databaser Webprogrammering och databaser Kursöversikt Webprogrammering Designprocessen Lösningsförslag

Webprogrammering och 729G28 databaser Webprogrammering och databaser Kursöversikt Webprogrammering Designprocessen Lösningsförslag 729G28 Webprogrammering och Kursansvarig: Eva Ragnemalm, IDA eva.ragnemalm@liu.se Kursassistent: Anders Märak Leffler anders.marak.leffler@liu.se Webprogrammering och Föreläsning 1: Diverse praktiskt om

Läs mer

! Teori och praktik. ! Ändringar från förra året. ! Examination (tenta, projekt) LiU. ! Varför ni? ! Varför överhuvudtaget? LiU

! Teori och praktik. ! Ändringar från förra året. ! Examination (tenta, projekt) LiU. ! Varför ni? ! Varför överhuvudtaget? LiU Databaser Design och programmering, IDA Kursen, diverse praktiskt Varför databaser? Vad är en databas? Andra viktiga begrepp Kursöversikt Teori och praktik Fö och bok lektioner, labbar i projekt (3,5hp=100h)

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

Mitthögskolan ITM Telefon 063-16 53 00. Access. Laborationskompendium för grunderna i databasen Microsoft Access. Detta exemplar tillhör:

Mitthögskolan ITM Telefon 063-16 53 00. Access. Laborationskompendium för grunderna i databasen Microsoft Access. Detta exemplar tillhör: Mitthögskolan ITM Telefon 063-16 53 00 Access Laborationskompendium för grunderna i databasen Microsoft Access Detta exemplar tillhör: HT 2003 Innehållsförteckning Tema...1 Databasmiljön...2 Tabeller...2

Läs mer

Relationsdatabasdesign

Relationsdatabasdesign Vad är Relationsdatabasdesign? Relationsdatabasdesign nikosd@kth.se 08-7904460 rum 8522 Connolly/Begg (3rd edition) Kapitel 4., 4.2 och 5 (4th edition) Kapitel 5., 5.2 och 6 (5th edition) Kapitel 6., 6.2

Läs 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

Relationsmodellen och syntetisk databasdesign

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

Structured Query Language (SQL)

Structured Query Language (SQL) Structured Query Language (SQL) Christer Stuxberg christer.stuxberg@im.uu.se Institutionen för Informatik och Media Översikt Introduktion Enkla frågor (queries) Hämta en specifik kolumn Sök Sammanfattning

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

I denna laboration skriver jag inte ut resultatet på de flesta frågorna utan du kör dem själv i din miljö.

I denna laboration skriver jag inte ut resultatet på de flesta frågorna utan du kör dem själv i din miljö. Laboration 2, Databashantering med MySQL Av: Marcus Rejås I denna laboration skall vi jobba vidare på bildatabasen som vi började på förra gången. Vi skall ändra fält och lära oss att

Läs mer

Laboration SQL. Kom igång. http://www.tfe.umu.se/courses/systemteknik/webbkurser/d&w/laborationer/sql.ht...

Laboration SQL. Kom igång. http://www.tfe.umu.se/courses/systemteknik/webbkurser/d&w/laborationer/sql.ht... Page 1 of 5 Laboration SQL Syfte: Under denna laboration skall du bekanta dig med SQL. När laborationen är genomförd skall du klara av att själv formulera enklare SQL-frågor för att kunna ta fram information

Läs mer

VAD GÖR DU / VEM ÄR DU?

VAD GÖR DU / VEM ÄR DU? INNEHÅLL Vad blir din roll Databaser vad är och varför Terminologi Datamodellering vad är och varför Utvecklingsprocessen SQL vad är det Data / Information / Kunskap Kapitel 1 delar av. Praktisk Datamodellering

Läs mer

Lösningsförslag, tentamen i Databaser

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

9. Between 10. Group by 11. Aggregatfunktionerna max, min, sum och avg 12. Nästlade sökningar

9. Between 10. Group by 11. Aggregatfunktionerna max, min, sum och avg 12. Nästlade sökningar FÖ 8: Databaskursen 1. SQL 2. Utsökningar mot en tabell 3. Od Order by 4. Funktionerna upper, lower och initcap 5. Konkatenering 6. Kolumnalias 7. Distinct 8. Hantera nullvärden med nvl-funktionen 9. Between

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

Innehåll MySQL Intro. Ex på ett index Index typer ISAM Balanserat träd Pk och Fk i MySQL Eget index För o nackdelar med index

Innehåll MySQL Intro. Ex på ett index Index typer ISAM Balanserat träd Pk och Fk i MySQL Eget index För o nackdelar med index Innehåll MySQL Intro Ex på ett index Index typer ISAM Balanserat träd Pk och Fk i MySQL Eget index För o nackdelar med index Institutionen Institutionen för Datavetenskap, för Kommunikation Fysik o och

Läs mer

Databaser och. SQL, utsökningar mot en tabell

Databaser och. SQL, utsökningar mot en tabell Databaser och Informationssystem 5 hp IK008 Föreläsning 7 SQL, utsökningar mot en tabell Övningsuppgifter Övningstabell SQL> desc personal Name Null? Type ------------------------------------- --------

Läs mer

3. Dynamiska webbplatser, 20 Yhp (4 v)

3. Dynamiska webbplatser, 20 Yhp (4 v) Webbutvecklare CMS, Yh-utbildning, 2 år, 400 Yhp, Medieinstitutet, www.m Webbutvecklare CMS, Yh-utbildning, 2 år, 400 Yhp, Medieinstitutet, www.medieinstitutet.se, sida 3/12 3. Dynamiska webbplatser, 20

Läs mer

Informationssystem och Databasteknik

Informationssystem och Databasteknik Informationssystem och Databasteknik Föreläsning 4 Relationsmodellen Från konceptuell modell till relationsdatabasschema Inför projektarbetet: - sammansmältning av flera överlappande modeller av samma

Läs mer

Del 2: ER-modellering och överföring till Databasstruktur v0.9

Del 2: ER-modellering och överföring till Databasstruktur v0.9 DD1370: Databaser och Informationssystem Hösten 2014 Del 2: ER-modellering och överföring till Databasstruktur v09 Petter Ögren 1:e December Disclaimer: Dessa anteckningar har producerats under viss tidspress,

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

DDL Kommandon CREATE/DROP Database CREATE /ALTER/DROP Table ALTER/ADD/DROP Column CREATE /ALTER/DROP Index

DDL Kommandon CREATE/DROP Database CREATE /ALTER/DROP Table ALTER/ADD/DROP Column CREATE /ALTER/DROP Index INNEHÅLL SQL DEL 4 DDL Kommandon CREATE/DROP Database CREATE /ALTER/DROP Table ALTER/ADD/DROP Column CREATE /ALTER/DROP Index Chapter 3, 6, 8 delar av. Beginning SQL Server 2008 for Developers 1 CREATE

Läs mer

Labb LABB 1. Databassagan och en rundtur i databasers märkliga värld. Plushögskolan Frågeutveckling inom MSSQL - SU14

Labb LABB 1. Databassagan och en rundtur i databasers märkliga värld. Plushögskolan Frågeutveckling inom MSSQL - SU14 Labb LABB 1 Databassagan och en rundtur i databasers märkliga värld Plushögskolan Frågeutveckling inom MSSQL - SU14 I Microsoft SQL-Server Management Studio kan man arbeta på olika sätt. Antingen via användargränssnittet

Läs mer

Inga hjälpmedel är tillåtna

Inga hjälpmedel är tillåtna Databaser och Affärssystem Provmoment: Ladokkod: Tentamen ges för: Tentamen 41F08A KITEK15h 7,5 högskolepoäng TentamensKod: Tentamensdatum: 2016-10-27 Tid: 9-12 (3 timmar) Hjälpmedel: Inga hjälpmedel är

Läs mer

Grunderna i SQL del 1

Grunderna i SQL del 1 Grunderna i SQL del 1 1. SELECT-frågor 2. SELECT 3. WHERE Kap. 3 4. ORDER BY 5. Inre join 6. Yttre join 7. Andra typer av join Kap. 4 8. Union 9. Aggregatfunktioner 10. Gruppera och summera Kap. 5 utom

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

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

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

Databaser. Jan Erik Moström, Department of Computing Science, Umeå University - jem@cs.umu.se

Databaser. Jan Erik Moström, Department of Computing Science, Umeå University - jem@cs.umu.se Databaser, Department of Computing Science, Umeå University - jem@cs.umu.se Databaser Finns några olika typer Relationsdatabaser är vanligast Vi kommer bara att prata om relationsdatabaser Strukturerad

Läs mer

Labb LIVE. Exempelkod från föreläsningen. Plushögskolan Frågeutveckling inom MSSQL - SU14

Labb LIVE. Exempelkod från föreläsningen. Plushögskolan Frågeutveckling inom MSSQL - SU14 Labb LIVE Exempelkod från föreläsningen Plushögskolan Frågeutveckling inom MSSQL - SU14 Här kommer exempelkoden jag använde under föreläsningen Exemplen Constraints... 2 Transactions... 4 Views... 5 Functions...

Läs mer

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

Informationssystem och Databasteknik, 2I-1100 HT2001. Relationsalgebra. Relationsalgebran är sluten: R 1 op R 2 R 3.

Informationssystem och Databasteknik, 2I-1100 HT2001. Relationsalgebra. Relationsalgebran är sluten: R 1 op R 2 R 3. Primtiva operatorer projektion π selektion σ union differens - kryssprodukt X Relationsalgebra Tilldelning := Relationsalgebran är sluten: Med hjälp av dessa operatorer kan andra (icke-primitiva) operatorer

Läs mer

Datalager och datautvinning

Datalager och datautvinning Datalager och datautvinning 1 Datalager och datautvinning! Databaser kan innehålla stora mängder information om ett företags eller en organisations verksamhet" Data kan också användas för att analysera

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

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

Lösningsförslag till Exempel tentamen

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

TENTAMEN DATABASKUNSKAP ITEK12

TENTAMEN DATABASKUNSKAP ITEK12 TENTAMEN DATABASKUNSKAP ITEK12 Tid: Fredag den 19 oktober kl. 9-00-12.00, sal D409 Tillåtna hjälpmedel: Endast papper och penna. Poäng: Maxpoäng: 56. Gräns för G: 50%. Gräns för VG: 75%. Om något som verkar

Läs mer

Tentamen NDA01G Öppen för alla. Tentamenskod: Inga hjälpmedel är tillåtna

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

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

Databasutveckling Tabeller. tinyint 1 byte (0-255) Upp till 8 bytes

Databasutveckling Tabeller. tinyint 1 byte (0-255) Upp till 8 bytes Databasutveckling Tabeller Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Datatyper Heltal bit 0, 1 eller NULL tinyint 1 byte (0-255) smallint int bigint 2 bytes 4 bytes 8 bytes Decimaltal

Läs mer

16/12/14. Databasteknik och informationssystem DD1370. Dagens föreläsning (den sista!) Motivera med kokbok! Idag: Inga knappar L. Dagens föreläsning

16/12/14. Databasteknik och informationssystem DD1370. Dagens föreläsning (den sista!) Motivera med kokbok! Idag: Inga knappar L. Dagens föreläsning Dagens föreläsning (den sista!) Databasteknik och informationssystem DD1370 Allmän information Information om tentan Repetition - Från text till SQL-fråga Föreläsning 8 (info om tentan och repetition)

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

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

Databasteknik för D1, SDU1 m fl

Databasteknik för D1, SDU1 m fl 1 of 5 Örebro universitet Institutionen för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Databasteknik för D1, SDU1 m fl lördag 7 mars 2015 Gäller som tentamen

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

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

Lösningsförslag Tentamen, 25 april 03

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

SQL, 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. 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 mer

Tentamen i. Databasteknik. för D1, SDU1 m fl. tisdag 15 januari 2013

Tentamen i. Databasteknik. för D1, SDU1 m fl. tisdag 15 januari 2013 1 of 5 Örebro universitet Institutionen för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Databasteknik för D1, SDU1 m fl tisdag 15 januari 2013 Gäller som

Läs mer

Modul DB1-1 Databasmodellering

Modul DB1-1 Databasmodellering Modul DB1-1 Databasmodellering Antal föreläsningar: 2 Antal laborationer: 1 Förkunskapskrav: Databasintroduktion Kurslitteratur: Referenslitteratur: Praktisk datamodellering ISBN: 91-44-38001-1 1 Innehållsförteckning

Läs mer

Introduktion MySQL och MariaDB

Introduktion MySQL och MariaDB Introduktion MySQL och MariaDB Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Vad är MySQL? MySQL är en databashanterare. Den använder sig av frågespråket SQL. MySQL är fri programvara,

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

Se kurshemsidan för användbara länkar för att genomföra denna laboration.

Se kurshemsidan för användbara länkar för att genomföra denna laboration. Laboration, SQL DML Observera Det är fullt tillåtet att göra laborationen innan laborationstillfället. Observera dock att alla uppgifter måste kunna redovisas på redovisningstillfället. Laborationen ska

Läs mer

Tentamen Databasmetodik DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen 8 augusti 2013 kl. 9-13

Tentamen Databasmetodik DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen 8 augusti 2013 kl. 9-13 Institutionen för Data- och Systemvetenskap IT-universitetet Maria Bergholtz Tentamen DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen 8 augusti 203 kl. 9-3 Inga hjälpmedel tillåtna (syntaxsammanställning

Läs mer

Databaser och SQL - en kort introduktion

Databaser och SQL - en kort introduktion Databaser och SQL - en kort introduktion Databaser är inte precis något som i sig är svårbegripligt. Det är bara en massa data samlade på ett ställe i strukturerad form. Problemen består i att det just

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

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

VAD GÖR DU / VEM ÄR DU?

VAD GÖR DU / VEM ÄR DU? INNEHÅLL Vad blir din roll Databaser vad är och varför Terminologi Datamodellering vad är och varför Utvecklingsprocessen SQL vad är det Data / Information / Kunskap Kapitel 1 delar av. Praktisk Datamodellering

Läs mer

Tentamen. TDDB38 - Databasteknik

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

08/11/13. Databasteknik och informationssystem DD1370 F3. Ett urval ur databasen bestäms av en SQL-fråga. Påminnelse: Deadline på tisdag

08/11/13. Databasteknik och informationssystem DD1370 F3. Ett urval ur databasen bestäms av en SQL-fråga. Påminnelse: Deadline på tisdag Påminnelse: Deadline på tisdag Databasteknik och informationssystem DD1370 F3 Petter Ögren Inlämningsuppgift 1 - Skall mailas in senast 23:59 på tisdag. - Redovisas på övningen på onsdag - Inspireras av

Läs mer

Sid 1 (9) Tillämpad fysik och elektronik Karin Fahlquist. Laboration: Databasdesign & SQL

Sid 1 (9) Tillämpad fysik och elektronik Karin Fahlquist. Laboration: Databasdesign & SQL Tillämpad fysik och elektronik Karin Fahlquist 2014-08-29 Sid 1 (9) Laboration: Databasdesign & SQL Sid 2 (9) Målsättning Syftet med denna laboration är att ge grundläggande kunskap och erfarenhet i databasdesign

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

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

Vad är SQL? Introduktion till SQL

Vad är SQL? Introduktion till SQL Introduktion till SQL Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Vad är SQL? Structured Query Language (SQL) är ett standardiserat frågespråk för att hämta och modifiera data i en

Läs mer

Introduktion till MySQL

Introduktion till MySQL Introduktion till MySQL Vad är MySQL? MySQL är ett programmerings- och frågespråk för databaser. Med programmeringsspråk menas att du kan skapa och administrera databaser med hjälp av MySQL, och med frågespråk

Läs mer

D1. Create Domain TEXT30 char(30) Default INGET VÄRDE! ;

D1. Create Domain TEXT30 char(30) Default INGET VÄRDE! ; Lösningsförslag till Övning i SQL Data Definition Language (DDL) D1. Create Domain TEXT30 char(30) Default INGET VÄRDE! ; D2. Create Domain CHARNRKEY char(7 D3. Create Table Skiva( T1. Create Table Skiva(

Läs mer

Databasspråket SQL - online.

Databasspråket SQL - online. Databaser, design och programmering Databasspråket SQL - online. Innehåll: Viktiga kommandon och konstruktioner i SQL, både DDL och DML. Utgångspunkt: en databas om ett varuhus (The Jonson Brothers Company

Läs mer

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp Dataingenjörsprogrammet, elektroingenjörsprogrammet och medicinsk teknik KTH Skolan för Teknik och Hälsa Redovisning: Se Kurs-PM om hur redovisningen

Läs mer