Databaser Kapitel 1: Introduktion!

Storlek: px
Starta visningen från sidan:

Download "Databaser Kapitel 1: Introduktion!"

Transkript

1 Databaser Kapitel 1: Introduktion 1 Vad är en databas? En databas innehåller information som beskriver eller modellerar en viss del av världen T.ex. ett företag eller en verksamhet En databas består av en samling av sinsemellan relaterad data är persistent (dvs. beständig) har ett schema, dvs. en beskrivning av data samt de samband som finns mellan data skall vara konsistent, dvs. skall inte innehålla motsägelser Till en databas hör också en mängd av tillämpningsprogram som kan användas för att accessera och manipulera data Ger användarna en omgivning som är både bekväm och effektiv att använda En databashanterare (DBMS, Database Management System) är ett datorsystem som lagrar och hanterar databaser 2 1

2 Varför behöver jag känna till databaser? Databaser ingår som en komponent i så gott som alla större informationssystem. Man behöver känna till grunderna för databaser för att kunna delta i arbete med att designa, utveckla eller fatta beslut om hur ett informationssystem skall byggas. Vi använder informationssystem som är baserade på databaser varje dag: När man lyfter pengar från en bankautomat eller betalar räkningar på web-banken. När man handlar i en butik. När man bokar resor. När man använder ÅA:s studieplaneringssystem MinPlan, t.ex. för att anmäla sig till en kurs eller en tent. När man besöker webbplatser som t.ex. Facebook, YouTube, LinkedIn eller IT-institutionens websidor. När man ringer ett telefonsamtal. O.s.v. 3 Tillämpningar av databaser Databasanvändare: Banker: kunder, konton, lån, transaktioner Försäkringsbolag: kunder, försäkringar, ersättningar,... Skatteverket: uppgifter om inkomster, avdrag, skatter,... Flygbolag: bokningar, flygförbindelser,... Universitet: studenter, kurser, studieprestationer, anställda,... Försäljning: kunder, produkter, pris, försäljning, lager, Online försäljning: produkter, kunder, uppföljning av beställningar, personliga rekommendationer och reklam Tillverkning: produktion, inventering, lager, beställningar, supply chain Human resources: anställda, arbetsförhållanden, löner, beskattning, O.s.v. Databaser berör alla aspekter av våra liv 4 2

3 Fördelar med databassystem Alternativet till databastillämpningar är datorsystem som lagrar data i vanliga filer. Tillämpningsprogram som accesserar data lagrat i filer och som utför en viss uppgift. Nackdelar med att använda filsystem för att lagra data: Risk för redundans och inkonsistens i data Multipla filformat, duplicerad information i olika filer Ökar risken för att lagra motstridig information Svårt att accessera data Måste skriva ett nytt program för varje ny uppgift som skall utföras Dataisolering Data finns inte samlat på ett ställe, utan i multipla filer och i olika format Integritetsproblem Integritetsbegränsningar (t.ex. att ett kontos saldo måste vara större än noll) blir gömda i programkod i stället för att vara explicit deklarerade Svårt att sätta till nya restriktioner eller ändra på existerande 5 Fördelar med databassystem Nackdelar med att använda filsystem (forts.) Svårt att implementera atomicitet i uppdateringar Misslyckade uppdateringar kan lämna databasen i ett inkonsistent tillstånd med bara partiella uppdateringar utförda Exempel: Överföring av en summa från ett konto till ett annat skall antingen utföras i sin helhet, eller så inte alls Svårt att implementera samtidig access från multipla användare Samtidig access behövs för effektivitetsskäl Okontrollerade samtidiga accesser kan leda till inkonsistens Exempel: Två användare läser ett kontos saldo och uppdaterar det samtidigt Säkerhetsproblem Svårt att ge olika användare access till en del av data, men inte allt Databassystem erbjuder lösningar till alla de ovan nämnda problemen 6 3

