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

Save this PDF as:
 WORD  PNG  TXT  JPG

Storlek: px
Starta visningen från sidan:

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

Transkript

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

2 Idag 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? DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

3 Idag 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? DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

4 Idag 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 jag bry mig om index? DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

5 SQLs delar Den del av SQL som vi gått igenom kallas SQL DML (SQL Data Manipulation Language). En annan viktig del är SQL DDL (SQL Data Definition Language) som används för att skapa databaser och databastabeller, skapa regler för vem som får göra vad i databaserna och skapa index för att snabba upp sökningar. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

6 SQLs delar Den del av SQL som vi gått igenom kallas SQL DML (SQL Data Manipulation Language). En annan viktig del är SQL DDL (SQL Data Definition Language) som används för att skapa databaser och databastabeller, skapa regler för vem som får göra vad i databaserna och skapa index för att snabba upp sökningar. Senaste versionen av SQL, SQL 3, är mer komplicerad med möjligheter att starta program då vissa händelser inträffar (s.k. triggers) och med omfattande programmeringsmöjligheter DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

7 Skapa en databas I många böcker och om man söker på internet används kommandot CREATE DATABASE databasnamn; men det är inte standardiserat. Olika databashanterare har olika metoder för att skapa en databas även om fler och fler tillhandahåller ett SQL-kommando. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

8 Skapa en databas I många böcker och om man söker på internet används kommandot CREATE DATABASE databasnamn; men det är inte standardiserat. Olika databashanterare har olika metoder för att skapa en databas även om fler och fler tillhandahåller ett SQL-kommando. Eftersom det inte finns en standard måste man läsa den aktuella databashanterarens manualer noga. Det förekommer stora skillnader. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

9 Skapa en databas I många böcker och om man söker på internet används kommandot CREATE DATABASE databasnamn; men det är inte standardiserat. Olika databashanterare har olika metoder för att skapa en databas även om fler och fler tillhandahåller ett SQL-kommando. Eftersom det inte finns en standard måste man läsa den aktuella databashanterarens manualer noga. Det förekommer stora skillnader. I postgresql, som vi använder mycket på KTH, finns dels ett SQL-kommando och dels ett kommando man kan skriva i ett terminalfönster. Har man utfört kommandot psql så att man hamnar i postgresql:s kommandotolk så går det utmärkt att skriva t.ex. CREATE DATABASE serafimsdb; DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

10 Skapa en databas I många böcker och om man söker på internet används kommandot CREATE DATABASE databasnamn; men det är inte standardiserat. Olika databashanterare har olika metoder för att skapa en databas även om fler och fler tillhandahåller ett SQL-kommando. Eftersom det inte finns en standard måste man läsa den aktuella databashanterarens manualer noga. Det förekommer stora skillnader. I postgresql, som vi använder mycket på KTH, finns dels ett SQL-kommando och dels ett kommando man kan skriva i ett terminalfönster. Har man utfört kommandot psql så att man hamnar i postgresql:s kommandotolk så går det utmärkt att skriva t.ex. CREATE DATABASE serafimsdb; men i ett terminalfönster använder man kommandot createdb serafimsdb DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

11 Skapa en databas I många böcker och om man söker på internet används kommandot CREATE DATABASE databasnamn; men det är inte standardiserat. Olika databashanterare har olika metoder för att skapa en databas även om fler och fler tillhandahåller ett SQL-kommando. Eftersom det inte finns en standard måste man läsa den aktuella databashanterarens manualer noga. Det förekommer stora skillnader. I postgresql, som vi använder mycket på KTH, finns dels ett SQL-kommando och dels ett kommando man kan skriva i ett terminalfönster. Har man utfört kommandot psql så att man hamnar i postgresql:s kommandotolk så går det utmärkt att skriva t.ex. CREATE DATABASE serafimsdb; men i ett terminalfönster använder man kommandot createdb serafimsdb Liknande möjligheter finns i alla DBMS men kommandona kan se annorlunda ut DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

12 Skapa en databas I många böcker och om man söker på internet används kommandot CREATE DATABASE databasnamn; men det är inte standardiserat. Olika databashanterare har olika metoder för att skapa en databas även om fler och fler tillhandahåller ett SQL-kommando. Eftersom det inte finns en standard måste man läsa den aktuella databashanterarens manualer noga. Det förekommer stora skillnader. I postgresql, som vi använder mycket på KTH, finns dels ett SQL-kommando och dels ett kommando man kan skriva i ett terminalfönster. Har man utfört kommandot psql så att man hamnar i postgresql:s kommandotolk så går det utmärkt att skriva t.ex. CREATE DATABASE serafimsdb; men i ett terminalfönster använder man kommandot createdb serafimsdb Liknande möjligheter finns i alla DBMS men kommandona kan se annorlunda ut Man kan vara säker på att olika leverantörer har sina egna (ibland väldigt egna) idéer så det är bra att åtminstone läsa igenom aktuellt DBMS manual. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

13 Att utplåna en databas Är inte heller standardiserat. Ofta kan man tillhandahålla SQL-kommandot: DROP DATABASE serafimsdb; DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

14 Att utplåna en databas Är inte heller standardiserat. Ofta kan man tillhandahålla SQL-kommandot: DROP DATABASE serafimsdb; men lika ofta får man slå i manualer för att hitta rätt kommando. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

