Skranker og avledninger

Størrelse: px
Begynne med side:

Download "Skranker og avledninger"

Transkript

1 Skranker og avledninger jfr. Fra kjernen og ut, fra skallet og inn kapittel 7 dmskranker&repr-1

2 Figur 7-1. Skrankene skal gjenspeile virkelighetens regler Forretningsregler Virkeligheten (interesseområdet) registrering påvirkning Skranker Oppfatningen av virkeligheten Skranker/ Integritetsregler Informasjonssystem Organisasjonen Brukere dmskranker&repr-2

3 Eksempler på skranker En person kan ha bare én biologisk mor En person kan ha bare én biologisk far En kommune kan tilhøre bare ett fylke En kommune skifter aldri fylkestilhørighet Du kan være gift med bare én person Du kan ha bare én sjef En person kan være ansatt i bare ett firma En person må være ansatt i et firma En bil må enten eies av en person eller ett firma En bil må eies av et firma for å kunne være firmabil Er en person blitt gift, kan vedkommende aldri bli ugift igjen dmskranker&repr-3

4 Typer av skranker Tilstandsskranker foreskriver lovlige tilstander o Begreps/Verdiskranker o Multiplisitetsskranker o Mengdeskranker o Forekomstgenererende skranker Overgangsskranker foreskriver lovlige tilstandsoverganger o Fastskranken o Andre overgangsskranker dmskranker&repr-4

5 Figur 7-3. Hva brukes skrankene til? Skranker Strukturering av databasen Deklarative integritetsregler Programmerbare integritetsregler - i databasen (triggere) - i applikasjonsprogrammene - i brukergrensesnittene Virkelighetsmodell Brukergrensesnitt Applikasjon Systemutvikler dmskranker&repr-5

6 Entydighetsskranken fylkenr {id} Fylke Fylkenavn fylkenavn {id} fylkenr fylkenavn fylkenavn dmskranker&repr-6

7 Entydighetsskranken i SQL CREATE TABLE tabellnavn ( attributtnavn1 datatype attributtnavn2 datatype NOT NULL,... CONSTRAINT skrankenavn PRIMARY KEY (attributtnavn1,...), CONSTRAINT skrankenavn UNIQUE(attributtnavn1,...) ); Eksempel PRIMARY KEY impliserer fylkenr fylkenavn NOT NULL. UNIQUE impliserer ikke CREATE TABLE Fylke ( NOT NULL. fylkenr CHAR(2), fylkenavn VARCHAR(25), CONSTRAINT fylkenr_pk PRIMARY KEY (fylkenr), CONSTRAINT fylkenavn_uk UNIQUE(fylkenavn) ) ; dmskranker&repr-7

8 Figur 7-2. Notasjon for mer avanserte skranker {skrankebeskrivelse i OCL eller lignende} Én-rolle-skranke {skrankebeskrivelse i OCL eller lignende} To-rolle-skranke dmskranker&repr-8

9 Figur 7-7. Ekstern entydighetsskranke ordrenr {id} Ordre omfatter 1 {unique} Det skal ikke finnes flere ordrelinjer med samme kombinasjon av ordre og vare ligger-i Ordrelinje «identifying» «identifying» 1 varenr {id} Vare Ordrelinje ordrenr varenr dmskranker&repr-9

10 Tid en utfordring Problemet med tiden er at den har en utstrekning (-> romlig verdi) Diskretisering: t Et tidspunkt som for eksempel 1215 kan brukes til å finne noe som begynner kl 1215, men en entydighetsskranke kan ikke forhindre forekomsten 1216 For å forhindre tidsmessig overlapp må vi enten o registere alle tidsbitene o angi slutt-tid o angi varighet Ta ikke slutt-tiden med i identifikatoren! Forelesning rom{id} starttid{id} slutt_tid dmskranker&repr-10

11 Mengdeskranker Mengdeskranker ( set-comparison constraints ) begrenser mengden av forekomster i en eller flere roller i forhold til forekomstene i andre roller Mengdeskranker finnes i følgende varianter: o Mengdelikhetsskranke ( Equality constraint ) o Mengdeulikhetsskranke ( Exclusion constraint ) o Delmengdeskranke ( Subset constraint ) o Ringskranke ( Ring constraint ) o Ekvivalente veier ( Equivalence of path ) Vi skal se på bare noen av dem! dmskranker&repr-11

12 Delmengdeskranken a) 1 skytter Person pnavn {id} {subset} død bjørn Bjørn bnavn {id} skinnselger bjørneskinn skytter død bjørn jf. lærebokas figur 7-14 {subset} skinnselger bjørneskinn dmskranker&repr-12

13 Delmengdeskranken (forts.) b) 1 skytter Person {subset} død bjørn Bjørn pnavn {id} bnavn {id} skinnselger bjørneskinn c) 1 skytter Person pnavn {id} {subset} død bjørn Bjørn bnavn {id} 1 OBS! skinnselger bjørneskinn dmskranker&repr-13

14 Realisering av delmengdeskranke i SQL Delmengdeskranke mellom tabeller realiseres ved hjelp av referanseintegritet. Denne deklareres som regel i en separat ALTER TABLE av kontrollert tabell: ALTER TABLE navn_på_kontrollert_tabell ADD CONSTRAINT navn_på_regel FOREIGN KEY(fremmednøkkelattributt1, fremmednøkkelattributt2) REFERENCES navn_på_kontrollerende_tabell (attr1, attr2); Eksempel Fylke fylkenr fylkenavn kan utelates da antas primærnøkkelen Kommune fylkenr {subset} kommunenr2s NOT NULL kommunenavn avfallsmengde NOT NULL innbyggertall ALTER TABLE Kommune ADD CONSTRAINT fylkenr_fk FOREIGN KEY(fylkenr) REFERENCES Fylke; dmskranker&repr-14

15 papirgjenvinner Figur Delmengdeskranken gjenvunnet_ papirmengde Avfallsselskap selskapsnavn {id} {subset} 0..1 glassgjenvinner gjenvunnet_ glassmengde 0..1 Mengde #tonn {id} 1..1 metallgjenvinner gjenvunnet_ metallmengde {subset} papirgjenvinner Returpapir Gjenvinning glassgjenvinner Gjenvinning gjenvunnet_ papirmengde gjenvunnet_ glassmengde 1000 metallgjenvinner Returpapir Gjenvinning Glasshytta gjenvunnet_ metallmengde dmskranker&repr-15