4 Nackdelar med databassystem? För små tillämpningar kan det vara onödigt att använda databassystem. Om mängden data är liten och behandlingen av data är enkel. Ett alternativ kan t.ex. vara att använda ett tabellkalkylprogram (som t.ex. Excel eller OpenOffice) Databassystem är resurskrävande. Kräver mera lagringskapacitet på skivminnen och mera processeringskapacitet av datorerna än de flesta andra alternativen Kan vara problematiskt i inbyggda system där man kräver en strikt övre gräns på hur lång tid en operation får ta Kan också kräva mera minneskapacitet än vad som finns tillgängligt i ett litet inbyggt system Tidigare gällde också att databashanterare var dyra att anskaffa Gäller inte nödvändigtvis mera Det finns gratis lösningar av hög kvalitet Open source databashanterare som MySQL, PostgreSQL och SQLite 7 Abstraktionsnivåer Databassystem kan ge olika typer av användare olika vyer av data Gömmer bort en del detaljer från användare som inte behöver känna till de här view level Alla användare behöver inte ha tillgång till all data som finns lagrad. Vy nivån: Olika typer av användare kan se olika delar av data. Logiska nivån: Beskriver data som är lagrad i databasen, och vilka relationer som finns mellan data. Fysiska nivån: view 1 view 2 logical level physical level Beskriver hur information fysiskt lagras t.ex. på skivminne. view n 8 4

5 Instanser och scheman Schema definierar databasens logiska struktur Beskriver de tabeller som ingår i databasen Ändras sällan Analogt med typ-information för en variabel i ett program Instans det verkliga innehållet i databasen vid en viss tidpunkt Ändras varje gång som man sätter in eller stryker data i databasen Analogt med värdet på en variabel Fysiskt dataoberoende Det logiska schemat är oberoende av det fysiska schemat, dvs. hur data fysiskt lagras t.ex. på hårdskivor. Man kan modifiera det fysiska schemat utan att ändra på det logiska schemat. Tillämpningar är enbart beroende av det logiska schemat. Gränssnitten mellan de olika nivåerna och komponenterna skall vara väldefinierade, så att förändringar i en del inte påverkar andra delar. 9 Datamodeller En samling av begrepp och verktyg för att beskriva Data Relationer mellan data Semantik för data (dvs. betydelsen av data) Restriktioner på data Det finns en mängd olika datamodeller som kan användas för att beskriva databaser Relationsmodell Entity-Relationship modell (främst för databasdesign) Objekt-baserade datamodeller (Objektorienterad och Objektrelationsmodeller) Semistrukturerad datamodell (XML) Andra äldre datamodeller: Nätverksmodell Hierarkisk modell 10 5

6 Exempel på en relationsdatabas En relationsdatabas består av en samling av tabeller som är relaterade med varandra En tabell som beskriver lärare vid ett universitet ID namn institutionens namn lön En tabell som beskriver institutionerna institutionens namn byggnad budget Rader (tuppler) Kolumner (attribut) 11 Data Definition Language (DDL) Databasscheman beskrivs med hjälp av ett datadefinitionsspråk (DDL). Specifikationsspråk för att definiera databasschema Exempel: create table instructor ( ID char(5), name varchar(20), dept_name varchar(20), salary decimal(8,2) " "); " Tabelldefinitionerna lagras som metadata (dvs. data om data) i en data dictionary Databasschema Integritetsbegänsningar Hurudana värden kan attributen ha (domänbegränsningar) Hurudana beroenden finns mellan data (referentiell integritet) Lagringsstruktur och accessmetoder Auktorisering vilka användare har rätt att accessera data 12 6

7 Data Manipulation Language (DML) Språk för att accessera och manipulera data som är organiserat enligt en viss datamodell Kallas också frågespråk query language Två klasser av språk Procedurella användaren specificerar exakt hur man kommer åt det det data som man vill ha som i ett vanligt programmeringsspråk (som t.ex. Java) Deklarativa (icke-procedurella) användaren specificerar hurudan data som begärs, utan att exakt behöva ange hur man kommer åt det SQL är det överlägset mest använda frågespråket Mera deklarativt än procedurellt 13 SQL SQL: allmänt använt icke-procedurellt språk Exempel: Hitta namnet på den föreläsare som har ID-nummer select name "from instructor "where instructor.id = ; " Exempel: Hitta ID-nummer och institutionen för alla föreläsare i de institutioner som har en budget på över select instructor.id, department.dept_name from instructor, department where instructor.dept_name = department.dept_name and department.budget > ; " Tillämpningsprogram accesserar vanligtvis databaser via Utvidgning av ett programmeringsspråk som tillåter inbäddad SQL Gränssnitt till tillämpningsprogram som tillåter att man sänder SQL frågor till en databas t.ex. ODBC/JDBC 14 7