15 Att utplåna en databas Är inte heller standardiserat. Ofta kan man tillhandahålla SQL-kommandot: DROP DATABASE serafimsdb; men lika ofta får man slå i manualer för att hitta rätt kommando. Orsaken till att varken CREATE DATABASE eller DROP DATABASE finns som standard är att de flesta organisationer som använder databaser har speciella anställda, s.k. databasadministratörer (DBA) som sköter företagets bestånd av databaser och att det är bra om ingen får kasta bort (eller skapa) en databas utan DBA:s medverkan. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

16 Att utplåna en databas Är inte heller standardiserat. Ofta kan man tillhandahålla SQL-kommandot: DROP DATABASE serafimsdb; men lika ofta får man slå i manualer för att hitta rätt kommando. Orsaken till att varken CREATE DATABASE eller DROP DATABASE finns som standard är att de flesta organisationer som använder databaser har speciella anställda, s.k. databasadministratörer (DBA) som sköter företagets bestånd av databaser och att det är bra om ingen får kasta bort (eller skapa) en databas utan DBA:s medverkan. På OS-nivå skulle jag kunnat använda postgresql kommandot dropdb serafimsdb DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

17 Tabeller (1) När man väl skapat sin databas är det dags att skapa tabellerna. Det finns många sätt och kanske det allra mest eleganta är att använda ett grafiskt gränssnitt i en webbläsare, för Postgresql finns phppgadmin som man kan använda på nestor via URL:en men det är viktigt att kunna bygga databaser via SQL-kommandon också. Vi ska titta på hur man gör för att realisera den varuhusdatabas som jag gjorde en modell till: Anställd Leverantör Anställning Lager Avdelning Försäljning Vara DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

18 Tabeller... (2) Den hade egenskapsmatrisen: Typ Namn I-termer E-termer Obj Vara varunr typ Avdelning avd våning Anställd namn lön, chef Leverantör företag adress Samb Försäljning avd, varunr volym Anställd namn, avd Lager företag, avd, varunr volym DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

19 Tabeller... (3) och vi fick fram en databasstruktur: Vara Avdelning Anställd Leverantör Lager Försäljning (varunr, typ) (avd, våning) (namn, lön, chef, avd) (företag, adress) (företag, avd, varunr, volym) (avd, varunr, volym) DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

20 Tabeller... (4) Kommentar: Har man startat postgresql med kommandot psql kan man använda kommandot \h för att få hjälp med SQL-kommandon DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

21 Tabeller... (4) Kommentar: Har man startat postgresql med kommandot psql kan man använda kommandot \h för att få hjälp med SQL-kommandon Eftersom jag vill markera alla främmande nycklar så måste jag mata in i en viss ordning, annars klagar DBMS. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

22 Tabeller... (4) Kommentar: Har man startat postgresql med kommandot psql kan man använda kommandot \h för att få hjälp med SQL-kommandon Eftersom jag vill markera alla främmande nycklar så måste jag mata in i en viss ordning, annars klagar DBMS. Ordningen bestäms av de främmande nycklarna. Jag börjar med tabeller som inte har några sådana. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

23 Tabeller... (4) Kommentar: Har man startat postgresql med kommandot psql kan man använda kommandot \h för att få hjälp med SQL-kommandon Eftersom jag vill markera alla främmande nycklar så måste jag mata in i en viss ordning, annars klagar DBMS. Ordningen bestäms av de främmande nycklarna. Jag börjar med tabeller som inte har några sådana. CREATE TABLE vara ( varunr int2 NOT NULL, typ character varying(20), PRIMARY KEY (varunr) ); DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

24 Tabeller... (5) CREATE TABLE avdelning ( avd character varying(20) NOT NULL, våning int2, PRIMARY KEY (avd) ); DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

25 Tabeller... (5) CREATE TABLE avdelning ( avd character varying(20) NOT NULL, våning int2, PRIMARY KEY (avd) ); CREATE TABLE leverantör ( företag character varying(30) NOT NULL, adress character varying(50), PRIMARY KEY (företag) ); DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

26 Tabeller... (6) CREATE TABLE anställd ( namn character varying(30) NOT NULL, lön int4, chef character varying(30), avd character varying(20), PRIMARY KEY (namn), FOREIGN KEY (chef) REFERENCES anställd, FOREIGN KEY (avd) REFERENCES avdelning ); DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

27 Tabeller... (7) CREATE TABLE försäljning ( avd character varying(20) NOT NULL, varunr int2 NOT NULL, volym int4, PRIMARY KEY (avd, varunr), FOREIGN KEY (avd) REFERENCES avdelning, FOREIGN KEY (varunr) REFERENCES vara ); DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

28 Tabeller... (8) CREATE TABLE lager ( avd character varying(20) NOT NULL, varunr int2 NOT NULL, företag character varying(30) NOT NULL, volym int4, PRIMARY KEY (avd, varunr, företag), FOREIGN KEY (avd) REFERENCES avdelning, FOREIGN KEY (varunr) REFERENCES vara, FOREIGN KEY (företag) REFERENCES leverantör ); DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

29 Ändra i tabelldefinitioner Man kan ändra en tabelldefinition när tabellen har skapats ALTER TABLE tillåter att man lägger till eller tar bort kolumner DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

30 Ändra i tabelldefinitioner Man kan ändra en tabelldefinition när tabellen har skapats ALTER TABLE tillåter att man lägger till eller tar bort kolumner Man kan ta bort en kolumn så länge som kolumnen inte innehåller data men finns det ett enda värde i en kolumn så kan den inte tas bort DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