16 Figur Delmengdeskranke i tabell etter gruppering {gjenvunnet_papirmengde = nil implies gjenvunnet_glassmengde = nil} selskapsnavn Returpapir Gjenvinning Glasshytta gjenvunnet_ papirmengde nil gjenvunnet_ glassmengde nil 1000 nil NOT NULL gjenvunnet_ metallmengde CREATE TABLE Gjenvinning CONSTRAINT glass_forutsetter_papir CHECK ((gjenvunnet_papirmengde IS NOT NULL) OR (gjenvunnet_papirmengde IS NULL AND gjenvunnet_glassmengde IS NULL)) dmskranker&repr-16

17 Handlingsmønster ved overtredelse av referanseintegritet ALTER TABLE navn på kontrollert tabell ADD CONSTRAINT navn på regel FOREIGN KEY(fremmednøkkelattributt) REFERENCES navn_på_kontrollerende_tabell ON DELETE referential_action ; eller UPDATE NO ACTION (gi feilmelding) CASCADE (fjern også kontrollerte linjer) SET NULL (sett fremmednøkkel til NULL) SET DEFAULT (sett fremmednøkkel til default -verdi) I Oracle: bare ON DELETE CASCADE dmskranker&repr-17

18 Ringskranker 1 Kvinne jfr. lærebokas figur 7-23 mor fornavn {id} datter irrefl, asym, intrans? mor Anne datter Anne forhindres med irrefl Anne Eva Eva Eva Anne Gro forhindres med asym (inkluderer irrefl) Anne Gro forhindres med intrans dmskranker&repr-18

19 Verdiskranker Fylke fylkenr {id} {value is 1-12,14-20} Fylkenavn fylkenavn {id} omfatter ligger-i Kommune kommunenr {id} jf. lærebokas figur CREATE TABLE Fylke( fylkenr char(2) CONSTRAINT fylkenr_ck CHECK (fylkenr in ('1', '2'... '20')) ) 1 1 avfallsmengde 1 innbyggertall {value is < } Kommunenavn kommunenavn {id} Mengde # tonn {id} {value is < 10000} «begrep» Antall # {id} {value is < } dmskranker&repr-19

20 Figur To prinsipper for kontroll av verdier Person fødselsnr {id} kjønnskode {value is M, K } Kontrolleres med CHECK Person fødselsnr {id} kjønnskode {fk} 1 Kjønn kjønnskode {id} Kontrolleres med referanseintegritet dmskranker&repr-20

21 Avledninger og forekomstgenererende skranker dmskranker&repr-21

22 Figur Transitivt avledet utsagn Fylke fylkenr {id} /betjenes av 1 {betjenes_av = oppdragsgiver.fylke} 1 Eksempel på avledning selskap Kommune kommunenr {id} 1 oppdragsgiver Avfallsselskap selskapsnavn {id} dmskranker&repr-22

23 Figur Ingen avledninger Fylke fylkenr {id} vertsfylke 1 1 Formen på diagrammet er ikke tilstrekkelig til å avgjøre om det foreligger en avledning! selskap Kommune kommunenr {id} 0..1 oppdragsgiver Avfallsselskap selskapsnavn {id} dmskranker&repr-23

24 Figur Refleksivitet, symmetri og transitivitet erstattes Del delnr {id} erstatning refl, sym, trans? Forekomstgenererende ringskranker erstattes V1 V2 V2 V1 V3 V2 V3 V1 V3 V1 V2 V1 V2 V3 V3 V2 V3 V1 dmskranker&repr-24

25 Figur Eksempel på akkumulering Fylke fylkenr {id} 1 {fylkesavfallsmengde = sum(kommune.avfallsmengde)} kommune 1 /fylkesavfallsmengde Kommune kommunenr {id} 0..1 avfallsmengde Mengde #tonn {id} dmskranker&repr-25

26 Overgangsskranker transition constraints dmskranker&repr-26

27 Figur Overgangsskranker illustrert med tilstandsdiagram Et UML tilstandsdiagram ( state diagram ) Ugift start Overgangsskranker må realiseres ved hjelp av triggere giftemål giftemål giftemål Skilt skilsmisse Gift dødsfall Enke/ enkemann dmskranker&repr-27

28 Fastskranken jf. lærebokas figur 7-33 Fylke fylkenr {id} fylke 1 «identifying» {immutable } kommune Kommune composition Fastskranken {immutable} uttrykker her at en kommune ikke kan flytte seg fra et fylke til et annet kommunenr2s {id} dmskranker&repr-28

29 En veloppdragen vaktbikkje hever datakvaliteten! dmskranker&repr-29

30 Mer om representasjoner Jfr. Fra kjernen og ut, fra skallet og inn kapittel 8 dmskranker&repr-30

31 En bro kobler begrep og representasjon Fylke fylkenr{id} 1 omfatter ligger-i Kommune kommunenr{id} bro Begrep Representasjon dmskranker&repr-31

32 Forekomster i interesseområdet og i informasjonssystemet Person med etternavn Ås er eier av bil med kjennetegn DB Person med etternavn Dal er eier av bil med kjennetegn AX eier eier Person Bil Ås etternavn Dal bro eier eier DB AX kjennetegn dmskranker&repr-32

33 Om representasjoner og identifikatorer Begrepsforekomster kan ikke lagres de data vi lagrer, er representasjonsforekomster (verdier) Et begrep bør ikke representeres ved en representasjon for et annet begrep Et begrep kan tilordnes flere representasjoner En modell bør ikke inneholde samme representasjon mer enn én gang Et begrep må ha en entydig representasjon, også kalt identifikator o Modellbestemt o Systembestemt (OID i OO-databaser, genererte primærnøkler) Et begrep bør ha en stabil identifikator dmskranker&repr-33

34 Ulike typer representasjoner Navn, betegnelser, koder eks.: Fødselsnr, fylkenr, fylkenavn, kommunenr Boolske verdier forekomster: true, false ja, nei Målbare/tellbare størrelser forekomster: 1 m, 75 kg, 220 V, kr 7,-, 30 Romlige verdier Representasjoner for linjer, flater og volumer Fri tekst forekomster: god betaler, Peer du lyver! Nei, jeg gjør ei, Representasjoner av bilde og lyd...jfr. INF1040 dmskranker&repr-34

