VAD GÖR DU / VEM ÄR DU?



Relevanta dokument
VAD GÖR DU / VEM ÄR DU?

Databaser och Datamodellering Foreläsning IV

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

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

Introduktion till MySQL

Tabeller och kolumner SQL. Lägga till en ny post. Lägga till en ny post

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

Innehåll. MySQL Grundkurs

SQL. Structured Query Language. Frågespråk för att används för. Kommandon. data åtkomst data manipulation

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

Databaser - Design och programmering

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

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

732G16: Databaser - Design och programmering

Webbprogrammering, grundkurs 725G54

Starta MySQL Query Browser

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

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

WCMS-15, Webbutvecklare CMS

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

Prova på-laboration i SQL

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

Databasutveckling Introduktion till SQL och TSQL

Sample exam questions. Database exam TIG058

Övningar i SQL. SQLAccess.doc Ove Lundgren

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.

Ett arbetsexempel Faktureringsrutin

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

Vad är en databas? Databasutveckling Med MySQL/MariaDB

! 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

Databasapplikationen HYR AKS. Vers 1.0 6, AKS har framtagits av ApplData AB på uppdrag av TillSaluGrejorAB

Stored procedure i ASP.NET

1DV405 - Databasteknik. Kursintroduktion. Så här är kursen planerad.

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

Uppstart Inloggning SSMS Skapa Databas Skapa Tabell Skapa Diagram, Fk, RI Hantering av Index, Pk, Fk, Ix Constraints Beräknande fält Några funktioner

Vad är SQL? Introduktion till SQL

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

Databaser. Vad du ska lära dig: Ordlista

Det är fullt tillåtet att göra laborationen innan laborationstillfället.

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

1DV405 - Databasteknik. Kursintroduktion. Så här är kursen planerad.

Föreläsning 6 Databaser och säkerhet

Modul DB1-1 Databasmodellering

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

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

Projekt Foreläsning VI

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

1DV423 Databas med Administration

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

3. Dynamiska webbplatser, 20 Yhp (4 v)

Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10

Avancerade Webbteknologier

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

Mitthögskolan ITM Telefon Access. Laborationskompendium för grunderna i databasen Microsoft Access. Detta exemplar tillhör:

version 2.5 CONTENTO SVENSKA AB Introduktion till Kursbyggarverktyg

Structured Query Language (SQL)

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

Bokningslista Kurssekreterare/Kursansvarig

Webbprogrammering, grundkurs 725G54

Institutionen för Tillämpad fysik och elektronik Stefan Berglund och Per Kvarnbrink. Laboration: Flerskiktade applikationer

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

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

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

Stored procedure i ASP.NET

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

Current selection does not contain a unique column. Grid edit, checkbox, Edit, Copy and Delete features are not available.

Introduktion MySQL och MariaDB

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

1 Skapa Tabell Skapa Relationer Redigera Relationer Redigera Fält i Tabell Lägga till Poster i Tabell...

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

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

Programinformation för Webb, internet och programvaruteknik, 120 högskolepoäng

Webbservrar, severskript & webbproduktion

Design och underhåll av databaser

Nya webbservern Dvwebb.mah.se

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

Scala Doc SQL Installation

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

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

Elektronisk publicering TNMK30

Installationsanvisningar

Webbprogrammering - 725G54 PHP. Foreläsning II

Webbprogrammering TDDD52

Databaser och SQL - en kort introduktion

Kapitel 4 Arkivmenyn Innehåll

TDDD52 Databas. Databas. Databas 1/3/13

Webbprogrammering. Sahand Sadjadee

TDDD12 och TDDD46 Databasteknik. Lena Strömbäck

Konceptuella datamodeller

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

Databaser och databasdesign, 7,5 hp

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

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

DATALAGRING. Ämnets syfte

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Slutrapport för JMDB.COM. Johan Wibjer

Grunderna för relationsmodellen!

Transkript:

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 ta greppet om begreppen 1

VAD GÖR DU / VEM ÄR DU? Förfrågan webbsideanrop Klienter Webb server svar svar Förfrågan SQL anrop Databasserver data i retur SQL anrop data i retur Applikations server Extern databasserver Administratörer Nätansvariga IT-Tekniker Sammanställning o förädling av data i databaser. Underhåll av databaser, komprimering, backup, konto Komplettering i befintliga databaser Kommunikation med externa databaser Skapa nya databaser Uppgradering programvara ex SQL2008 -> SQL2012 Migrering av databaser ex från MySQL - > MS SQL 2