31 Ändra i tabelldefinitioner Man kan ändra en tabelldefinition när tabellen har skapats ALTER TABLE tillåter att man lägger till eller tar bort kolumner Man kan ta bort en kolumn så länge som kolumnen inte innehåller data men finns det ett enda värde i en kolumn så kan den inte tas bort Många andra saker kan ställas in samtidigt. Se den långa utskriften vid kommandot \h ALTER TABLE när man är i postgresqls kommandogränssnitt DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

32 Mata in nya data i en tabell Kommandot INSERT INTO används för att lägga till data till en tabell. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

33 Mata in nya data i en tabell Kommandot INSERT INTO används för att lägga till data till en tabell. Man kan välja att stoppa in allt som går på en rad. Då slipper man räkna upp kolumnerna. Ex.: INSERT INTO anställd VALUES ( Karlsson K, 23540, Svensson S, sport ); om man matar in värdena i rätt ordning DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

34 Mata in nya data i en tabell Kommandot INSERT INTO används för att lägga till data till en tabell. Man kan välja att stoppa in allt som går på en rad. Då slipper man räkna upp kolumnerna. Ex.: INSERT INTO anställd VALUES ( Karlsson K, 23540, Svensson S, sport ); om man matar in värdena i rätt ordning Annars måste man räkna upp kolumnerna. Ex.: INSERT INTO anställd (lön, namn, avd) VALUES (23540, Karlsson K, sport ); varvid utelämnade kolumner fylls på med null i den inmatade raden. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

35 Mata in nya data i en tabell Kommandot INSERT INTO används för att lägga till data till en tabell. Man kan välja att stoppa in allt som går på en rad. Då slipper man räkna upp kolumnerna. Ex.: INSERT INTO anställd VALUES ( Karlsson K, 23540, Svensson S, sport ); om man matar in värdena i rätt ordning Annars måste man räkna upp kolumnerna. Ex.: INSERT INTO anställd (lön, namn, avd) VALUES (23540, Karlsson K, sport ); varvid utelämnade kolumner fylls på med null i den inmatade raden. Skulle man ha angivit ett defaultvärde används det i ställer för null DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

36 Ta bort rader ur en tabell Kommandot DELETE FROM används för att ta bort data från en tabell. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

37 Ta bort rader ur en tabell Kommandot DELETE FROM används för att ta bort data från en tabell. Ex.: DELETE FROM anställd WHERE namn = Karlsson K ; DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

38 Ta bort rader ur en tabell Kommandot DELETE FROM används för att ta bort data från en tabell. Ex.: DELETE FROM anställd WHERE namn = Karlsson K ; VARNING! DELETE FROM anställd; tar bort alla rader från anställd. Inga frågor i stil med är du säker? eller något annat. Alla rader försvinner utom om det finns främmande-nyckel-beroenden. Då vägrar DBMS. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

39 Ta bort rader ur en tabell Kommandot DELETE FROM används för att ta bort data från en tabell. Ex.: DELETE FROM anställd WHERE namn = Karlsson K ; VARNING! DELETE FROM anställd; tar bort alla rader från anställd. Inga frågor i stil med är du säker? eller något annat. Alla rader försvinner utom om det finns främmande-nyckel-beroenden. Då vägrar DBMS. Lägger man till DELETE FROM anställd CASCADE; så tas alla rader bort från anställd och också alla rader i andra tabeller som är beroende av någon av raderna som tagits bort ur anställd DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

40 Uppdatera rader Kommandot UPDATE används för att ändra data i en tabell. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

41 Uppdatera rader Kommandot UPDATE används för att ändra data i en tabell. Ex.: UPDATE anställd SET lön = WHERE namn = Karlsson K ; DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

42 Uppdatera rader Kommandot UPDATE används för att ändra data i en tabell. Ex.: UPDATE anställd SET lön = WHERE namn = Karlsson K ; UPDATE anställd SET (lön=32400, chef= Näsström C ) WHERE namn = Karlsson K ; DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

43 Uppdatera rader Kommandot UPDATE används för att ändra data i en tabell. Ex.: UPDATE anställd SET lön = WHERE namn = Karlsson K ; UPDATE anställd SET (lön=32400, chef= Näsström C ) WHERE namn = Karlsson K ; UPDATE anställd SET lön = 2*lön WHERE chef IS NOT NULL; DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

44 Ladda data från fil / Spara data på fil Man kan hämta kommandon direkt från en fil, t.ex. skapas varuhusdatabasen genom kommandot \i vhdump DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

45 Ladda data från fil / Spara data på fil Man kan hämta kommandon direkt från en fil, t.ex. skapas varuhusdatabasen genom kommandot \i vhdump där filen vhdump innehåller alla kommandon för att både bygga tabellerna och för att fylla dem med data DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

46 Ladda data från fil / Spara data på fil Man kan hämta kommandon direkt från en fil, t.ex. skapas varuhusdatabasen genom kommandot \i vhdump där filen vhdump innehåller alla kommandon för att både bygga tabellerna och för att fylla dem med data Kopiera data till en enskild tabell går också bra på det viset men också med kommandot COPY. Ex.: COPY avdelning (avd, våning) FROM /home/serafim/avd.sql WITH DELIMITER DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

