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

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

Databaser - Design och programmering

732G16: Databaser - Design och programmering

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

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

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

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

Databaser design och programmering. Design processen ER- modellering

VAD GÖR DU / VEM ÄR DU?

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

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

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

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

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

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

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

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

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

Webbprogrammering, grundkurs 725G54

Tentamen DATABASTEKNIK - 1DL116

VAD GÖR DU / VEM ÄR DU?

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

TDDD12 och TDDD46 Databasteknik. Lena Strömbäck

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

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

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

Databaser och Datamodellering Foreläsning IV

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

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

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

Karlstads Universitet, Datavetenskap 1

Tentamen 4,5 hp Delkurs: Databaser och databasdesign 7,5hp Tentander: VIP2, MMD2, INF 31-60, ASP

Inga hjälpmedel är tillåtna

Relationsmodellen och syntetisk databasdesign

Sample exam questions. Database exam TIG058

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

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

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

1. Treskiktsarkitektur 2. Applika1onsprogramvara 3. Teknisk programvara. Kapitel 6 sid

Vad handlar kursen om? Algoritmer och datastrukturer. Vad handlar kursen om? Vad handlar kursen om?

Design och underhåll av databaser

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

Föreläsning 3 Transformation från konceptuell datamodell till relationsschema ( Syntetisk databasdesign ) Vad är ett databashanteringssystem?

Databaser Kapitel 1: Introduktion!

Innehåll. MySQL Grundkurs

Prova på-laboration i SQL

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

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

Databasutveckling Introduktion till SQL och TSQL

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

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

Universitetet: ER-diagram

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

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

Analytisk relationsdatabasdesign

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

1. SQL DML (Data Manipulation Language) 2. Lägga till data. 4. Uppdatera data 5. Aktivera default value 6. Hantera datum 7.

Informationssystem och Databasteknik

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

Introduktion till MySQL

Databasteknik för D1, SDU1 m fl

Klientprogrammering mot databaser

Genomgång av tentamen. Databasteknik ITHS 4/3 2016

Lösningsförslag, tentamen i Databaser

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

Vad är en databas? Databasutveckling Med MySQL/MariaDB

Databasteknik för D1, SDU1 m fl

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

INTRODUKTION TILL JDBC

Introduktion till Datalogi DD1339. Föreläsning 1 8 sept 2014

Databasspråket SQL - online.

Starta MySQL Query Browser

Informa5onsmodellering

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

1. SQL DDL (Data Definition Language) 2. Skapa tabell

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?

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

Databaser Design och programmering. Fysisk design av databasen att ta hänsyn till implementationsaspekter: minnesteknik filstrukturer indexering

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

TENTAMEN DATABASKUNSKAP ITEK12

Databasspråket SQL - online.

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

Databaser. Vad du ska lära dig: Ordlista

Innehåll. Föreläsning 3. javax.naming.context. javax.sql.datasource. Vad är JDBC? Java Naming and Directory Interface(JNDI) Viktigaste metoder:

Skapa exempeldatabasen

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

Databasspråket SQL - online.

IT i organisationer och databasteknik

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

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

1.Lär känna MS SQL Observera. Tips. Förberedelse

Laboration 2, MS SQL. Observera. Tips. Förberedelse. Genomförande

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

MySQL - testmiljöer på minuter. Thomas Johansson IT-avdelningen

Tentamen Databasteknik

