Se ellers læreboka, kap , side

Slides:



Advertisements
Liknende presentasjoner
Repetisjon innkapsling static tabell av primitiv datatype LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring.
Advertisements

Tabeller av objekter Klassen ArrayList
Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring
Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring
LC238D Datamodellering og databaser Else Lervik, september 2012 Forelesning 6, Uke 39 Objektorientering i ER-modeller.
Mange til mange sammenhengen
Kap 02 Relasjonsdatabaser
Høgskolen i Oslo Webprogrammering SQL og databaser del 3.
Dagens tema : Teori - Databaser
Java database persistence framework.  SELECT by FROM postnr AS p WHERE ( SELECT DISTINCT postnr FROM addr AS a WHERE user.adrId = a.Id ) = p.postnr;
LC238D Datamodellering og databaser Introduksjon til fagfeltet Else Lervik, august 2012Forelesning 1, uke 34 Datafilerside.
Modeller for design av Web-Applikasjoner ➔ Kapittel 2: Data Modell ➔ Kapittel 3: Hypertekst Modell Av Eskil Saatvedt og Arianna Kyriacou.
Polymorfi og arv, del 1 LC191D Videregående programmering Semesterplan: Høgskolen i Sør-Trøndelag, Avdeling.
Avansert SQL og problemløsning
1 Objektorienterte databaser - 6 Arne Maus. 2 Problemstillinger, hvorfor OO- databaser ?  dagens relasjonsdatabaser (RDB) passer ikke for alle anvendelser.
UML & object models av gruppe 8
Datamodellering og databaser Else Lervik, oktober 2011 Forelesning 9, uke 41 SQL, del 2 Eksempelbaseside 2 Virtuelle.
Normalisering av objektorienterte systemer
Databaseteori.
1 Kap 04 Datamodellering. 2 Datamodellering -Et språk for å analysere og beskrive virkeligheten. -En metode for å beskrive naturlige sammenhenger i data.
Normalformer – avleggs?
Unified Process – Elaboration Iterasjon 3
Databasehåndtering med MySQL
Eksempel AOA (Activity On Arc)
Datamodellering Man is a knot, a web, a mesh into which relationships are tied. Only those relationships matter Saint-Exupéry.
Systemmodeller In 140 Sommerville kap. 7. Mål Forstå hensikten med kontekstmodell Forstå ideene bak –oppførselsmodellering –datamodellering –objektmodellering.
Relasjonsmodellen, del II
Normalisering Framstillingen avviker noe fra læreboka,
Se ellers læreboka, kap , side
LC238D Datamodellering og databaser Else Lervik, september 2012 Forelesning 6, Uke 39 Objektorientering i ER-modeller.
Algoritmiske metoder Innhold: Effektivitetsbetraktninger Programmeringsteknikker Datastrukturer Algoritmer tilknyttet datastrukturene Lærebok: Hafting/Ljosland:
Datamodellering og databaser Else Lervik, oktober 2011 Forelesning 9, uke 41 SQL, del 2 Eksempelbaseside 2 Virtuelle.
Siste forelesning ER/EER-modellering
Mer om programmering av aggregeringer Repetisjon: Komposisjon og aggregering En register-klasse: modellering En register-klasse: implementering Sortering.
Å lage sikre klasser Unntaksklassene i Java-API-et Unntakshåndtering i databasesammenheng try-catch-finally-setningen Trelagsarkitektur; egen databaseklasse.
In 135 Datamodellering og databaser Introduksjon, Enkeltentiteten, Informasjon Ola Bø.
LC238D Datamodellering og databaser Else Lervik, september 2011 Forelesning 6, Uke 38 Objektorientering i ER-modeller.
1 Kap 02 Relasjonsdatabaser. Data-organisering - Manuelt Ansatte Pasienter Utstyr Økonomi Avdelinger RøntgenOnkologisk.
1 Kap 05 Modellator Datamodelleringsverktøy. Modellator - Enkelt eksempel EntitetRelasjon.
Kap 04 Datamodellering. Datamodellering -Et språk for å analysere og beskrive virkeligheten. -En metode for å beskrive naturlige sammenhenger i data som.
Sammensatt struktur Visning av intern struktur i et samarbeid mellom objekter Fokuserer på ett av en klasses flere mulige ansvar.
Forbindelser Diagrammer i UML består av ting med forbindelser
Klassediagrammer II Klassen samler data og operasjoner i passe store enheter Klassen organiserer programdesig net.
Klassediagrammer Klassen er en grunnleggende enhet i et objektorientert system Alle kan finne klasser i et domene Det å finne klasser er en intuitiv aktivitet.
UML og grensesnitt UML er standard for modellering innen objekt-orientert programvare kan UML også brukes til modellering av grensesnitt? fordel: bedre.
Hvordan uttrykke krav Kapittel 4.4. Innledning Målet er å samles rundt ett entydig språk som ikke kan misforståes eller feiltolkes. Gjør sporbarheten.
Forelesing Tabeller Hvordan opprette Tekst til tabell Justere Sortere dessverre ikke Overskrift Tabellverktøy.
Kjell Arne Iversen, Thore Nilsen
Structured Query Language Kræsj-kurs
ER-modellen, notasjon ENTITETS- Attributter TYPE Relasjon
Eksempel på SQL ”SQL-setninger” har en struktur som likner på ”naturlig språk”, med ”verb, subjekter og adjektiver”. SQL-setningene begynner alltid med.
DATABASE: Oppgave 2 et medlemsregister for en idrettsklubb med flere idrettsgrener (fotball, håndball, osv). klubben ønsker å lagre informasjon om medlemmenes.
storoppgave OPPGAVE3: bibliotekdatabase
Introduksjon I126 Databaser og datamodellering Høsten 2000 Institutt for informatikk Universitet i Bergen.
Hopp til første side Konseptuell Skjema Design Prosedyre (KSDP) 1. Omform kjente dataeksempler til grunnleggende fakta, og anvend kvalitetskontroller.
Fødselsdato (dmå) er født har lønn Ansatt (ansnr) Beløp (NKr)+ Telefon
Hopp til første side KSDP steg 5 Legg til totale rollebeskrankninger, og se etter logiske utledninger.
Databaser II – Online bokdatabase
Skjemaendringer i systemer bestående av XML-data i relasjonsdatabaser Høgskolen i Gjøvik Master i Medieteknikk, Marianne Brattrud.
Objektorientert utforming
NOEA/IT FEN - Databaser/modellering 1 Datamodellering Hvorfor? E/R-modellen Begreber Fremgangsmåde Diagrammering.
Objektorientert utforming In 140 Sommerville kap. 12.
Freenet A Distributed Anonymous Information Storage and Retrieval System.
Objektorientert utforming In 140 Forelesning Nr 11 Sommerville kap 12 – del 1.
Systemmodeller In 140 Forelesning nr. 9 Sommerville kap. 7.
Objektorientert design In 140 Sommerville kap 12 – del 1.
Studiebarometeret 2013 Regresjonsanalyser HiST-avdelinger Utført av Norfakta på oppdrag fra HiST Basert på rådata stilt til disposisjon av NOKUT.
INF1300 Introduksjon til databaser
Klassediagrammer II Klassen samler data og operasjoner i passe store enheter Klassen organiserer programdesignet.
H-verdi, F-verdi og RUH Betongelementbransjen
Utskrift av presentasjonen:

Se ellers læreboka, kap. 6.1-6.4, side 178-199 Datamodellering: ER-modeller ER = Enitity-Relationship del 1: Notasjon og oversetting av ulike ER-modeller til tilsvarende relasjonsmodeller ER-modellen, intro. side 2-3 Sterke og svake entitetstyper side 4 Attributter side 5 Multiplisitet, 1:1, 1:*, *:* side 6-8 Binære, trinære og rekursive sammenhengstyper side 9-11 Entitetstyper med to sammenhengstyper side 12 Chen, 1975 Se ellers læreboka, kap. 6.1-6.4, side 178-199 Else Lervik, september 2012

ER-modellen er en konseptuell modell (dvs en modell av hele databasen). Hensikt: Å beskrive dataene fra brukerens synsvinkel. Uavhengig av implementasjonsmodell og databasesystem – også uavhengig av relasjonsmodellen! Datamodellering og databaser Else Lervik, september 2012

Datamodellering og databaser Else Lervik, september 2012 Notasjon og begreper Mange notasjoner, vi bruker UML-diagram. Tar i bruk ER-begrepsapparatet, jamfører tilsvarende OO-begreper entitet ~ objekt entitetstype ~ klasse attributt sammenhengstype (eng: relationship type) ~ assosiasjon multiplisitet (1..1, 0..1, 0..*, 1..*, *..*) Primærnøkkel {PK} kommer inn som nytt begrep Datamodellering og databaser Else Lervik, september 2012