47 Ladda data från fil / Spara data på fil Man kan hämta kommandon direkt från en fil, t.ex. skapas varuhusdatabasen genom kommandot \i vhdump där filen vhdump innehåller alla kommandon för att både bygga tabellerna och för att fylla dem med data Kopiera data till en enskild tabell går också bra på det viset men också med kommandot COPY. Ex.: COPY avdelning (avd, våning) FROM /home/serafim/avd.sql WITH DELIMITER Kopiera data till en fil går också bra med kommandot COPY. Ex.: COPY avdelning TO /home/serafim/avd.sql DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

48 Ladda data från fil / Spara data på fil Man kan hämta kommandon direkt från en fil, t.ex. skapas varuhusdatabasen genom kommandot \i vhdump där filen vhdump innehåller alla kommandon för att både bygga tabellerna och för att fylla dem med data Kopiera data till en enskild tabell går också bra på det viset men också med kommandot COPY. Ex.: COPY avdelning (avd, våning) FROM /home/serafim/avd.sql WITH DELIMITER Kopiera data till en fil går också bra med kommandot COPY. Ex.: COPY avdelning TO /home/serafim/avd.sql dumpa hela databasen med OS-kommandot pg_dump databasnamn DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

49 Ladda data från fil / Spara data på fil Man kan hämta kommandon direkt från en fil, t.ex. skapas varuhusdatabasen genom kommandot \i vhdump där filen vhdump innehåller alla kommandon för att både bygga tabellerna och för att fylla dem med data Kopiera data till en enskild tabell går också bra på det viset men också med kommandot COPY. Ex.: COPY avdelning (avd, våning) FROM /home/serafim/avd.sql WITH DELIMITER Kopiera data till en fil går också bra med kommandot COPY. Ex.: COPY avdelning TO /home/serafim/avd.sql dumpa hela databasen med OS-kommandot pg_dump databasnamn dumpa alla databaser med OS-kommandot pg_dumpall DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

50 Index vad är det? Ett index är en datastruktur som används för att snabba upp sökningar i en tabell DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

51 Index vad är det? Ett index är en datastruktur som används för att snabba upp sökningar i en tabell Antag att vårt OS hanterar block som är 4096 byte stora. Det betyder att 4096 byte läses i varje enskild läsoperation. Varken mer eller mindre DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

52 Index vad är det? Ett index är en datastruktur som används för att snabba upp sökningar i en tabell Antag att vårt OS hanterar block som är 4096 byte stora. Det betyder att 4096 byte läses i varje enskild läsoperation. Varken mer eller mindre Antag att vi har en tabell med rader där raderna är så att vi kan packa 5 rader/block. Resten av blocket består av en header och lite oanvänt utrymme DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

53 Index vad är det? Ett index är en datastruktur som används för att snabba upp sökningar i en tabell Antag att vårt OS hanterar block som är 4096 byte stora. Det betyder att 4096 byte läses i varje enskild läsoperation. Varken mer eller mindre Antag att vi har en tabell med rader där raderna är så att vi kan packa 5 rader/block. Resten av blocket består av en header och lite oanvänt utrymme Då kommer filen som innehåller tabellen att vara knappt 820 MB. Inte många primärminnen klarar av att hålla en sådan fil i minnet och ändå ha utrymme för annat. DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

54 Index vad är det? Ett index är en datastruktur som används för att snabba upp sökningar i en tabell Antag att vårt OS hanterar block som är 4096 byte stora. Det betyder att 4096 byte läses i varje enskild läsoperation. Varken mer eller mindre Antag att vi har en tabell med rader där raderna är så att vi kan packa 5 rader/block. Resten av blocket består av en header och lite oanvänt utrymme Då kommer filen som innehåller tabellen att vara knappt 820 MB. Inte många primärminnen klarar av att hålla en sådan fil i minnet och ändå ha utrymme för annat. Antag också att en nyckel är 30 byte och en pekare 8 byte. Då får vi rum med 100 par <nyckel,pekare> i varje block. En sån fil blir block stor (41MB) DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

55 Index... Det får rum i minnet och om vi använder binärsökning i filen + linjär sökning i blocken så tar det 2 log = 14 läsningar i block för att hitta det rätta blocket DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

56 Index... Det får rum i minnet och om vi använder binärsökning i filen + linjär sökning i blocken så tar det 2 log = 14 läsningar i block för att hitta det rätta blocket Även om det inte får rum i minnet kan vi behålla några block i minnet hela tiden. Väljer vi de på avståndet 1/2, 1/4, 3/4, 1/8, 3/8, 5/8, 7/8... av filens längd, kommer vi att kunna hitta vilken post som helst av de med väsentligt färre läsningar från sekundärminnet än 14 DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

57 Index... Det får rum i minnet och om vi använder binärsökning i filen + linjär sökning i blocken så tar det 2 log = 14 läsningar i block för att hitta det rätta blocket Även om det inte får rum i minnet kan vi behålla några block i minnet hela tiden. Väljer vi de på avståndet 1/2, 1/4, 3/4, 1/8, 3/8, 5/8, 7/8... av filens längd, kommer vi att kunna hitta vilken post som helst av de med väsentligt färre läsningar från sekundärminnet än 14 Så trots den stora mängden kopior av nycklar (= redundans) så snabbar det upp systemet avsevärt DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

58 Index... Det får rum i minnet och om vi använder binärsökning i filen + linjär sökning i blocken så tar det 2 log = 14 läsningar i block för att hitta det rätta blocket Även om det inte får rum i minnet kan vi behålla några block i minnet hela tiden. Väljer vi de på avståndet 1/2, 1/4, 3/4, 1/8, 3/8, 5/8, 7/8... av filens längd, kommer vi att kunna hitta vilken post som helst av de med väsentligt färre läsningar från sekundärminnet än 14 Så trots den stora mängden kopior av nycklar (= redundans) så snabbar det upp systemet avsevärt Det finns en mängd olika typer av index, alltid med stora tidsvinster som bonus DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