35 Broer vs. entydighetsskranker Person fødselsnr {id} 1 noe person noe bro Entydighetsskranken uttrykker at samme person ikke kan inngå i mer enn en forekomst av en assosiasjon. Men siden vi bare kan kontrollere representasjoner, er det modellererens ansvar å velge representasjoner som er entydige (og som dermed er identifikatorer) dmskranker&repr-35

36 En feilaktig bro Person Person 1 Telefon priv.tlf {id} fødselsnr {id} tlf_nr {id} Galt (?) Riktig Koble ikke sammen en begrepstype og en representasjonstype for en annen begrepstype dmskranker&repr-36

37 Feilaktige broer og entydighetsskranker Feilaktig modell Kommune kommunenavn {id} kommune fylke 1 Fylke fylkenavn {id} Våler Østfold Nes Akershus Våler Hedmark Nes Buskerud Enda mer feilaktig modell Kommune kommunenavn {id} kommune fylke Fylke fylkenavn {id} Våler Østfold Nes Akershus Våler Hedmark Nes Buskerud dmskranker&repr-37

38 Fullt informasjonsbærende representasjon Prosjektdeltakelse «identifying» 1 {immutable} {unique} Person ansattnr{id} «identifying» {immutable} 1 Prosjekt prosjektnr{id} En Prosjektdeltakelse er representert ved en fullt informasjonsbærende representasjon! jf. lærebokas figur 8-5 dmskranker&repr-38

39 Delvis informasjonsbærende representasjon fylkenr {id} Fylke 1 {immutable} fylke {unique} «identifying» kommune Kommune kommunenr2s {id} fylke fylke kommune kommune En kommune har en delvis informasjonsbærende representasjon, et fylkenr (informasjonsbærende) og et tosifret kommunenr (ikke informasjonsbærende)! delvis informasjonsbærende representasjon jfr. lærebokas figur 8-3 dmskranker&repr-39

40 Eksempel: Hotellrommet romnr{id} Rom Rom «identifying» {immutable} 1 Etasje romnr_i_etasje{id} {unique} etasjenr{id} Let etter skjulte begreper i representasjonene! jf. lærebokas figur 8-7 dmskranker&repr-40

41 Figur 8-8. Informasjonsbæring avhenger av oppfatningen a) Person fødselsnr {id} b) Dag dato {id} 1 {immutable} fødselsdag {unique} «identifying» Person personnr {id} dmskranker&repr-41

42 Figur 8-9. Eksempel på kontekstsensitiv representasjon 01 Melk og melkeprodukter Melk, søt H-melk Lettmelk Skummet melk Fløte 10%, sterilisert Fløte 20 % Fløte 35 % H-melk 1/3 l Lettmelk 1/3 l Skummet melk 1/3 l Fløte 25 % 1/3 l Melk, syrnet Kefir Skummet kulturmelk Rømme 20 % Seterrømme 35 % Yoghurt, naturell Kulturmelk Yoghurt med smakstilsetning Lett-Yoghurt Betydningen av en siffergruppe er avhengig av de foregående dmskranker&repr-42

43 Fra et eksamensreglement A1: Kalkulatorer ikke tillatt. Ingen andre hjelpemidler tillatt A2: Kalkulatorer ikke tillatt. Bestemte hjelpemidler tillatt A3: Kalkulatorer ikke tillatt. Alle andre hjelpemidler tillatt B1: Enkel kalkulator utdeles på eksamen. Ingen andre hjelpemidler tillatt B2: Enkel kalkulator utdeles på eksamen. Bestemte hjelpemidler tillatt B3: Enkel kalkulator utdeles på eksamen. Alle andre hjelpemidler tillatt C1: Alle typer kalkulator tillatt. Alle andre hjelpemidler tillatt C2: Alle typer kalkulator tillatt. Bestemte hjelpemidler tillatt C3: Alle typer kalkulator tillatt. Ingen andre hjelpemidler tillatt Hva betyr A,B,C,1,2,3? dmskranker&repr-43

44 Koding Hvorfor skal vi kalle H-melk ? Hvorfor skal vi kalle Østfold 01? Hvorfor skal vi kalle emnet Systemutvikling INF1050? Hvorfor skal Ingen hjelpemidler tillatt kalles A1? Pro Con o Stabilt o Fagsjargong o Databehandlings-esperanto o Sorteringsmuligheter o Unngår tilfeldige ulikheter i representasjoner o Plassbesparende dmskranker&repr-44

45 Ulike muligheter for entydige representasjoner Ved en kombinasjon av o representasjoner o identifiserende assosiasjoner B 1 b {id} {unique} {immutable} «identifying» A a {id} «identifying» C 1 c {id} {immutable} Ved arv fra superbegrep B b {id} A jf. lærebokas figur 8-12 dmskranker&repr-45

46 Gode råd om representasjoner Legg ikke inn mer informasjon i representasjonen enn nødvendig Basér representasjonene på uforanderlige, stabile opplysninger Vær forsiktig med koder Bruk standardiserte representasjoner Det er intet mål at alt skal kunne leses ut av representasjonen! dmskranker&repr-46

Skranker og avledninger

Skranker og avledninger Figur 7-1. Skrankene skal gjenspeile virkelighetens regler Forretningsregler Virkeligheten (interesseområdet) Skranker og avledninger registrering påvirkning jfr. Fra kjernen og ut, fra skallet og inn

Detaljer

Representasjoner. Modell uten representasjoner. Modell med representasjoner. Forekomster i interesseområdet og i informasjonssystemet

Representasjoner. Modell uten representasjoner. Modell med representasjoner. Forekomster i interesseområdet og i informasjonssystemet Mdell uten representasjner mfatter Representasjner mfatter Jfr. Fra kjernen g ut, fra skallet g inn kapittel 8 et utsagn (en utsagnstype) Begreper INF02-representasjner- Representasjner Fenmener i interessemrådet

Detaljer

Datamodellering med UML

Datamodellering med UML Datamodellering med UML jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 5 (og litt fra kapittel 6 og 7) dmuml-1 Figur 5-1. Datamodellen dokumenterer vår oppfatning av virkeligheten

Detaljer

Hva vi i alle fall bør huske fra INF1050

Hva vi i alle fall bør huske fra INF1050 Hva vi i alle fall bør huske fra INF1050 Gerhard Skagestein 25. januar 2006 25. januar 2006 INF2120 Prosjekt i modellering 1 Figur 1-3. Et systems livssyklus Idé Krav og ønsker Utforming Realisering Ny