8 Databasdesign Processen att designa databasens allmänna struktur: Logisk design Fatta beslut om hur databasens schema skall se ut. Databasdesign kräver att vi hittar en bra samling av relationsscheman som innehåller all data som behövs i den verksamhet där databasen skall användas. Business beslut: Vad? Vilka alla attribut skall lagras i databasen? Datatekniska beslut: Hur? Vilka relationsscheman (dvs. tabeller) skall vi ha och hur skall de olika attributen fördelas mellan tabellerna? Fysisk design Besluta om den fysiska layouten av databasen Normalisering Teori som beskriver vad som är en bra databasdesign. Delar upp informationen som skall lagras i en mängd tabeller utan onödig redundans. 15 Databasdesign? Är det här ett bra sätt att lagra informationen i vår exempeldatabas? En del information lagras upprepade gånger, t.ex. information om att Finance-institutionen finns i Painter-byggnaden och att den har en budget på

9 Entity-Relationship modellen Modellerar en verksamhet som en samling av entiteter och samband mellan dessa Entitet: en sak eller ett objekt som kan särskiljas från andra objekt Beskrivs av en mängd attribut Samband: ett samband mellan två eller flera entiteter Representeras visuellt med hjälp av ett Entity-Relationship diagram: instructor ID name salary member department dept_name building budget Sambandet member beskriver att varje entitet instructor kan vara knuten till en entitet department 17 Intern struktur av databassystem naive users (tellers, agents, web users) application programmers sophisticated users (analysts) database administrators use write use use application interfaces application programs query tools administration tools compiler and linker DML queries DDL interpreter application program object code DML compiler and organizer query evaluation engine query processor buffer manager file manager authorization and integrity manager transaction manager storage manager indices data dictionary disk storage data statistical data 18 9

10 Lagringshantering Lagringshanteraren (storage manager) är en programmodul som utgör ett gränssnitt mellan låg-nivå data som är lagrat i databasen och tillämpningsprogram och frågor som görs mot databasen. Lagringshanteraren är ansvarig för: Interaktion med filhanteringen Effektiv lagring, sökning och uppdatering av data Sköter om: Access till lagringsmedia (vanligtvis hårdskivor) Filorganisation Indexering och hashing 19 Frågeprocessering 1. Parsning och översättning 2. Optimering 3. Evaluering query query output parser and translator evaluation engine Det kan finnas flera olika alternativa sätt att evaluera en fråga Skillnaden i kostnad mellan ett bra och ett dåligt sätt att evaluera en fråga kan vara mycket stor Systemet behöver kunna estimera kostnaden för en operation Lagrar statistisk information om tabellerna i databasen (t.ex. deras storlek) Estimerar kostnaden för för att utföra frågor. data relational-algebra expression optimizer execution plan statistics about data 20 10

11 Transaktionshantering Vad händer om databassystemet kraschar? Vad händer om flera användare samtidigt försöker uppdatera samma data? En transaktion är en samling av operationer som utför en logisk funktion i en databastillämpning T.ex. överför en summa pengar från ett bankkonto till ett annat En transaktionshanteringskomponent ser till att databasen hålls i ett konsistent (korrekt) tillstånd trots att det kan ske fel i systemet (t.ex. strömavbrott, operativsystemet kraschar) och transaktionen misslyckas. Concurrency-control manager övervakar interaktionen mellan samtidiga transaktioner, och ser till att databasen hålls konsistent. 21 Databasanvändare Användare kan delas in i olika klasser beroende på hur de använder systemet Databasadministratör definierar databasens struktur, beviljar användare rättigheter till databasen, övervakar databassystemets prestanda, rutinunderhåll Applikationsprogrammerare utvecklar program som utför transaktioner mot databasen (med SQL) Sofistikerade användare gör SQL frågor mot databasen, t.ex. för att sammanställa rapporter av olika slag Naiva användare använder sig av färdiga tillämpningsprogram som har blivit utvecklade av applikationsprogrammerare Exempel: användare som accesserar en databas över webben, bankfunktionärer, en student som gör en kursanmälan 22 11