59 Index... DBMS genererar alltid (om man inte stänger av den faciliteten) ett s.k. B-träds-index för alla tabeller som har en primärnyckel angiven DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

60 Index... DBMS genererar alltid (om man inte stänger av den faciliteten) ett s.k. B-träds-index för alla tabeller som har en primärnyckel angiven Ibland kan det finnas anledning att göra fler index men oftast inte. Man kan för det mesta helt enkelt låta DBMS välja när index ska skapas och vilken sorts index som ska användas DD1370 (Föreläsning 4) Databasteknik och informationssystem 7,5 hp Hösten / 20

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

Idag. Hur skapar vi och underhåller en databas? Index? Vad är det och varför behövs de? Behöver jag bry mig om index?

Idag. Hur skapar vi och underhåller en databas? Index? Vad är det och varför behövs de? Behöver jag bry mig om index? Idag 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 jag bry

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

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

Ö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

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

För att XCOPY i SQL Server Express ska fungera måste data och logg ligga i samma mapp, vilket naturligtvis inte är så bra.

För att XCOPY i SQL Server Express ska fungera måste data och logg ligga i samma mapp, vilket naturligtvis inte är så bra. 1 Datafiler tillhör alltid en filgrupp. Det måste alltid finnas en PRIMARY group. Det är inget som hindrar att datafiler på olika diskar tillhör samma filgrupp. PRIMARY gruppen innehåller huvudfilen till

Läs mer

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

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

Läs mer

! 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

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

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

L0009B. Moment. Introduktion till geografiska databaser: G:\L0009B\Allmänt\IntroGeoDB.pdf (F)

L0009B. Moment. Introduktion till geografiska databaser: G:\L0009B\Allmänt\IntroGeoDB.pdf (F) L0009B Moment FL 1: Kursintroduktion. Kursinformation: G:\L0009B\Allmänt\KursInformationL0009B.pdf (F) Kursplan: Se https://portal.student.ltu.se/stuka/kurs.php?kurs=l0009b&lang=swe (F) Allt som markerats

Läs mer

Fiktiv tentamen för DD1370 Databasteknik och informationssystem

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

Läs mer

Databasutveckling Introduktion till SQL och TSQL

Databasutveckling Introduktion till SQL och TSQL Databasutveckling Introduktion till SQL och TSQL Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Agenda Introduktion till SQL SELECT satsen, enkla frågor Hämta specifika kolumner Alias

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

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

Tentamen. i Databasteknik. lördagen den 13 mars 2004. Tillåtna hjälpmedel: Allt upptänkligt material Tentamen i lördagen den 13 mars 2004 Tillåtna hjälpmedel: Allt upptänkligt material Använd bara framsidan på varje blad. Skriv max en uppgift per blad. Motivera allt, dokumentera egna antaganden. Oläslig/obegriplig

Läs mer

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

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

Denna laboration skapades för elever vid Roslagens Högskola men kan användas av vem som helst. Namnen på servrarna måste i så fall ändras.

Denna laboration skapades för elever vid Roslagens Högskola men kan användas av vem som helst. Namnen på servrarna måste i så fall ändras. Laboration 1, Databashantering med MySQL Av: Marcus Rejås I denna laboration skall du se till att du kommer åt databasmotorn och att det fungerar. Du kommer också att skapa en tabell

Läs mer

WCMS-15, Webbutvecklare CMS

WCMS-15, Webbutvecklare CMS WCMS-15, Webbutvecklare CMS Övningstentamen, delkurs Dynamiska webbplatser (20 YH-poäng) Plats: Medieinstitutet, Malmö Tid: 25 november 2015, kl. 13.00-16.00 Tillåtna hjälpmedel: Papper, penna, suddgummi,

Läs mer

Kort handledning för Databassystemet Ingres och gränssnittsprogrammet isql

Kort handledning för Databassystemet Ingres och gränssnittsprogrammet isql Kort handledning för Databassystemet Ingres och gränssnittsprogrammet isql Göran Landgren 2002 1 Starta gränssnittsprogrammet isql Institutionens databasystemet CA-OPENINGRES är under ständig exekvering

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

INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA...

INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA... INSTALLATION...3 ATT KOMMA IGÅNG...3 PROGRAMMETS DESIGN...4 LÄGGA TILL TABELL...4 EDITERA TABELL...4 EDITERA RELATION...5 SPARA OCH AVSLUTA...6 2 (6) 2D1954 Programutvecklingsprojekt vt 2003 Installation

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

Skapa en databas. Skapa en tabell. Gör man antingen genom kommandot

Skapa en databas. Skapa en tabell. Gör man antingen genom kommandot Att konstruera och underhålla en databas Skapa en databas Då man gjort färdig sin modell, fört över den till en databasstruktur och normaliserat strukturen så måste man realisera databasen i någon databashanterare.

Läs mer

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

Sätta upp e-post server Ubuntu 14.04, del 1 installation av programvara, konfiguration av mysql och Postfix

Sätta upp e-post server Ubuntu 14.04, del 1 installation av programvara, konfiguration av mysql och Postfix Sätta upp e-post server Ubuntu 14.04, del 1 installation av programvara, konfiguration av mysql och Postfix Arbetsuppgift 1: Uppdatera och uppgradera din installation. Steg 1: Starta och logga på din server,

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

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