VAD GÖR DU / VEM ÄR DU? klient Användargränssnittslager XHTML, javascript, CSS, etc. Förfrågan webbsideanrop svar Presentationslogiklager ASP.NET (.aspx- och code behind -filer) Webb server Affärslogiklager C#-klasser med bl.a. validering av data (.cs-filer) SQL anrop data i retur Dataåtkomstlager C#-klasser med ADO.NET (.cs-filer) databasserver Datalager Databas med tabeller, vyer, lagrade procedurer etc 3

VARFÖR EN DATABAS Lägger du ett inlägg i en Blogg sparas det i en databas. När du bokar en biobiljett sparas det i en databas. Köper du en bil sparas det i en databas. Hyr du en video sparas det i en databas. I en webbapplikation ökar dynamiken tillsammans med en databas. När du loggar in på skolan kontrolleras dina uppgifter mot en databas. När du registrerar dig på en kurs lagras (sparas) dina data i en databas för att komma ihåg dig. När du genomför examination i våra kurser sparas uppgifterna i en databas, LADOK. 4

DATABASER Relationsdatabas vanligast (c:a 80% av marknaden) MS SQL o MySQL är relationsdatabas NOSQL databas senast. Används ex i twitter o facebook Objektdatabas relativ nytt Har inte fått ngt vidare gehör Hierarkisk databas äldre Nätverksdatabas äldre - NOSQL är en variant 5

VAD ÄR EN DATABAS (1 AV 4) En relationsdatabas består av en eller flera tabeller. Minst en tabell som är strikt ordnad i rader och kolumner. 6

VAD ÄR EN DATABAS (2 AV 4) Vanligtvis är det flera tabeller som är relaterade (kopplade) till varandra och bildar en samling av data som hör ihop och skapar en verklighet. Tänk dig ett medlemsregister. Det avspeglar en verklighet om en medlem, dennes tillhörighet i föreningen och vilka betalningar medlemmen gjort. En person är medlem i föreningen Personen är medlem i flera sektioner Och har betalt flera gånger Datamodell Det finns en relation mellan Medlem och Sektion och en relation mellan Medlem och Avgifter. 7

VAD ÄR EN DATABAS (3 AV 4) En databas består av en eller flera tabeller. En tabell består av en eller flera poster. En post består av ett eller flera fält = data Ett fält innehåller ett eller flera tecken Ett tecken består av 1 byte = 8 bitar (normalt) Fältnamn Columnname Fältet heter Ort Post Record Varje rad är en egen post Fältet Mednr är ett nyckelfält keycolumn. Unikt värde för varje post. Fält Column adress gäller för varje post i tabellen Mednr är numerisk data (N) Adress är alfanumerisk data (C) Vad är Postnr av för datatyp? 8

VAD ÄR EN DATABAS (4 AV 4) Så här kan det se ut i MS SQL Server med tre tabeller öppna. 9

DATABASHANTERARE DBHS DataBas Hanterings System DBMS DataBase Management System En databashanterare är en applikation som har till uppgift att lagra och hantera data. I en databas finns en motor som sköter arbetet med att organisera data och den hjälper oss att söka efter data på ett smart och snabbt sätt. 10

EN DATABAS, FLERA APPLIKATIONER Webbgränssnitt Användar applikation Användarapplikation Administreringsgränssnitt Databas Vad händer om olika applikationer försöker ändra samma data samtidigt? 11

FÖRDELAR DATABAS Kraftfullt Avancerade operationer kan utföras på ett enkelt sätt. Hänsyn är tagen till prestanda. Enkelt Frågor kan med enkel syntax ställas mot databashanteraren. Flexibelt Olika frågor kan enkelt ställas mot databashanteraren utan att denna eller databasen behöver struktureras om. Det är enkelt att modifiera databasens struktur. 12

DATAMODELLERING VAD ÄR? 1 Affärsverksamheten analyseras. 2 Datamodeller skapas Som underlag för analysen finns : Dokument i verksamheten Processer i verksamheten Verksamhetens deltagare som beskriver hur det fungerar/ska fungera. 3 Ett underlag finns för att skapa databasen. En databas blir resultatet 13