12 Databassystemens historia 1950-tal och tidigt 1960-tal: Databehandling med magnetband som lagringsmedia Magnetband ger endast möjlighet till sekventiell access Hålkort för input Sent 1960-tal och 1970-tal: Hårdskivor ger möjligheter till direktaccess till data Nätverks- och hierarkiska datamodeller är i allmän användning Ted Codd definierar relationsdatamodellen Tilldelas ACM Turing Award för det här arbetet IBM Research börjar utveckla en prototyp av System R UC Berkeley börjar utveckla en prototyp av Ingres Effektiv transaktionsbehandling (för sin tid) 23 Historia (forts.) 1980-tal: Prototyper av relationsdatabassystem, som utvecklats i forskningsprojekt, utvecklas vidare till kommersiella system SQL blir en industristandard Parallella och distribuerade databassystem Objekt-orienterade databassystem 1990-tal: Stora beslutsstödande och data-mining tillämpningar Stora multi-terabyte datalager (data warehouse) Handel på webben börjar utvecklas Tidigt 2000-tal: Access till databaser via WWW XML och XQuery standarderna Automatiserad databasadministration Nu: NoSQL databaser databaser som inte använder relationsmodellen Mycket stora distribuerade databaser Google BigTable, Yahoo Pnuts, Apache Cassandra, Amazon Dynamo, 24 12

! 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

Databaser - Design och programmering. Kursöversikt. Exempel: telefonbok. Varför databaser?