Filbeskrivningar ---------------- http://student.ing-steen.se/sql/ Eller på särskild CD skiva

Filbeskrivningar ---------------- http://student.ing-steen.se/sql/ Eller på särskild CD skiva Filbeskrivningar ---------------- http://student.ing-steen.se/sql/ Eller på särskild CD skiva OBS! Det finns ytterligare filer på Microsoft CD, som tillhör SQL 2000 Administration Self paced, vilka kan

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

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

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

Du skall naturligtvis visa körexempel med output där det behövs i din rapport!

Du skall naturligtvis visa körexempel med output där det behövs i din rapport! och databprogrammering Christilinda Göstson - PL/SQL, paket och ref cursor Du skall naturligtvis visa körexempel med output där det behövs i din rapport! OBS! Denna labb redovis i labbrapport via mail

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

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

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

Spara papper! Skriv inte ut sammanfattning utan ladda ner PDF!

Spara papper! Skriv inte ut sammanfattning utan ladda ner PDF! Denna beskrivning har gjorts på Windows 2000 Server (men bör fungera även på Windows XP Home Edition/Professional och Windows 2003 Server). Att installera Oracle 10g kräver ca. 2 GB hårddiskplats och ca.

Läs mer

Det finns även möjlighet att göra "Java - kopplingar" mot DB2 enligt diverse standarder som ODBC, SQLj mm.

Det finns även möjlighet att göra Java - kopplingar mot DB2 enligt diverse standarder som ODBC, SQLj mm. Syftet med detta dokument är att ge studenterna de nödvändiga kunskaperna för att snabbt komma igång med att använda IBM DB2 för Windows / NT. DB2 v 6.1 är en i grunden en relationsdatabas men det finns

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

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

SEB. Four foils. SEB IT Lars-Göran Karlsson

SEB. Four foils. SEB IT Lars-Göran Karlsson SEB Four foils SEB IT Lars-Göran Karlsson SEB IT Nu ett IT bolag inom SEB koncernen Tidigare uppdelat på två bolag SEB IT Partner för utveckling SEB IT Service för drift Nu två enheter inom SEB IT SEB

Läs mer

Föreläsning 6 Databaser och säkerhet

Föreläsning 6 Databaser och säkerhet Databasbaserad publicering Föreläsning 6 1 Föreläsning 6 Databaser och säkerhet & Läs kapitel 13 i Databasteknik och kapitel 9 i boken PHP & MySQL: Novice to Ninja Databasbaserad publicering Föreläsning

Läs mer

Tentamen i Databasteknik

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

Läs mer

Nya webbservern Dvwebb.mah.se

Nya webbservern Dvwebb.mah.se Nya webbservern Dvwebb.mah.se Bakgrund: BIT (Bibliotek och IT) beslutar att ta ner Novell systemet 28/3 som är en katalogtjänst som styr bland annat alla studenter s.k. hemkataloger på Malmö högskola såväl

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

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

LOTTA MANUAL. t.o.m. version Cederlund 2014-12-07

LOTTA MANUAL. t.o.m. version Cederlund 2014-12-07 LOTTA MANUAL t.o.m. version Cederlund 2014-12-07 Innehållsförteckning 1. Nedladdning, installation och start av programmet 2. Skapa en turnering 3. Lägga in spelare i programmet 3.1. Inmatning av spelare

Läs mer

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

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

Läs mer

TENTAMEN. TDDD12 Databasteknik TDDD46 Databasteknik. 16 augusti 2010, kl 14-18

TENTAMEN. 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 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 i. Databasteknik

Tentamen i. Databasteknik Tentamen i Databasteknik Torsdagen den 10/3 2005 14.00-19.00 Tillåtna hjälpmedel: Allt tänkbart material Använd bara framsidan på varje blad Skriv max en uppgift per blad. Skriv tydligt. Motivera allt.

Läs mer

Tentamen i Datorteknik och - kommunikation, 2D1522/4K1522. Läs detta innan du börjar:

Tentamen i Datorteknik och - kommunikation, 2D1522/4K1522. Läs detta innan du börjar: Tentamen i Datorteknik och - kommunikation, 2D1522/4K1522 2002-05-30 Läs detta innan du börjar: Tid: 14.00-18.00. Du får gå tidigast 15.00 Hjälpmedel Utdelade databashäften. Anteckningar i häftet får finnas

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

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

5HVLVWHQVWDEHOO 'DWD3DUWQHU. Er partner inom data

5HVLVWHQVWDEHOO 'DWD3DUWQHU. Er partner inom data 5HVLVWHQVWDEHOO Tack för att du valde programmet 5HVLVWHQVWDEHOO! Vi hoppas att programmet ska vara till stor hjälp i ditt arbete. Har du synpunkter på programmet är du mycket välkommen att höra av dig

Läs mer

Dokumentation för VLDIT AB. Online classroom

Dokumentation för VLDIT AB. Online classroom Dokumentation för VLDIT AB Online classroom 2 Introduktion VLDIT AB önskar area för att tillhandahålla ett kursutbud online för sina befintliga deltagare, men även för nya. Syfte för applikationen: tillhandhålla

Läs mer

Idag. 1. En enkel databas. 2. Prata med databaser (frågepsråket SQL)