Detaljer

Datamodellering med UML (forts.)

Datamodellering med UML (forts.) Datamodellering med UML (forts.) jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 6 Institutt for informatikk Gerhard Skagestein 4. februar 2007 dmuml2- Modellenes to formål Interesseområdet

Detaljer

Modellenes to formål. Datamodellering med UML (forts.) Fra naturlig språk til datamodell. Figur 5-2. Ogdens trekant

Modellenes to formål. Datamodellering med UML (forts.) Fra naturlig språk til datamodell. Figur 5-2. Ogdens trekant Modellenes to formål Interesseområdet Dataering med UML (forts.) Beskrivelse jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 6 Oppfatningen av interesseområdet Foreskrivelse Informasjonssystem

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut PHP-arkitektur Brukergrensesnitt! inn ut Dynamisk web-side bygges opp på grunnlag av spørring mot databasen Utviklingsretning Applikasjon Virkelighetsmodell Plattform Bruker

Detaljer

The Unified Modeling Language - UML

The Unified Modeling Language - UML Datamodellering med UML jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 5 Modellenes to formål Interesseområdet Beskrivelse Oppfatningen av interesseområdet Foreskrivelse Informasjonssystem

Detaljer

Modellenes to formål. Datamodellering med UML (forts.) Ugrupperte og grupperte modeller. Figur 5-2. Ogdens trekant

Modellenes to formål. Datamodellering med UML (forts.) Ugrupperte og grupperte modeller. Figur 5-2. Ogdens trekant Modellenes to formål Interesseområdet Dataering med UML (forts.) Beskrivelse jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 5 Oppfatningen av interesseområdet Foreskrivelse Informasjonssystem

Detaljer

Modellenes to formål. Datamodellering med UML (forts.) Ugrupperte og grupperte modeller. Figur 5-2. Ogdens trekant

Modellenes to formål. Datamodellering med UML (forts.) Ugrupperte og grupperte modeller. Figur 5-2. Ogdens trekant Modellenes to formål Interesseområdet Dataering med UML (forts.) Beskrivelse jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 5 Oppfatningen av interesseområdet Foreskrivelse Informasjonssystem

Detaljer

Representasjoner. En bro kobler begrep og representasjon. Forekomster i interesseområdet og i informasjonssystemet

Representasjoner. En bro kobler begrep og representasjon. Forekomster i interesseområdet og i informasjonssystemet En br kbler begrep g representasjn Representasjner fylkenr{id} mfatter ligger-i kmmunenr{id} Jfr. Fra kjernen g ut, fra skallet g inn kapittel 8 br Begreper Representasjner dmskranker&repr- dmskranker&repr-2

Detaljer

Datamodellering med UML. Modellenes to formål. The Unified Modeling Language - UML

Datamodellering med UML. Modellenes to formål. The Unified Modeling Language - UML Figur 5-. Datamodellen dokumenterer vår oppfatning av virkeligheten Interesseområdet Datamodellering med UML registrering påvirkning jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel

Detaljer

Datamodellering med ORM

Datamodellering med ORM Figur 5-1. Datamodellen dokumenterer vår oppfatning av virkeligheten Interesset Datamodellering med ORM registrering påvirkning jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 6 Oppfatningen

Detaljer

Datamodellering med UML. Modellenes to formål. The Unified Modeling Language - UML

Datamodellering med UML. Modellenes to formål. The Unified Modeling Language - UML Figur 5-. Datamodellen dokumenterer vår oppfatning av virkeligheten Interesseområdet Datamodellering med UML registrering påvirkning jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel

Detaljer

Representasjoner. En bro kobler begrep og representasjon. Forekomster i interesseområdet og i informasjonssystemet

Representasjoner. En bro kobler begrep og representasjon. Forekomster i interesseområdet og i informasjonssystemet En br kbler begrep g representasjn Representasjner fylkenr{id} mfatter ligger-i kmmunenr{id} Jfr. Fra kjernen g ut, fra skallet g inn kapittel 8 br Begreper Representasjner dmskranker&repr- dmskranker&repr-2

Detaljer

Dagens tema. Den redundansfri datamodellen. Modellenes to formål. Den grunnleggende konstruksjonen det elementære utsagnet

Dagens tema. Den redundansfri datamodellen. Modellenes to formål. Den grunnleggende konstruksjonen det elementære utsagnet Dagens tema Individer i interesseområdet Den redundansfri dataen Redundansfrihet ingen dobbeltlagringer eller avledninger Gruppering, normalisering eller intuisjon? Begrepsdannelse jfr. Systemutvikling

Detaljer

Den redundansfri datamodellen

Den redundansfri datamodellen Den redundansfri datamodellen jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel 6 Institutt for informatikk Gerhard Skagestein 4. februar 2007 dmredundansfri- Dagens tema Individer i

Detaljer

Intermesso. Visjonen... samling av trådene. Veivalget. Et bedre bilde av visjonen?

Intermesso. Visjonen... samling av trådene. Veivalget. Et bedre bilde av visjonen? Visjonen... Intermesso samling av trådene jfr. Systemutvikling fra kjernen og ut, fra skallet og inn kapittel INF02-Intermesso- Theodor Kittelsen: Og i det fjerne, langt, langt borte så han noe lyse og

Detaljer

Dagens tema. Den redundansfri datamodellen. Modellenes to formål. Individer i interesseområdet

Dagens tema. Den redundansfri datamodellen. Modellenes to formål. Individer i interesseområdet Dagens tema Individer i interesseområdet Den redundansfri datamodellen Redundansfrihet ingen dobbeltlagringer eller avledninger Gruppering, normalisering eller intuisjon? jfr. Systemutvikling fra kjernen

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Informasjonsbærende referansemåter Resten av realiseringsalgoritmen Sterk realisering Realisering versus modellering INF1300-31.10.2016

Detaljer

Integritetsregler i SQL. Primærnøkler

Integritetsregler i SQL. Primærnøkler Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende integritetsregler skranker på attributter og tupler Interrelasjonsskranker assertions Triggere INF212

Detaljer

SQL Structured Query Language. Definere tabeller Skranker Fylle tabeller med data

