VAD GÖR DU / VEM ÄR DU?

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

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

Databaser och Datamodellering Foreläsning IV

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

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

Introduktion till MySQL

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

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

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

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

Innehåll. MySQL Grundkurs

Databaser - Design och programmering

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

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

732G16: Databaser - Design och programmering

Starta MySQL Query Browser

Övningar i SQL. SQLAccess.doc Ove Lundgren

Webbprogrammering, grundkurs 725G54

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

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

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

Databasutveckling Introduktion till SQL och TSQL

Sample exam questions. Database exam TIG058

WCMS-15, Webbutvecklare CMS

Prova på-laboration i SQL

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

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

Vad är en databas? Databasutveckling Med MySQL/MariaDB

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

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

Ett arbetsexempel Faktureringsrutin

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

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

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.

Databaser. Vad du ska lära dig: Ordlista

Vad är SQL? Introduktion till SQL

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

Design och underhåll av databaser

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

Stored procedure i ASP.NET

Modul DB1-1 Databasmodellering

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

Föreläsning 6 Databaser och säkerhet

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

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

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

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

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

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

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

Structured Query Language (SQL)

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

1DV423 Databas med Administration

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

Projekt Foreläsning VI

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

Installationsanvisning. Dokumenttyp Installationsanvisning Område Boss med delad databas

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

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

Slutrapport för JMDB.COM. Johan Wibjer

3. Dynamiska webbplatser, 20 Yhp (4 v)

Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10

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

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

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

Avancerade Webbteknologier

Stored procedure i ASP.NET

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

Introduktion MySQL och MariaDB

Nya webbservern Dvwebb.mah.se

Webbprogrammering, grundkurs 725G54

Webbservrar, severskript & webbproduktion

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

Bokningslista Kurssekreterare/Kursansvarig

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

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

Webbprogrammering TDDD52

Databaser och SQL - en kort introduktion

Inga hjälpmedel är tillåtna

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

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

Transaktioner. 1. Transaktioner 2. Samtidighet ( concurrency ) och lås. 3. Deadlock. Kap. 17. Informatik B: Databashantering med SQL Server

TDDD12 och TDDD46 Databasteknik. Lena Strömbäck

Structured query language (SQL)

Elektronisk publicering TNMK30

Scala Doc SQL Installation

Databaser och databasdesign, 7,5 hp

Idag. 1. Från modell till databasstruktur. 2. Prata med databaser (frågepsråket SQL)

Från verklighet via modell till databas. Idag. Testa reglerna på varuhusmodellen. Från verklighet via modell till databas

Webbprogrammering - 725G54 PHP. Foreläsning II

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)

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

URVAL AV UTFÖRDA FRILANSJOBB

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

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

Webbprogrammering. Sahand Sadjadee

Kapitel 6. Databaser

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

MSSQL, MySQL mfl Databashanterare TERMINOLOGI Personal Tabell PersID Namn 1 Nisse Nilsson 2 Janne Jansson Lon 11000 30000 Databas Databas Databasmotor Databas Bit minsta logiska del Byte ett tecken Fält datainnehåll Post samhörande data Tabell samlade data Databas stor samling data -Relationer hur kopplas data ihop -Nycklar ordningen på data Databashanterare kan Lägga till poster/data Ta bort poster /data Ändra poster/data Söka efter poster/data Visa poster/data.. och en hel del till 11

ADMINISTRATIONSGRÄNSSNITT Vissa databashanterare administreras via en kommandoradspromt. Det finns oftast ett grafiskt användargränsnitt. MySQL Query Browser Grafiskt användargränssnitt för MySQL. Management Studio SSMS Grafiskt användargränssnitt för MS SQL Server. 12

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? 13

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

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 15

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

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 17

DATAMODELLERING EN UTVECKLINGSPROCESS 18

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 19

LIVSCYKELMODELLEN 20

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 21

SQL STANDARDISERAT FRÅGESPRÅK SELECT 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 22

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 1988-01-21. Jo nästa år är hon 26 år alltså är det inaktuell data. 23