Idag. 1. En enkel databas. 2. Prata med databaser (frågepsråket SQL) Idag 1. En enkel databas 2. Prata med databaser (frågepsråket SQL) DD1370 (Föreläsning 2) Databasteknik och informationssystem 7,5 hp Hösten 2011 1 / 17 En enkel modell över ett varuhus Anställd Leverantör

Läs mer

Dagens föreläsning. KTH & SU, CSC Databasteknik Föreläsning 10 sid 1

Dagens föreläsning. KTH & SU, CSC Databasteknik Föreläsning 10 sid 1 Dagens föreläsning Vad du skall komma ihåg från tidigare föreläsningar Optimering av frågor Algebraisk omformulering Kostnadsberäkningar Evaluering av frågor Algoritmer för relationsoperatorer Beräkning

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

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

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

Idag. Hur vet vi att vår databas är tillräckligt bra? Idag Hur vet vi att vår databas är tillräckligt bra? Vad är ett beroende? Vad gör man om det blivit fel? Vad är en normalform? Hur når man de olika normalformerna? DD1370 (Föreläsning 6) Databasteknik

Läs mer

Vad du skall komma ihåg från tidigare föreläsningar. Dagens föreläsning. Evaluering av frågor. Data dictionary

Vad du skall komma ihåg från tidigare föreläsningar. Dagens föreläsning. Evaluering av frågor. Data dictionary Dagens föreläsning Vad du skall komma ihåg från tidigare föreläsningar Vad du skall komma ihåg från tidigare föreläsningar Optimering av frågor Algebraisk omformulering Kostnadsberäkningar Evaluering av

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

Kapitel 4 Arkivmenyn Innehåll

Kapitel 4 Arkivmenyn Innehåll Kapitel 4 Arkivmenyn Innehåll ARKIVMENYN...2 Byt aktuell användare...2 Utskrift till skärm eller skrivare...3 SQL verktyget...4 Ny SQL...4 Hämta SQL...5 Spara SQL...5 Kör SQL...5 Visa som...5 Avsluta...5

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

Ö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

Stored procedure i ASP.NET

Stored procedure i ASP.NET Stored procedure i ASP.NET OBS! Om du vill jobba med att skapa en stored procedure i en SQL Serverdatabas ifrån VS2010 måste du ha fullversion, expressversionen tillåter dig ej att skapa triggers, stored

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 onsdag 21 augusti 2013 Gäller som

Läs mer

Fillagring och indexering

Fillagring och indexering Fillagring och indexering Lena Strömbäck Institutionen för datavetenskap (IDA) Databaser Världen Databas Modell Databas- Hanterings- System (DBMS) Queries Svar Queries Svar Användare Anv Updates Queries

Läs mer

ADO.NET Murach Kapitel 17-20

ADO.NET Murach Kapitel 17-20 Databaser och C# ADO.NET Murach Kapitel 17-20 2013-01-30 1 Winstrand Development Databas ADO.NET Är en del av.net ramverket och tillhandahåller delar för att kommunicera med olika datakällor. Dessa kan

Läs mer

Versionshistorik MedSpeech. Nyheter och förändringar

Versionshistorik MedSpeech. Nyheter och förändringar Versionshistorik MedSpeech Nyheter och förändringar Version 3.4.1 November 2013 MedSpeech 3.4 2012-05 Nya funktioner MedSpeech är nu anpassat för tyska marknaden vilket innebär användargränssnittet är

Läs mer

INTRODUKTION TILL JDBC

INTRODUKTION TILL JDBC INTRODUKTION TILL JDBC Vad är JDBC? JDBC står för Java DataBase Connectivity. JDBC ingår i Java och består av en del klasser som har hand om databasfunktionalitet. Med Java följer JDBC-ODBC Bridge driver,

Läs mer

Installera din WordPress med 9 enkla steg

Installera din WordPress med 9 enkla steg Installera din WordPress med 9 enkla steg Den här artikeln förutsätter att du har satt upp en webbserver eller har köpt ett webbhotell där du kan placera din nya WordPress hemsida. Om du inte har det,

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

STEG 1 Samla referenser till ditt EndNote-bibliotek

STEG 1 Samla referenser till ditt EndNote-bibliotek Version X6 Notera att du kan använda EndNote tillsammans med antingen OpenOffice (gäller dock ej Mac) eller Microsoft Word, men du kan inte växla mellan de två ordbehandlings-programmen, ett dokument skapat

Läs mer

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

Föreläsning 5 Dagens föreläsning går igenom Databasbaserad publicering Föreläsning 5 1 Föreläsning 5 Dagens föreläsning går igenom SQL-sammanfattning Komplett exempel, från E/R till tabeller och SQL Databasbaserad publicering Föreläsning 5 2 SQL

Läs mer

Introduktion till DB2 v7.2 för Windows 2000

Introduktion till DB2 v7.2 för Windows 2000 Introduktion till DB2 v7.2 för Windows 2000 Syftet med detta dokument är att ge studenterna de nödvändiga kunskaperna för att snabbt komma igång med att använda IBM DB2 för Windows 2000. DB2 v 7.2 är en

Läs mer

Introduktion till DB2 v7.2 för Windows 2000

Introduktion till DB2 v7.2 för Windows 2000 Introduktion till DB2 v7.2 för Windows 2000 Syftet med detta dokument är att ge studenterna de nödvändiga kunskaperna för att snabbt komma igång med att använda IBM DB2 för Windows 2000. DB2 v 7.2 är en

Läs mer

Arbetssätt i Skola24 Schema