Sterke og svake entitetstyper En sterk entitetstype eksisterer uavhengig av andre entitetstyper. En svak entitetstype er avhengig av en annen entitetstype for å kunne identifiseres. Identitetsavhengighet. prosjekt(prosjnr, prosjektnavn, budsjett, forbruk prosjektrapport(prosjnr*, dato, tittel, forfattere, sammendrag, innhold) Datamodellering og databaser Else Lervik, september 2012

Attributter Avledet attributt Sammensatt attributt student(studnr, etternavn, fornavn, adresse, telefon, fdato, epost) snitt_karakter er et avledet attributt, den regnes ut og lagres ikke i databasen. Flerverdiet attributt student(studnr, etternavn, fornavn, adresse, fdato, epost) telefon(studnr*, tlfnr) Datamodellering og databaser Else Lervik, september 2012

Multiplisitet – en-til-en-sammenhengstype Multiplisiteten bestemmer antallet mulige sammenhenger mellom entiteter i en sammenhengstype En-til-en-sammenhengstype En andelseier kan ha min 0, maks 1 lelighet En leilighet bebos av min 1, maks 1 andelseier andelseier(and_eier_nr, fornavn, etternavn, telefon, ansiennitet) leilighet(leil_nr, ant_rom, ant_kvm, etasje, and_eier_nr*) NOT NULL UNIQUE and_eier_nr INTEGER NOT NULL UNIQUE 0..1 – delvis avhengighet 1..1 – total avhengighet Konkrete sammenhenger mellom entiteter kan illustreres vhja semantiske nett (figur på tavla) Datamodellering og databaser Else Lervik, september 2012

Multiplisitet - en-til-mange-sammenhengstyper En student bor på min. 1, maks. 1 poststed. (På) ett poststed (bor) min 0., maks. * (mange) studenter. student(studnr, fornavn, etternavn, adresse, postnr*) poststed(postnr, sted) Multiplisiteten refererer til maks-verdiene. Sammenhengen over er en-til-mange fra poststed til student. Minimumsverdien i 1..1 forteller om fremmednøkkelen kan være NULL eller ikke. Fremmednøkkelen postnr kan ikke være NULL, pga 1..1. Minimumsverdien i 0..* forteller at det kan fins poststed uten studenter. Datamodellering og databaser Else Lervik, september 2012

Multiplisitet - mange-til-mange-sammenhengstyper Én student velger minst ett fag, maks mange fag. Ett fag velges av min. 0 studenter, maks mange. student(studnr, etternavn,… fag(fagkode, fagnavn,…. fagvalg(studnr*, fagkode*, semester, betalt, karakter) En mange-til-mange-sammenheng medfører at vi må lage en “koplingstabell”/”koplingsrelasjon”. Primærnøkkelen i denne relasjonen er satt sammen av fremmednøkler som refererer til de involverte relasjonene. Datamodellering og databaser Else Lervik, september 2012

Dimensjon - tre-dimensjonal (trinær) sammenhengstype Én person jobber i mange prosjekter i mange uker. I en bestemt uke jobbes det på mange prosjeketr av mange personer. På ett prosjekt jobber det mange personer i mange uker. person(pers_id, fornavn, etternavn, … prosjekt(prosjnr, prosjektnavn, … uke((uke, aar), norm_timer, …. timeliste(pers_id*, prosjnr*, (uke, aar)*, ant_timer) Datamodellering og databaser Else Lervik, september 2012

Rekursiv sammenhengstype Hierarki/trestruktur Én person er sjef for min. 0, maks mange ansatte. Hver ansatt har min. 0, maks. 1 sjef. ansatt(ans_id, fornavn, etternavn, tlf, epost, har_som_sjef_id*) Nettverk Datamodellering og databaser Else Lervik, september 2012

Entitetstyper med to sammenhengstyper Datamodellering og databaser Else Lervik, september 2012