Transkript:

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 + projekt)! Ändringar i schemat Varför databaser?! Varför ni?! Varför överhuvudtaget? Vaddå enklare? Exempel: telefonbok! I Java: class person implements serializable { private String name: private int telnr;... public int gettelnr()...... for (i=0; i<plist.size() ;i++)... int tnr= gettelnr();

Telefonbok, forts Telefonbok, forts! Med databasspråket SQL: Skapa databasen create table person ( name varchar(20), telnr int);! Lägga in data: insert into person values ( Anna, 234456)! Söka Annas telefonnummer: select telnr from person where namn='anna';! SQL: För att ändra: alter table person modify (telnr varchar(12));! För snabbare sökning: index create index nrindex on person(telnr);! Logiskt och fysiskt dataoberoende Tillgänglighet, säkerhet Databas Namn Adress Telefon Betyg Klar Anna Andersson Studentv 23 1234456 G J Oskar Oskarsson Rydsv 987 77656565 - N Namn Adress Telefon Anna Andersson Studentv 23 1234456 Oskar Oskarsson Rydsv 987 77656565! En databas är en samling data som: Har med varandra att göra Representerar (modellerar) en del av verkligheten för ett specifikt ändamål Är beständig (finns kvar) Har en strikt struktur som beskrivs i ett schema Inte innehåller motsägelser Lagras på dator

Databashanteringssystem DBHS (DBMS)! Ett programsystem som Hanterar flera databaser enligt en datamodell med hjälp av ett databasspråk Kan anropas från applikationsprogram Hantera databaser! Skapa nya databaser! Manipulera data (lägga till, ta bort, läsa ut)! Kontrollera åtkomst enskilt och samtidigt! Återställning vid krasch! Kontrollera korrekthet (integritet) Hantera databasen: Databasintegritet! Informationen i en databas måste vara korrekt! Rätt typ och rätt struktur, ett av en mängd Värden som måste fyllas i Överensstämmelse med andra värden! Korrekthetsvillkor i db: integritetsvillkor! Formuleras av db-administratören mha olika mekanismer i DBHS Datamodell! Hur vi ser världen! Olika nivåer: Konceptuell (begreppsmässig) modell Representationsmodell (implementationsmodell) Fysisk datamodell

Datamodell: Representationsmodeller! Relationsmodellen! Hierarkisk modell! Nätverksbaserad Student Datamodell: Relationsmodellen Epost Namn Adress Kurs Annan123 Anna Andersson Rydsv 234 729G68 Ollol345 Olle Olsson Storgatan 1 732G16! Objektorienterad Kurs Kurskod Namn Läsår Poäng 729G68 Databaser 07/08 7.5 732G16 Databaser 07/08 7.5 TTIT03 Introduktion till PBL 07/08 2 Datamodell: Instans och schema! Databasen och dess beskrivning! Instans = den samling data som finns i databasen vid en viss tidpunkt.! Schema=beskrivning av databasen enligt någon datamodell. Förändras sällan.! Instansen måste följa schemat. Datamodell: Metadata data om data! Schemat är metadata! Information om hur och var data lagras! Struktur, organisation! Tillgänglighet! Användningsstatistik! Schemat lagras i databasen

Datamodell: Metadata exempel på användning! Användare: Vilken information finns i databasen Kostnaden för att ta fram info Y! Databasadministratören: Hur mycket utnyttjas olika delar? Vilka svarstider har vanliga frågor? Har någon försökt knäcka säkerheten? Behövs optimering? Databasspråk! Klass av språk som används mot databaser Databeskrivningsspråk (DDL) Datamanipuleringsspråk (DML) Värdspråk Databasspråk: Exempel: sql! Create table person (pnr varchar(10) not null, namn varchar(30), adress varchar (30), primary key(pnr))! Update person set adress 'Studentvägen 10' where pnr='7012120123'! Select namn from person where pnr='7012120123' Applikationsprogram! Specialiserade program som gör användningen av databasen enklare för slutanvändare! Specifik användargrupp och specifikt användningsområde! Ex resebyråns flygplansbokning

Fördelar med databasteknik! Självbeskrivnande! Dataoberoende! Stöder multipla vyer Nackdelar med databasteknik! DBMS tar stor plats! Overhead ger längre svarstider! Ibland krångligt att lära sig hantera! Säkerhetssystem (integritet, tillgänglighet, loggning)! Stöder och reglerar samtidig användning! Motverkar redundans När ska man inte använda DBMS Summering! Små mängder data! Enstaka användning av data som sedan blir föråldrat/förkastat! Enkel användning som aldrig ändras! Om systemet måste ta liten plats! Om systemet måste garantera korta svarstider (processövervakning etc)! Databas! databashanterare! databasintegritet! datamodell (3 typer) ER-modell, relationsmodell! Instans vs schema, Metadata! Databasspråk, DDL, DML, SQL! Applikationsprogram