Databaser - Design och programmering. Kursöversikt. Exempel: telefonbok. Varför databaser? Databaser Design och programmering! Diverse praktiskt! Varför databaser?! Vad är en databas?! Andra viktiga begrepp Kursöversikt! Teori och praktik! Samläsning! Olika projekt! Examination (tenta, labb

Läs mer

Databaser - Design och programmering

Databaser - Design och programmering Databaser - Design och programmering Eva L. Ragnemalm, IDA (eva.ragnemalm@liu.se) Fö 1; introduktion Kursen, diverse praktiskt Varför databaser? Vad är en databas? Andra viktiga begrepp 2 Kursöversikt

Läs mer

Ett databashanteringssystem (DBHS) skiljer sig från andra programmeringssystem bl.a.

Ett databashanteringssystem (DBHS) skiljer sig från andra programmeringssystem bl.a. 1 Kap. 1 INTRODUKTION Ett databashanteringssystem (DBHS) skiljer sig från andra programmeringssystem bl.a. 1. Möjligheten att hantera persistenta data 2. Möjligheten att accessera stora mängder av data

Läs mer

732G16: Databaser - Design och programmering

732G16: Databaser - Design och programmering 732G16: Databaser - Design och programmering Eva L. Ragnemalm, IDA (eva.ragnemalm@liu.se) Johan Falkenjack, IDA (johan.falkenjack@liu.se) Fö 1 Introduktion 2 Kursöversikt Teori och praktik Kursbok, lektionshäfte,

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

Kursens mål. Databasteknik TDDB48. Lärare. Kursorganisation. Laborationsinformation. Inlämning av laborationer. Responsible: 2000-01-26

Kursens mål. Databasteknik TDDB48. Lärare. Kursorganisation. Laborationsinformation. Inlämning av laborationer. Responsible: 2000-01-26 Kursens mål Databasteknik TDDB48 http://www.ida.liu.se/~tddb48 Förstå de koncept som ligger bakom databaser och databasorganisation Designa och bygga datamodeller (effektiva filstrukturer) Använda databasfrågespråk

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

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

729G28 Webprogrammering och databaser. Föreläsning 1: Diverse praktiskt om kursen Webprogrammering Databaser, terminologi

729G28 Webprogrammering och databaser. Föreläsning 1: Diverse praktiskt om kursen Webprogrammering Databaser, terminologi 729G28 Webprogrammering och databaser Föreläsning 1: Diverse praktiskt om kursen Webprogrammering Databaser, terminologi 2 Personal Examinator, Ansvarig databasteori: Eva Ragnemalm, eva.ragnemalm@liu.se

Läs mer

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

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

Läs mer

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

Webprogrammering och databaser. 729G28 Webprogrammering och databaser. Kursöversikt. Praktisk info. Webprogrammering. Ändringar mot förra året

Webprogrammering och databaser. 729G28 Webprogrammering och databaser. Kursöversikt. Praktisk info. Webprogrammering. Ändringar mot förra året 729G28 Webprogrammering och databaser Föreläsning 1: Diverse praktiskt om kursen Webprogrammering Databaser, terminogi Webprogrammering och databaser Personal: Examinator Jalal Maleki, jalma@ida.liu.se

Läs mer

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

! Webprogrammering. ! Databasteori och praktik. ! Fö, le, la + projekt. ! Examination (tenta, dugga + labb, ! Studera användarna och deras problem Webprogrammering och databaser! Idag: Diverse praktiskt om kursen Webprogrammering Databaser, terminogi Start på ER-modellering! Webprogrammering Kursöversikt! Databasteori och praktik! Fö, le, la + projekt!

Läs mer

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

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

Läs mer

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

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

Läs mer

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

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

TDDD12 och TDDD46 Databasteknik. Lena Strömbäck

TDDD12 och TDDD46 Databasteknik. Lena Strömbäck TDDD12 och TDDD46 Databasteknik Lena Strömbäck http://www.ida.liu.se/~tddd12 http://www.ida.liu.se/~tddd46 Vad är en databas? Ett sätt att lagra data på elektroniskt format. Används i dagliga livet, banker,

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

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

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

Läs mer

Föreläsning 2: Översikt över ett databassystem

Föreläsning 2: Översikt över ett databassystem Föreläsning 2: Översikt över ett databassystem DVA234 Databaser IDT Akademin för Innovation, Design och Teknik Innehåll Föreläsningens mål: Att ge en överblick över databassystemets arkitektur, delar och

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

Tentamen DATABASTEKNIK - 1DL116, 1MB025

Tentamen DATABASTEKNIK - 1DL116, 1MB025 Uppsala universitet Institutionen för informationsteknologi Kjell Orsborn, Tore Risch Tentamen 2004-08-16 DATABASTEKNIK - 1DL116, 1MB025 Datum...Måndagen den 16 Augusti, 2004 Tid...14:00-19:00 Jourhavande

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

Databaser design och programmering. Fö 2: Design processen, ER-modellering

Databaser design och programmering. Fö 2: Design processen, ER-modellering Databaser design och programmering Fö 2: Design processen, ER-modellering 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign

Läs mer

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

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

Läs mer

1. Kvalitetsbegreppet 2. Kommunikation 4. Olika typer av datalagring. 5. Databas 6. DBMS 7. Molntjänster 8. Tabeller. 10. SQL 11.

1. Kvalitetsbegreppet 2. Kommunikation 4. Olika typer av datalagring. 5. Databas 6. DBMS 7. Molntjänster 8. Tabeller. 10. SQL 11. FÖ 2: Databaskursen 1. Kvalitetsbegreppet 2. Kommunikation 3. Olika typer av data 4. Olika typer av datalagring 5. Databas 6. DBMS 7. Molntjänster 8. Tabeller 9. ANSI-SPARC 10. SQL 11. Oracle Arkitektur

Läs mer

Databaser design och programmering. Design processen ER- modellering

Databaser design och programmering. Design processen ER- modellering Databaser design och programmering Design processen ER- modellering 2 Programutveckling Förstudie, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign Databasdesign

Läs mer

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen Webprogrammering och databaser Konceptuell datamodellering med ER-modellen 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign

Läs mer

Tentamen DATABASTEKNIK - 1DL116

Tentamen DATABASTEKNIK - 1DL116 Uppsala universitet Institutionen för informationsteknologi Kjell Orsborn Tentamen 2003-05-20 DATABASTEKNIK - 1DL116 Datum...Tisdagen den 20 Maj, 2003 Tid...12:00-17:00 Jourhavande lärare...kjell Orsborn,

Läs mer

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

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

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen Webprogrammering och databaser Konceptuell datamodellering med ER-modellen 2 Programutveckling Interaktionsdesign, behovsanalys Programdesign, databasdesign Implementation 3 Programdesign, databasdesign

Läs mer

TER3. Försättsblad till skriftlig tentamen vid Linköpings universitet G28 TEN1 Webprogrammering och databaser Tentamen IDA 1 (7)

TER3. Försättsblad till skriftlig tentamen vid Linköpings universitet G28 TEN1 Webprogrammering och databaser Tentamen IDA 1 (7) 1 (7) Försättsblad till skriftlig tentamen vid Linköpings universitet Datum för tentamen Sal (1) Tid Kurskod Provkod Kursnamn/benämning Provnamn/benämning Institution Antal uppgifter som ingår i tentamen

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

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

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

Webservice & ERP-Integration Rapport

Webservice & ERP-Integration Rapport Webservice & ERP-Integration Rapport Hardwood AB Mustafa Lazem 930916-9713 Jonas Ahrne 920325-0379 Hasan Nerjovaj 940130-7195 Stefan Liden 920628-0639 2014-05-18 Innehåll Bakgrund... 2 Syfte... 2 Projektbeskrivning...

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

ÖVERVAKNING AV SQL SERVER

ÖVERVAKNING AV SQL SERVER ÖVERVAKNING AV SQL SERVER Hantering resurser för samtidiga användare Övervakning av SQL Servers aktiviteter Hantering av blockerade processer Användning av SQL Profiler för att hitta besvärliga frågor

Läs mer

Relationsalgebra. Varför behöver jag lära mig relationsalgebra?!

Relationsalgebra. Varför behöver jag lära mig relationsalgebra?! Relationsalgebra 1 Varför behöver jag lära mig relationsalgebra?! Relationsmodellen är den datamodell som används i de flesta moderna databassystemen Data beskrivs och lagras som relationer, dvs. som ett

Läs mer

Ny skalbar och öppen OLAP-teknologi, SAS OLAP server

Ny skalbar och öppen OLAP-teknologi, SAS OLAP server Ny skalbar och öppen OLAP-teknologi, SAS OLAP server Frida Säfström Seniorkonsult Copyright 2003, SAS Institute Inc. All rights reserved. Agenda Arkitekturen Lagring Skalbarhet Säkerhet Olika typer av

Läs mer

Databaser. Vad du ska lära dig: Ordlista

Databaser. Vad du ska lära dig: Ordlista Databaser Vad du ska lära dig: Ordlista 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

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

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

Tentamenskod: Tentamensdatum: Tid: 14:00-19:00. Inga hjälpmedel är tillåtna Databasteknik 7,5 högskolepoäng Provmoment: Ladokkod: Tentamen ges för: Tentamen NDA01G Öppen för alla Tentamenskod: Tentamensdatum: 2017-11-02 Tid: 14:00-19:00 Hjälpmedel: Inga hjälpmedel är tillåtna

Läs mer

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

Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen.

Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen. Entity Framework Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen. Vem är jag? Mitt namn är Björn Jönsson och jobbar på Tahoe Solutions, ni når mig via mail: bjorn.jonsson@tahoesolutions.se

Läs mer

Arbeta med databas. Översikt. Lektion 1: Arbeta med Entity Data Models. Arbeta med Entity Data Models. LINQ (Language Integrated Query).

Arbeta med databas. Översikt. Lektion 1: Arbeta med Entity Data Models. Arbeta med Entity Data Models. LINQ (Language Integrated Query). Arbeta med databas Översikt Arbeta med Entity Data Models. LINQ (Language Integrated Query). Lektion 1: Arbeta med Entity Data Models Introduktion till ADO.NET Entity Framework. Stöd i ADO.NET Entity Framework.

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

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

04/11/14. Välkomna till kursen: Databasteknik och informationssystem DD1370. Kursanvarig. Dagens föreläsning. Vad är en Databas?

04/11/14. Välkomna till kursen: Databasteknik och informationssystem DD1370. Kursanvarig. Dagens föreläsning. Vad är en Databas? Kursanvarig Välkomna till kursen: Databasteknik och informationssystem DD1370 Petter Ögren Petter Ögren petter@kth.se Kontor: Teknikringen 14 Kontakt: - Kurswebben (något många vill veta) - Email (något

Läs mer

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

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

Läs mer

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

Tentamen ISGB01, ISGB24. Databasdesign 7,5 Poäng Tentamen ISGB01, ISGB24 Databasdesign 7,5 Poäng Datum: 2016-09-30 Tid: 08.15-13.15 Lärare: Peter Bellström, Katarina Groth, Johan Högberg Tentamen är på 40 poäng. Gränsen för Godkänd (G) är 20 poäng. Gränsen

Läs mer

Disposition. 1. Kopplingen mellan Processanalys (DFDdiagram) 2. Treskikts Client-Server arkitektur (Fig 1.8) 3. Data layer

Disposition. 1. Kopplingen mellan Processanalys (DFDdiagram) 2. Treskikts Client-Server arkitektur (Fig 1.8) 3. Data layer Disposition 1. Kopplingen mellan Processanalys (DFDdiagram) och konceptuell modellering (ERdiagram) (se kap 4) 2. Treskikts Client-Server arkitektur (Fig 1.8) 3. Data layer Databasen (Kap 2) Den relationella

Läs mer

Sample exam questions. Database exam TIG058

Sample exam questions. Database exam TIG058 Sample exam questions Database exam TIG058 Distribution of topics covered 1. Grundläggande om Databaser och Databashanterare (5p) 2. SQLite-databashanteraren (5p) 3. SQL - SELECT, ORDER BY, WHERE, LIMIT

Läs mer

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

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

Läs mer

Vinjett 1: Relationsdatabas för effektivaste vägen

Vinjett 1: Relationsdatabas för effektivaste vägen Vinjetter Inledning I denna kurs kommer vi att utgå från transporter som tema för vinjetterna. Fokus för kursen blir vilken information som behöver vara tillgänglig och hur denna skulle kunna lagras. Man

Läs mer

Mål med lektionen! Repetera och befästa kunskaperna.

Mål med lektionen! Repetera och befästa kunskaperna. Entity Framework Mål med lektionen! Repetera och befästa kunskaperna. Vad lektionen omfattar Repetera och gå igenom kursen lite snabbt. Vilka problem vill vi lösa? Vi arbetar med Webbapplikationer Vi kommer

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

INFC20, Informatik: Avancerade databassystem, 7,5 högskolepoäng Informatics: Advanced Database Systems, 7.5 credits Grundnivå / First Cycle

INFC20, Informatik: Avancerade databassystem, 7,5 högskolepoäng Informatics: Advanced Database Systems, 7.5 credits Grundnivå / First Cycle Ekonomihögskolan INFC20, Informatik: Avancerade databassystem, 7,5 högskolepoäng Informatics: Advanced Database Systems, 7.5 credits Grundnivå / First Cycle Fastställande Kursplanen är en historisk, äldre

Läs mer

DVA234 Databaser. Dag Nyström, Introduktion till databaser och MS SQL Server

DVA234 Databaser. Dag Nyström, Introduktion till databaser och MS SQL Server DVA234 Databaser 1(6) Kurs: DVA234 Databaser Version: 4, uppdaterad 2016-03-21 Utvecklad av: Dag Nyström, dag.nystrom@mdh.se Laboration 1: Introduktion till databaser och MS SQL Server I den här laborationen

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

Databasföreläsning. Del 2 lagrade procedurer, vyer och transaktioner

Databasföreläsning. Del 2 lagrade procedurer, vyer och transaktioner Databasföreläsning Del 2 lagrade procedurer, vyer och transaktioner Lagrade procedurer (Stored procedures) En stored procedure är en procedur (funktion) lagrad i en databas, och exekveras direkt på databasservern

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

Viktigt! Glöm inte att skriva Tentamenskod på alla blad du lämnar in.

Viktigt! Glöm inte att skriva Tentamenskod på alla blad du lämnar in. Databaser och Affärssystem Provmoment: Ladokkod: Tentamen ges för: 7,5 högskolepoäng Tentamen 41F08A Itek14 TentamensKod: Tentamensdatum: Tid: 2015-10-29 14-17 (3 timmar) Hjälpmedel: Inga hjälpmedel är

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

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

Programdesign, databasdesign. Databaser - Design och programmering. Funktioner. Relationsmodellen. Relation = generaliserad funktion. Databaser Design och programmering Relationsmodellen definitioner ER-modell -> relationsmodell nycklar, olika varianter Programdesign, databasdesign Databasdesign Konceptuell design Förstudie, behovsanalys

Läs mer

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

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

Läs mer

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

Databaser och databasdesign, 7,5 hp

Databaser och databasdesign, 7,5 hp Kursguide Databaser och databasdesign, 7,5 hp Webbdesign LP2 2011 Databaser och databasdesign, 7,5 hp Välkommen till kursen databaser och databasdesign. I kursguiden hittar du kursplan, litteraturlista,

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

DATALAGRING. Ämnets syfte

DATALAGRING. Ämnets syfte DATALAGRING Ämnet datalagring behandlar hur lagring av data görs på ett strukturerat sätt för att datorprogram ska komma åt data på ett effektivt sätt. Lagringen kan ske med hjälp av databashanterare av

Läs mer

Tentamen för DD1370 Databasteknik och informationssystem

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

Läs mer

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

Databaser - Design och programmering. Relationsmodellen. Relationer - som tabeller. Relationer som tabeller. Alternativa notationer: Relationsschema Databaser Design och programmering Relationsmodellen definitioner ER-modell -> relationsmodell nycklar, olika varianter Relationsmodellen Introducerades av Edward Codd 970 Mycket vanlig Stödjer kraftfulla

Läs mer

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 TDDB77 Databaser och Bioinformatik 15 mars 2002, kl 14-18

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

Läs mer

Vyer, Prepared Statements, Triggers

Vyer, Prepared Statements, Triggers Vyer, Prepared Statements, Triggers Vyer En vy är en virtuell tabell, som ej behöver existera fysiskt, en namngiven fråga En vy är inte snabbare än SELECT satsen som definierar vyn Det är möjligt att ställa

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

Vad är en databas? Databasutveckling Med MySQL/MariaDB

Vad är en databas? Databasutveckling Med MySQL/MariaDB Databasutveckling Med MySQL/MariaDB Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Vad är en databas? Från Wikipedia En databas (tidigare databank) är en samling information som är organiserad

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

Tentamen för DD1370 Databasteknik och informationssystem

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

Läs mer

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

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

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

Databaser design och programmering Säkerhetsproblem Databashanteraren SQL-injektion

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

Läs mer

Programmering B med Visual C++ 2008

Programmering B med Visual C++ 2008 Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,

Läs mer

PHP-presentation Dataföreningens Open Source-nätverk

PHP-presentation Dataföreningens Open Source-nätverk PHP-presentation Dataföreningens Open Source-nätverk Netera AB Jimmy Furland jimmy@netera.se Björn Hansson hansson@netera.se Introduktion HTML-inbäddat webbprogrammeringsspråk Står för PHP Hypertext Preprocessor

Läs mer

INFC20, Informatik: Avancerade databassystem, 7,5 högskolepoäng Informatics: Advanced Database Systems, 7.5 credits Grundnivå / First Cycle

INFC20, Informatik: Avancerade databassystem, 7,5 högskolepoäng Informatics: Advanced Database Systems, 7.5 credits Grundnivå / First Cycle Ekonomihögskolan INFC20, Informatik: Avancerade databassystem, 7,5 högskolepoäng Informatics: Advanced Database Systems, 7.5 credits Grundnivå / First Cycle Fastställande Kursplanen är fastställd av Institutionsstyrelsen

Läs mer

Analys och utveckling av en metod för distribution av data

Analys och utveckling av en metod för distribution av data Institutionen för kommunikation och information Examensarbete i datavetenskap 10p C-nivå Vårterminen 2006 Analys och utveckling av en metod för distribution av data Göran Grahn HS-IKI-EA-06-609 Analys

Läs mer

ER-Diagram. Databasutveckling Diagram

ER-Diagram. Databasutveckling Diagram Databasutveckling Diagram Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se ER-Diagram En vanlig konceptuell datamodell är den så kallade ER-modellen. "ER" står för "Entity-Relationship",

Läs mer

Dagens agenda. Lagring & berarbetning av data. Filer och filformat Metadata Komprimering Kryptering Olika typer av data Filsystem Databaser

Dagens agenda. Lagring & berarbetning av data. Filer och filformat Metadata Komprimering Kryptering Olika typer av data Filsystem Databaser Lagring & berarbetning av data 1IK426 Introduktion till informationsteknik Patrik Brandt Filer och filformat Metadata Komprimering Kryptering Olika typer av data Filsystem Databaser Dagens agenda Filer

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

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

Databasutveckling Microsoft T-SQL - Fortsättning. Funktioner GROUP BY HAVING Skapa databaser Skapa tabeller Lite om transaktioshantering

Databasutveckling Microsoft T-SQL - Fortsättning. Funktioner GROUP BY HAVING Skapa databaser Skapa tabeller Lite om transaktioshantering Databasutveckling Microsoft T-SQL - Fortsättning Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Agenda Funktioner GROUP BY HAVING Skapa databaser Skapa tabeller Lite om transaktioshantering

Läs mer

Innehåll MySQL Intro. Allmänt om Lagrade Procedurer Enkel utformning Skapa en lagrad procedur Använda parameter som indata

Innehåll MySQL Intro. Allmänt om Lagrade Procedurer Enkel utformning Skapa en lagrad procedur Använda parameter som indata Innehåll MySQL Intro Allmänt om Lagrade Procedurer Enkel utformning Skapa en lagrad procedur Använda parameter som indata 1 Lagrad procedur / Stored Procedure Lagrad procedur har många namn, förkortningen

Läs mer

Objektorientering. Grunderna i OO

Objektorientering. Grunderna i OO Objektorientering Grunderna i OO 1 Systemutveckling Tre systemnivåer: Verksamhet Informationssystem Datasystem Huvuduppgifterna i ett systemutvecklingsarbete: Verksamhetsanalys Informationsbehovsanalys

Läs mer

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo Objektorienterade språk Historik Simula 67 Smalltalk 80 Procedurorienterad programmering Subprogram Programbibliotek Dataorienterad programmering Abstrakta datatyper Objektbaserade språk, föregångare till

Läs mer