SQL Structured Query Language. Definere tabeller Skranker Fylle tabeller med data SQL Structured Query Language Definere tabeller Skranker Fylle tabeller med data Lage en tabell med SQL create table R (A 1 D 1 [S 1 ],... A n D n [S n ], [liste av skranker] R er navnet på relasjonen/tabellen

Detaljer

Miniverden og ER- modell

Miniverden og ER- modell TDT4145 Datamodellering og databasesystemer SQL- oppgave 1 Miniverden og ER- modell Vi tar utgangspunkt i en enkel modell for en pizza- restaurant, der følgende ER- diagram beskriver databasen: Relasjonsdatabase-

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut PHP-arkitektur Brukergrensesnitt! inn ut Dynamisk web-side bygges opp på grunnlag av spørring mot databasen Utviklingsretning Applikasjon Virkelighetsmodell Plattform Bruker

Detaljer

Integritetsregler i SQL

Integritetsregler i SQL UNIVERSITETET I OSLO Integritetsregler i SQL INF3100 8.2.2005 Ragnar Normann 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende integritetsregler

Detaljer

Oppgaver Oppgave a: Sett opp mulige relasjoner

Oppgaver Oppgave a: Sett opp mulige relasjoner Løsningsforslag til øving 4: Relasjonsmodellen Kjell Toft Hansen 18.09.2008 Opphavsrett: Forfatter og AITeL Lærestoffet er utviklet for faget LO151D Informatikk 1: databaser Oppgaver Oppgave a: Sett opp

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut PHP-arkitektur Brukergrensesnitt! inn ut Dynamisk web-side bygges opp på grunnlag av spørring mot databasen Utviklingsretning Applikasjon Virkelighetsmodell Plattform Bruker

Detaljer

Databaser: Relasjonsmodellen, del I

Databaser: Relasjonsmodellen, del I LC238D http://www.aitel.hist.no/fag/_dmdb/ Databaser: Relasjonsmodellen, del I En relasjon er en matematisk mengde side 2 Egenskaper ved relasjoner side 3 Entitetsintegritet side 4-5 Referanseintegritet

Detaljer

Databaser. Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen

Databaser. Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen Databaser Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen Tema for dagen Relasjonsmodellen Hvorfor relasjoner? Fra ER diagram til relasjoner 22.09.2008

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut! inn ut Virkelighetsmodell Brukergrensesnitt Utviklingsretning Applikasjon Bruker Plattform Oppfatning av interesseområdet jfr. Systemutvikling Fra kjernen og ut, fra skallet

Detaljer

SQL 3: Opprette tabeller, datainnsetting og utsnitt

SQL 3: Opprette tabeller, datainnsetting og utsnitt SQL 3: Opprette tabeller, datainnsetting og utsnitt Læreboka kap. 4 03.11.2008 Kjell Toft Hansen 1 Datainnsetting Legg til en ny leverandor i tabellen leverandor INSERT INTO leverandor (lev_nr, lev_navn,

Detaljer

Gerhard Skagestein: Systemutvikling fra kjernen og ut, fra skallet og inn.

Gerhard Skagestein: Systemutvikling fra kjernen og ut, fra skallet og inn. Gerhard Skagestein: Systemutvikling fra kjernen og ut, fra skallet og inn. Oppgaver til kapittel 5 - Datamodellering med UML Oppgave 6. Ugruppert og gruppert modell Et mindre bilutleiefirma ønsker å få

Detaljer

1. SQL datadefinisjon og manipulering

1. SQL datadefinisjon og manipulering Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL datadefinisjon og manipulering Tore Mallaug 7.10.2008 Lærestoffet er utviklet for faget Databaser 1. SQL datadefinisjon og manipulering

Detaljer

Flere skranker i ORM Integritetsregler med «CHECK» i SQL

Flere skranker i ORM Integritetsregler med «CHECK» i SQL IN2090 Databaser og datamodellering Flere skranker i ORM Integritetsregler med «CHECK» i SQL Mathias Stang (mjstang@ifi.uio.no) 10. oktober 2018 1 Agenda Verdiskranker Mengdeskranker Ekstern påkrevd rolle

Detaljer

Integritetsregler i SQL

Integritetsregler i SQL UNIVERSITETET I OSLO Integritetsregler i SQL Institutt for Informatikk INF3100 13.2.2007 Ellen Munthe-Kaas 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende

Detaljer

Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Realisering: Fra ORM til relasjoner

Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Realisering: Fra ORM til relasjoner UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Realisering: Fra ORM til relasjoner Institutt for informatikk

Detaljer

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering INF1300 Introduksjon til databaser Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering Mathias Stang (mjstang@ifi.uio.no) 21. november 2016 Agenda Hensikten med ORM-modellering Hva er lov

Detaljer

Utvikling fra kjernen og ut

Utvikling fra kjernen og ut Utvikling fra kjernen og ut Informasjonssystem bygd på et databasehåndteringssystem Brukergrensesnitt! inn ut Oppfatning av interesseområdet Flere samtidige brukere gir databasehåndteringssystemet store

Detaljer

INF1050 Klasseromsoppgave Uke 6

INF1050 Klasseromsoppgave Uke 6 INF1050 Klasseromsoppgave Uke 6 Løsningsforslag Mer avansert datamodellering med UML Oppgave 1 Her følger noen eksempler på opplysninger som brukeren ønsker å kunne trekke ut av informasjonssystemer. Foreslå

Detaljer

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering INF1300 Introduksjon til databaser Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering Mathias Stang (mjstang@ifi.uio.no) 21. november 2017 Agenda Hensikten med ORM-modellering Hva er lov

Detaljer

Realiseringsalgoritmen fra ORM til relasjoner Intro til mengdeskranker i ORM

Realiseringsalgoritmen fra ORM til relasjoner Intro til mengdeskranker i ORM IN2090 Databaser og datamodellering Realiseringsalgoritmen fra ORM til relasjoner Intro til mengdeskranker i ORM Mathias Stang (mjstang@ifi.uio.no) 3. oktober 2018 1 Repetisjon: Relasjoner relasjonsskjema

Detaljer

Løsningsforslag matoppskrifter modellering

Løsningsforslag matoppskrifter modellering Løsningsforslag matoppskrifter modellering Oppgave 1 Det beste er å ha et felles løpenummer på alle oppskrifter, uavhengig av hvor de stammer fra, og heller ha ekstraopplysninger som avhenger av om oppskriften

Detaljer

Datamodellering og databaser http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2

Datamodellering og databaser http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 Eksempelbase side 2 Virtuelle tabeller (views) side 3-6 NULL-verdier side 7-14 UPDATE-setningen side 15-16 INSERT-setningen side 17 DELETE-setningen side

Detaljer

Underbegreper. Homogenitetsregelen. Bruk av homogenitetsregelen

Underbegreper. Homogenitetsregelen. Bruk av homogenitetsregelen Hmgenitetsregelen Underbegreper Alle tenkelige frekmster av et begrep skal kunne spille alle rller sm er tilknyttet begrepet. Jfr. Fra kjernen g ut, fra skallet g inn avsnitt 5.3 g 5.4.4 Vi krever ikke

Detaljer

Sensorveiledning for IN2090 og INF desember :30 18:30 (4 timer)

Sensorveiledning for IN2090 og INF desember :30 18:30 (4 timer) Sensorveiledning for IN2090 og INF1300 6. desember 2018 14:30 18:30 (4 timer) 1. Eksterne skranker (5%) I modellene nedenfor (ORM2) skal du anta at alle begreper har en unik representasjon. Er plasseringen

Detaljer

Datamodellering og databaser SQL, del 2

Datamodellering og databaser  SQL, del 2 http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 Eksempelbase side 2 Virtuelle tabeller (views) side 3-6 NULL-verdier side 7-14 UPDATE-setningen side 15-16 INSERT-setningen side 17 DELETE-setningen side

Detaljer

Oppgave 1 1. Spørring: Resultattabell: 2. Spørring: Resultattabell: 3. Spørring:

Oppgave 1 1. Spørring: Resultattabell: 2. Spørring: Resultattabell: 3. Spørring: Kjell Toft Hansen 02.10.2008 Opphavsrett: Forfatter og AITeL Lærestoffet er utviklet for faget LO151D Informatikk 1: databaser Oppgave 1 1. Spørring: SELECT oh.*, delnr, kvantum FROM ordrehode oh, ordredetalj

Detaljer

SQL: Integritetsregler, triggere og views

SQL: Integritetsregler, triggere og views UNIVERSITETET I OSLO SQL: Integritetsregler, triggere og views Institutt for Informatikk INF3100 14.2.2014 Ellen Munthe-Kaas 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet fremmednøkler

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Informasjonssystemer 100%-prinsippet: Fra virkelighet til informasjonsmodell Forretningsregler, skranker og integritetsregler: Fra modell

Detaljer

Gerhard Skagestein: Systemutvikling fra kjernen og ut, fra skallet og inn.

Gerhard Skagestein: Systemutvikling fra kjernen og ut, fra skallet og inn. Gerhard Skagestein: Systemutvikling fra kjernen og ut, fra skallet og inn. Oppgaver til kapittel 5 - Datamodellering med UML Oppgave 2. Begreper og representasjoner a. I en modell finner du begrepene Mann

Detaljer

Metaspråket for å beskrive grammatikk

Metaspråket for å beskrive grammatikk 1 SQL-syntaks Korrekt språkbruk bygger på et sett av regler. Eksempler: En SQL utvalgsspørring inneholder alltid ordene SELECT og FROM, mens WHERE og tilhørende betingelse er valgfri. Etter SELECT kan

Detaljer

1. Innføring i bruk av MySQL Query Browser

1. Innføring i bruk av MySQL Query Browser Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Innføring i bruk av MySQL Query Browser Kjell Toft Hansen 28.02.2007 Lærestoffet er utviklet for faget LV338D Databaseadministrasjon 1. Innføring

Detaljer

1. Relasjonsmodellen. 1.1. Kommentarer til læreboka

1. Relasjonsmodellen. 1.1. Kommentarer til læreboka Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Relasjonsmodellen Tore Mallaug 2.9.2013 Lærestoffet er utviklet for faget Databaser 1. Relasjonsmodellen Resymé: Denne leksjonen gir en kort

Detaljer

INF1300 SQL Structured Query Language del 1. Stoff som blir/ble forelest i oktober 2013

INF1300 SQL Structured Query Language del 1. Stoff som blir/ble forelest i oktober 2013 INF1300 SQL Structured Query Language del 1 Stoff som blir/ble forelest i oktober 2013 Dagens tema SQLs definisjonsspråk SQLs spørrespråk select-from-where distinct order by SQLs manipulasjonsspråk Indekser

Detaljer

Systemutvikling fra kjernen og ut, fra skallet og inn

Systemutvikling fra kjernen og ut, fra skallet og inn Systemutvikling fra kjernen og ut, fra skallet og inn Løsninger til oppgaver i kap A.10 i Appendiks A - SQL Legg merke til at oppgave 22 er blitt noe presisert. 1. Hvor mange innbyggere er det i Norge?

Detaljer

UNIVERSITETET. triggere og views. Institutt for Informatikk. INF Arne Maus 1

UNIVERSITETET. triggere og views. Institutt for Informatikk. INF Arne Maus 1 UNIVERSITETET IOSLO SQL: Integritetsregler, triggere og views Institutt for Informatikk INF3100 28.2.2012 Arne Maus 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet fremmednøkler

Detaljer

SQL Structured Query Language

SQL Structured Query Language SQL Structured Query Language Mer SQL: kandidat-, primær- og fremmednøkler Definere tabeller med integritetsregler Hente data fra tabeller select-from-where distinct order by Eksempler kjøres i PostgreSQL

Detaljer

Datamodellering og databaser SQL, del 2

Datamodellering og databaser  SQL, del 2 http://www.aitel.hist.no/fag/_dmdb/ SQL, del 2 Eksempelbase side 2 Virtuelle tabeller (views) side 3-6 NULL-verdier side 7-14 UPDATE-setningen side 15-16 INSERT-setningen side 17 DELETE-setningen side

Detaljer

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Underbegreper og underbegrepsskranker Kombinerte totale roller Ekvivalente stier og joinskranker Behandling av tid Informasjonsbærende

Detaljer

Dataorientert modellering

Dataorientert modellering INF2120 Dataorientert modellering Ragnar Normann 9. mars 2005 INF2120 Prosjekt i modellering 1 Dataorientering og UML UML har som utgangspunkt et objektorientert syn på tilværelsen hvor oppførsel og samspill

Detaljer

Språk for dataorientert modellering

Språk for dataorientert modellering Språk for dataorientert modellering Hva forvirrer studentene minst, ORM/NIAM eller UML-stereotyper? (Omkamp mellom «Rundinger» og «Firkanter») Ragnar Normann (med god støtte av Gerhard Skagestein) 1 Bakgrunn

Detaljer

Repetisjon: Normalformer og SQL

Repetisjon: Normalformer og SQL IN2090 databaser og datamodellering Repetisjon: Normalformer og SQL Mathias Stang og Stein Michael Storleer 21. november 2018 1 Agenda Normalformer Funksjonelle avhengigheter Nøkler Finne hvilke normalformer

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Fra skranker til integritetsregler (restriksjoner) Klassifisering av integritetsregler Forekomstrestriksjoner Realisering av integritetsregler

Detaljer

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering

Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering IN2090 Databaser og datamodellering Repetisjon: (nesten) alt du trenger å kunne om ORM og realisering Mathias Stang (mjstang@ifi.uio.no) 19. november 2018 Agenda Hensikten med ORM-modellering Hva er lov

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: SQL SQLs spørrespråk: select-from-where distinct order by Indekser INF1300-15.10.2007 Ellen Munthe-Kaas 1 SQL The Intergalactic Dataspeak

Detaljer

Tabelldefinisjon og datamanipulering

Tabelldefinisjon og datamanipulering Tabelldefinisjon og datamanipulering Tabelldefinisjon med SQL og i utformingsvisning Datatyper Primærnøkler og fremmednøkler Entitetsintegritet og referanseintegritet Nullmerker, repetisjoner, standardverdier

Detaljer

INF1300 Introduksjon til databaser: SQL Structured Query Language. En første introduksjon Lysark til forelesning mandag 14.

INF1300 Introduksjon til databaser: SQL Structured Query Language. En første introduksjon Lysark til forelesning mandag 14. INF1300 Introduksjon til databaser: SQL Structured Query Language En første introduksjon Lysark til forelesning mandag 14. september 2009 Dagens tema SQLs definisjonsspråk SQLs spørrespråk select-from-where

Detaljer

Institutt for datateknikk. Fag TDT4145 Datamodellering og databasesystemer Løsningsforslag til øving 3: Algebra og SQL

Institutt for datateknikk. Fag TDT4145 Datamodellering og databasesystemer Løsningsforslag til øving 3: Algebra og SQL NTNU Norges teknisk-naturvitenskapelige Universitet Institutt for datateknikk og informasjonsvitenskap Fag TDT4145 Datamodellering og databasesystemer Løsningsforslag til øving 3: Algebra og SQL Side 1

Detaljer

Tilkobling og Triggere

Tilkobling og Triggere Tilkobling og Triggere Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 12, 2011 1 / 25 Tilkobling med PHP PHP bruker databasespesifike moduler til å koble

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 6.desember 2010 Varighet: 0900-1200 Fagnummer: Fagnavn: Klasse(r): LC238D Datamodellering og databaser HING2009HA

Detaljer

EKSAMEN 6102 / 6102N DATABASER

EKSAMEN 6102 / 6102N DATABASER EKSAMEN 6102 / 6102N DATABASER 06.12.2016 Tid: 4 timer (10-14) Målform: Sidetall: Hjelpemidler: Merknader: Vedlegg: Bokmål / nynorsk 13 (inkludert denne) Ingen Ingen Eksempeltabeller Sensuren finner du

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 4.mai 2011 Varighet: 0900-1300 Emnekode: Emnenavn: Klasse(r): LO191D / LC191D Campus: LC191D Videregående

Detaljer

EKSAMEN DATABASER

EKSAMEN DATABASER EKSAMEN 6102 DATABASER 30.05.2016 Tid: 4 timer (9-13) Målform: Sidetall: Hjelpemidler: Merknader: Vedlegg: Bokmål 7 (inkludert denne) Ingen Ingen Eksempeldata Sensuren finner du på StudentWeb. Vekting

Detaljer

Databaser kort intro. Tom Heine Nätt

Databaser kort intro. Tom Heine Nätt Databaser kort intro Tom Heine Nätt Agenda Hva er en database? Hva er SQL? Hente ut data fra en database SELECT Behandle data i en database (kort) CREATE TABLE, INSERT, UPDATE, DELETE Databaser med flere

Detaljer

Normalisering. Hva er normalisering?

Normalisering. Hva er normalisering? LC238D http://www.aitel.hist.no/fag/_dmdb/ Normalisering Hva er normalisering? side 2 Normaliseringens plass i utviklingsprosessen side 3 Eksempel side 4 Funksjonell avhengighet side 5-6 Første normalform

Detaljer

Eksamen i Internetteknologi Fagkode: IVA1379

Eksamen i Internetteknologi Fagkode: IVA1379 Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: IVA1379 Tid: Mandag, 07.06.04, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 4 oppgaver

Detaljer

Informasjonsbærende representasjoner

Informasjonsbærende representasjoner UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Underbegreper Underbegrepsskranker Kombinerte totale roller Ekvivalente stier og joinskranker Behandling av tid Informasjonsbærende

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Underbegreper Underbegrepsskranker Ekvivalente stier og joinskranker Behandling av tid Informasjonsbærende representasjoner INF1300

Detaljer

INF1300 Introduksjon til databaser: SQL Structured Query Language. En første introduksjon Lysark til forelesning onsdag 22.

INF1300 Introduksjon til databaser: SQL Structured Query Language. En første introduksjon Lysark til forelesning onsdag 22. INF1300 Introduksjon til databaser: SQL Structured Query Language En første introduksjon Lysark til forelesning onsdag 22. september 2010 Dagens tema SQLs definisjonsspråk SQLs spørrespråk select-from-where

Detaljer

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Underbegreper Underbegrepsskranker Kombinerte totale roller Ekvivalente stier og joinskranker Behandling av tid Informasjonsbærende

Detaljer

INF 329: Web-Teknologier. Dataimplementasjon. Fra Kapittel 11 i «Designing Data-Intensive Web Applications» Presentasjonsdato: 17/10/2004

INF 329: Web-Teknologier. Dataimplementasjon. Fra Kapittel 11 i «Designing Data-Intensive Web Applications» Presentasjonsdato: 17/10/2004 INF 329: Web-Teknologier Dataimplementasjon Fra Kapittel 11 i «Designing Data-Intensive Web Applications» Presentasjonsdato: 17/10/2004 av: Dag Viggo Lokøen (dagvl@ii.uib.no) Kent Inge F. Simonsen (kentis@ii.uib.no)

Detaljer

Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember :30 18:30 (4 timer)

Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember :30 18:30 (4 timer) Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember 2018 14:30 18:30 (4 timer) 1. Eksterne skranker (5%) I modellene nedenfor (ORM2) skal

Detaljer

Ekvivalente stier (Equivalence of Path, EOP) i storm

Ekvivalente stier (Equivalence of Path, EOP) i storm Ekvivalente stier (Equivalence of Path, EOP) i storm Dette er ikke rett fram, derfor denne beskrivelsen. Vi tar utgangspunkt i følgende modell for kinoer og kinoforestillinger: Bilde 1 ORM2 modell I bildet

Detaljer

Høgskolen i Telemark EKSAMEN 6102 DATABASER 10.12.2015. Tid: 10-14. Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1

Høgskolen i Telemark EKSAMEN 6102 DATABASER 10.12.2015. Tid: 10-14. Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1 Høgskolen i Telemark EKSAMEN 6102 DATABASER 10.12.2015 Tid: 10-14 Målform: Sidetall: Hjelpemidler: Merknader: Bokmål/nynorsk 13 med forside Ingen Ingen Vedlegg: Eksempeldata til oppgave 1 Eksamensresultater

Detaljer

IN2090 Introduksjon til databaser

IN2090 Introduksjon til databaser UNIVERSITETET I OSLO IN2090 Introduksjon til databaser Dagens tema: Data, databaser og databasehåndteringssystemer Hva er data? Hva er informasjon? Fra idé til informasjonssystem Litt om modellering: Begreper

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1300 Introduksjon til databaser Eksamensdag: 30. november 2012 Tid for eksamen: 09.00 15.00 Oppgavesettet er på 5 sider. Vedlegg:

Detaljer

Obbligatorisk oppgave 2 Slektsdatabase

Obbligatorisk oppgave 2 Slektsdatabase Obbligatorisk oppgave 2 Slektsdatabase 5602 Databaser Gruppenavn LEK Lars- Martin Hejll Eirik Simensen Krister Moen 113495 113452 113055 H2011 Oppgave 1 Begrepsmessig datamodell (E/R- diagram) E/R- Diagram

Detaljer

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Institutt for datateknikk og informasjonsvitenskap Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Faglig kontakt under eksamen: Svein Erik Bratsberg: 99539963 Roger Midtstraum: 99572420

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser INF1300 Introduksjon til databaser Data (transiente, persistente) DBMS databser informasjon interesseområdet informasjonsmodeller informasjonssystemer Transiente og persistente data Når vi programmerer,

Detaljer

Dagens tema: Ringskranker Informasjonsbærende representasjoner Behandling av tid Tommelfingerregler

Dagens tema: Ringskranker Informasjonsbærende representasjoner Behandling av tid Tommelfingerregler UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Ringskranker Informasjonsbærende representasjoner Behandling av tid Tommelfingerregler Institutt for informatikk INF1300 21.09.2015

Detaljer

Notater: INF1300. Veronika Heimsbakk 8. januar 2013

Notater: INF1300. Veronika Heimsbakk 8. januar 2013 Notater: INF1300 Veronika Heimsbakk veronahe@student.matnat.uio.no 8. januar 2013 Innhold 1 ORM 3 1.1 Setningers aritet......................... 3 1.2 Faktatyper og broer i ORM................... 3 1.3

Detaljer

INF3100 Databasesystemer

INF3100 Databasesystemer INF3100 Databasesystemer Forelesere: Naci Akkök Ragnar Normann Mål: Kjennskap til databasesystemer Oppgaver og moduler Virkemåte Implementasjon Teoretiske og praktiske problemer INF3100-19-20.1.2004 -

Detaljer

Normalisering. Hva er normalisering?

Normalisering. Hva er normalisering? LC238D http://www.aitel.hist.no/fag/_dmdb/ Normalisering Hva er normalisering? side 2 Normaliseringens plass i utviklingsprosessen side 3 Eksempel side 4 Funksjonell avhengighet side 5-6 Første normalform

Detaljer

INF212 - Databaseteori. Kursinnhold

INF212 - Databaseteori. Kursinnhold INF212 - Databaseteori Forelesere: Naci Akkök Ellen Munthe-Kaas Mål: Kjennskap til databasesystemer Virkemåte Implementasjon Teoretiske og praktiske problemer INF212 v2003 1 Kursinnhold Databasedesign

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Data, databaser og databasehåndteringssystemer Data versus informasjon Beskrivelse av interesseområdet Begreper og representasjon av

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Ekvivalente stier Behandling av tid Informasjonsbærende representasjoner INF1300-17.9.2007 Ellen Munthe-Kaas 1 Stier Dette er en sti

Detaljer

INF1300 Introduksjon til databaser: SQL Structured Query Language

INF1300 Introduksjon til databaser: SQL Structured Query Language INF1300 Introduksjon til databaser: SQL Structured Query Language En første introduksjon Lysark til forelesning mandag 14. september 2009 SQL Structured Query Language SQL Structured Query Language er

Detaljer

Vegard Nossum. 21. oktober 2010

Vegard Nossum. 21. oktober 2010 ORM, UML og DL-Lite A,id Vegard Nossum 21. oktober 2010 Plan Introduksjon til ORM-modellering Formalisering av ORM og UML Litt om kompleksitet ORM-modellering: Begreper og forekomster Begreper tegnes som

Detaljer

Universitetet i Bergen Det matematisk-naturvitenskapelige fakultet. Løsningsforslag

Universitetet i Bergen Det matematisk-naturvitenskapelige fakultet. Løsningsforslag 1 Universitetet i Bergen Det matematisk-naturvitenskapelige fakultet Løsningsforslag Eksamen i emne INF115 Databaser og modellering Tirsdag 31. mai 2016 Tid: 9:00 12:00 Tillatte hjelpemidler: Ingen Oppgavesette

Detaljer

SQL. ISO SQL-standardene. Structured Query Language. Bruk av SQL. En innledende kommentar SQL-89 SQL-92 SQL:1999

SQL. ISO SQL-standardene. Structured Query Language. Bruk av SQL. En innledende kommentar SQL-89 SQL-92 SQL:1999 ISO SQL-standardene SQL Structured Query Language SQL-89 o Originalstandarden o Addendum for Embedded SQL (1994) SQL-92 o ISO/IEC 9075 SQL Database Databasetjener (Oracle) SQL:1999 o ISO/IEC 9075:1999

Detaljer