DATAMODELLERING VAD ÄR? Vad handlar datamodellering om Antag att vi vill ha en databas för hålla ordning på vilka som registrerat sig på vilka kurser. Namn Adress Klass Kurs Anders Storg.. TC DTT298 Stina Ringv.. Mi1 DTT298 Olle Eksti.. ITT2 DTT298 Vi har en tabell med oändligt många rader. För varje person blir det en ny rad i tabellen. Namn Adress Klass Kurs Anders Storg TC DTT298 Stina Ringv Mi1 DTT298 Olle Ekstig ITT2 DTT298 Anders Storg TC IFO278 Stina Ringv Mi1 IFO212 Olle Ekstig ITT2 IFO120 Vi fyller på tabellen eftersom Anders o Stina går flera kurser. Men då får vi Stina på många rader. Inte bra. Samma data om igen. Namn Adress Klass Kurs1 Kurs2 Kurs3 Anders Storg TC DTT298 IFO120 Stina Ringv Mi1 DTT298 IFO212 Olle Ekstig ITT2 DTT298 IFO120 DTT293 Då lägger vi in flera kolumner med kurserna men hur många kolumner? Namn Adress Klass Anders Stor.. TC Stina Ringv.. Mi1 Olle Eksti.. ITT2 Id Namn Adress Klass 1 Anders Stor.. TC 2 Stina Ringv.. Mi1 3 Olle Eksti.. ITT2 Namn Kurs Anders DTT298 Anders IFO120 Stina DTT298 Stina IFO212 Olle DTT298 Olle IFO120 Olle DTT293 Om vi delar det så här - är det bättre? Vi kan nu se vilka kurser Stina är anmäld till. Men vad händer om det kommer en person till som heter Stina? Eller om Stina byter namn? Detta är en lösning. Id Kurs 1 DTT298 1 IFO120 2 DTT298 2 IFO212 3 DTT298 3 IFO120 3 DTT293 Det är datamodellering. Att komma fram till vilka tabeller vi ska ha, hur de ska vara utformade och hur de relaterar till varandra. 14

DATAMODELLERING VARFÖR För att man ska blir klar över vad som ska ingå i databasen. En datamodell beskriver sambanden mellan olika delar i en verksamhet och den beskriver exakt hur databasen ska se ut. Det är viktigt att vi utvecklar en datamodell som är korrekt och innehåller de data som verksamheten kräver. Det finns stor risk att databasen inte håller för våra önskemål eller belastningar om vi inte modellerat databasen. Den KRASCHAR. Telefon Telefontyp Överordnad Befattnings typ Personal Förmån Förmånstyp Deltagare Bokad Resurs Projekt Projekttyp 15

DATAMODELLERING EN UTVECKLINGSPROCESS 16

SYSTEMUTVECKLING Vid utveckling av olika typer av system försöker man använda sig av standardiserade modeller. Anledningen till detta är att: Det är ofta många personer inblandade därför att det behövs olika kompetenser både inom och utanför verksamheten Man vill tala samma språk vid utvecklingen så inga missförstånd uppstår Man vill använda sig av en beprövad modell, använda en beprövad lathund Därför använder man systemutvecklingsmodeller vilka det finns ganska många av. En del företag utvecklar sina egna modeller andra använder redan befintliga. Datamodellering 17

LIVSCYKELMODELLEN 18

FASERNA I ANDRA MODELLER Livscykelmodellen är den enda utvecklingsmodellen som innehåller alla faser från ide till ett systems avveckling. Alla andra utvecklingsmodeller omfattar endast några få faser. Datamodellering spänner över faserna Analys och Utformning i livscykelmodellen. Som ett resultat av arbetet efter Analysfasen är att man får ut en första användarkravspecifikation, AKS. I datamodelleringen motsvaras det av arbetet som har verksamheten i fokus. Det kallas för att man skapar en Konceptuell modell. 19

SQL STANDARDISERAT FRÅGESPRÅK För att hämta data ur databasen används ett frågespråk. Ett vanligt frågespråk är SQL, Structured Query Language Detta språk kan i mångt och mycket liknas vid vanligt språk. Hämta alla studenter från tabellen Studenter som tillhör kursen databaser SELECT * FROM Studenter WHERE Course = databaser Webbgränssnitt Kommunikationen mellan en webbsida och databasen sker oftast med SQL Databas 20

SQL STANDARDISERAT FRÅGESPRÅK SELECT medlem.mednr, förnamn, efternamn, betalt, avgift FROM Medlem INNER JOIN Avgift ON medlem.mednr=avgift.mednr WHERE Mednr=550 ORDER BY Betalt DESC INSERT INTO AVGIFT (mednr,betalt,avgift) VALUES (550, 2008-11-05, 150) UPDATE Medlem SET Telefon= 0480-549875 WHERE Mednr=550 21

DATA/INFORMATION/KUNSKAP Vad är skillnaden mellan Data och Information? Data är beståndsdelarna som i ett sammanhang bildar information. Data: 12 76 Information: Klockan är 12 76 kr är betalt belopp Vad är skillnaden mellan Information och Kunskap? Genom att kunna dra slutsatser, reflektera över informationen får vi kunskap. Klockan är 12, då är det lunch! Vad skiljer mellan att ange att en person är 25 år eller om hon är född 1989-01-20. Jo nästa år är hon 26 år alltså är det inaktuell data. 22