Arbetssätt i Skola24 Schema Arbetssättet i Skola24 Schema liknar till allra största delen arbetssättet i Novaschem 2013, med den skillnaden att flera användare samtidigt kan göra ändringar i samma schema. I det här dokumentet beskrivs

Läs mer

Kunskapsbank ICARUS DB

Kunskapsbank ICARUS DB Kunskapsbank ICARUS DB K E Y L O G I C A B 1 Innehållsförteckning 1 Innehållsförteckning 1 2 SQL Server 2005 3 2.1 Installation 3 2.2 Användargränssnitt (DBMS) för SQL Express 3 2.3 Undvik att transaktionsloggen

Läs mer

Version X6 Fler tips

Version X6 Fler tips Version X6 Fler tips Jobba i ditt EndNote-bibliotek Hantera PDF:er För att använda dig av den automatiska Find fulltext-funktionen, markera den eller de referenser du vill söka fulltext för och välj References

Läs mer

TNK046 GIS - Databaser Laborationsuppgift 1 Introduktion till Microsoft Access 2007

TNK046 GIS - Databaser Laborationsuppgift 1 Introduktion till Microsoft Access 2007 Linköpings tekniska högskola ITN / Campus Norrköping Jan Petersson Uppdaterad av Marky Egebäck 17 november 2009 TNK046 GIS - Databaser Laborationsuppgift 1 Introduktion till Microsoft Access 2007 Översikt

Läs mer

Introduktion till DB2 v7.2 för Windows 2000

Introduktion till DB2 v7.2 för Windows 2000 Introduktion till DB2 v7.2 för Windows 2000 Syftet med detta dokument är att ge studenterna de nödvändiga kunskaperna för att snabbt komma igång med att använda IBM DB2 för Windows 2000. DB2 v 7.2 är en

Läs mer

Introduktion till DB2

Introduktion till DB2 Introduktion till DB2 v7.2 för Windows 2000 Syftet med detta dokument är att ge studenterna de nödvändiga kunskaperna för att snabbt komma igång med att använda IBM DB2 för Windows 2000. DB2 v 7.2 är en

Läs mer

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt...

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt... Produktblad för NAV i molnet Innehåll Vad är molnet?... 2 Vad är NAV i molnet?... 3 Vem passar NAV i molnet för?... 4 Fördelar med NAV i molnet... 5 Kom igång snabbt... 5 Bli kostnadseffektiv... 5 Enkelt

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

ANVÄNDAR MANUAL. SESAM 800 RX MC Manager

ANVÄNDAR MANUAL. SESAM 800 RX MC Manager ANVÄNDAR MANUAL SESAM 800 RX MC Manager Åkerströms Björbo AB Box 7, SE-780 45 Gagnef, Sweden street Björbovägen 143 SE-785 45 Björbo, Sweden Phone +46 241 250 00 Fax +46 241 232 99 E-mail sales@akerstroms.com

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

Frågebanker, frågeuppsättningar och slumpvisa block

Frågebanker, frågeuppsättningar och slumpvisa block Frågebanker, frågeuppsättningar och slumpvisa block Innehåll Frågebanker... 1 Skapa frågebank... 1 Importera en frågebank... 3 Lägg till frågor i frågebank... 3 Skapa frågeuppsättning... 3 Skapa slumpvist

Läs mer

Mer information om RefWorks, andra referenshanteringsprogram och hur man refererar hittar du på Linköpings universitetsbiblioteks webbsidor.

Mer information om RefWorks, andra referenshanteringsprogram och hur man refererar hittar du på Linköpings universitetsbiblioteks webbsidor. Guide till RefWorks För att förenkla hanteringen av referenser och referenslistor finns det flera olika verktyg, s.k. referenshanteringsprogram. Med dem kan du samla, organisera och presentera dina referenser.

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

Karlstads Universitet, Datavetenskap 1

Karlstads Universitet, Datavetenskap 1 DAV B04 - Databasteknik KaU - Datavetenskap - DAV B04 - MGö 151 Lagring av databaser på sekundärminne Att läsa/skriva på sekundärminne (hårddisk) är en långsam process jämfört med operationer i primärminnet

Läs mer

Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1

Inlämningsuppgift : Finn. 2D1418 Språkteknologi. Christoffer Sabel E-post: csabel@kth.se 1 Inlämningsuppgift : Finn 2D1418 Språkteknologi Christoffer Sabel E-post: csabel@kth.se 1 1. Inledning...3 2. Teori...3 2.1 Termdokumentmatrisen...3 2.2 Finn...4 3. Implementation...4 3.1 Databasen...4

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

INNEHÅLL. Historik Vad är SQL Språkuppbyggnad SELECT Operatorer Logiska/Jämförelse SELECT med Alias och JOIN INSERT UPDATE DELETE

INNEHÅLL. Historik Vad är SQL Språkuppbyggnad SELECT Operatorer Logiska/Jämförelse SELECT med Alias och JOIN INSERT UPDATE DELETE INNEHÅLL Historik Vad är SQL Språkuppbyggnad SELECT Operatorer Logiska/Jämförelse SELECT med Alias och JOIN INSERT UPDATE DELETE Chapter 8, 9, 11 delar av. Beginning SQL Server 2008 for Developers 1 VAD

Läs mer

Rensa cache-minnet hos din webbläsare

Rensa cache-minnet hos din webbläsare Rensa din dators cache-minne Helst ett par tre gånger i veckan. Annars är risken stor att informationen du får är inaktuell eller att du missar ny och väsentlig information. På de följande fyra sidorna

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