1. Relasjonsmodellen Kommentarer til læreboka
|
|
|
- Jørn Mikalsen
- 10 år siden
- Visninger:
Transkript
1 Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Relasjonsmodellen Tore Mallaug Lærestoffet er utviklet for faget Databaser 1. Relasjonsmodellen Resymé: Denne leksjonen gir en kort innføring i relasjonsmodellen (eller relasjonsdatamodellen) ved å henvise til lærebokas kap. 2. Bruken av primær- og fremmednøkler nevnes. Til slutt et lite eksempel. Innhold 1.1. KOMMENTARER TIL LÆREBOKA VALG AV NØKLER I TABELLER Primærnøkkel Fremmednøkkel REFERANSEINTEGRITET Innsetting av et nytt tuppel i Fagvalg Sletting av tupler fra tabellene Student, Fag og Fagvalg AUTOMATISK GENERERT PRIMÆRNØKKEL ET LITE EKSEMPEL Tabeller med nøkler Dataintegritet Bruk av data i tabellene Kommentarer til læreboka Les hele kapittel Alle begrepene i figur 2.1 er essensielle for forståelsen av hvordan relasjonsdatabaser er bygd opp (unntatt begrepet relasjonens grad som brukes lite). Begrepsforståelsen her er viktig for resten av kurset, ikke minst når du skal skrive spørringer i SQL (senere leksjoner), men også i de andre leksjonene i kurset (f.eks. normalisering og oversetting fra ER-diagram). Med andre ord: disse begrepene må du kunne på eksamen! Men du har fortsatt noen uker på å lære deg disse, så alt trenger ikke å sitte støpt etter å kun ha lest kapittel 2. Vi har brukt begreper relasjon i dette kapittelet fordi dette er mest i trå med det matematiske begrepet, relation, som relasjonsmodellen bygger på. I praksis vil en relasjon være det samme som en tabell i MS Access eller andre relasjonsdatabasesystem. Det er enklere å snakke om tabeller med tupler (eller poster om du vil) og attributter enn relasjoner. I kap. 2 brukes relasjon for å unngå forvirring.
2 Relasjonsmodellen side 2 av 5 Merk deg at på norsk, for eksempel i den norske versjonen av MS Access, brukes ofte ordet relasjon misvisende som oversetting av det engelske relationship. Vi har valgt å oversette relationship til sammenheng (brukes senere i kurset). I databasefaget er det dessverre flere ord som egentlig betyr det samme, så det kan bli litt begrepsforvirring i starten. Dette går seg til etter hvert. Merk deg ellers bruken av ulike typer nøkler (kap. 2.4), spesielt primær- og fremmednøkler. Disse to nøklene er essensiell for god tabelldesign. Kap. 2.5 omtales som eget punkt under (les kommentarene der) Valg av nøkler i tabeller Primærnøkkel Det er god databasedesign å la alle tabellene i en relasjonsdatabase ha en primærnøkkel. Primærnøkkelen må være entydig (unik) for alle tuplene i tabellen. Dette betyr i praksis at f.eks. etternavn ikke kan brukes som primærnøkkel fordi det kan forekomme flere personer med samme etternavnet i tabellen. Typisk vil en velge et entydig nummer som primærnøkkel, som ansattnr, varenr, strekkode, kundenr, kontonr eller fødselsnr (det siste krever imidlertid tillatelse fra Datatilsynet). Merk deg at slike id-nr ikke nødvendigvis trenger å være et heltall, det kan være en streng som godtar gitte kombinasjoner av tall og evt. bokstaver. Lovlige kombinasjoner blir attributtets domene. Det enkleste er å velge et enkeltattributt som primærnøkkel fremfor en sammensatt nøkkel. Av databasetekniske årsaker bør ikke en sammensatt nøkkel være for lang, bl.a. fordi primærnøkkelen ofte brukes til å lage indeksfiler (læreboka kap. 8). En sammensatt nøkkel med to attributter går bra, men man bør kanskje stoppe der. I mangel på en naturlig entydig nøkkel i en tabell velges ofte det boka kaller en surogatnøkkel. Dette er et ekstra attributt en legger til tabellen som kun har til funksjon å være primærnøkkel. For å gjøre denne unik velger man ofte å la datatypen til nøkkelen være en tellervariabel (eng. counter), som kan være et heltall som telles fortløpende oppover etterhvert som en legger inn nye tupler i tabellen. Typisk vil databasesystemet tilby funksjonalitet for å støtte opp rundt slike tellere (f.eks. at databasesystemet automatisk legger inn en verdi i feltet ved innsetting av et nytt tuppel) Fremmednøkkel En fremmednøkkel gir en referanse til en primærnøkkel i en annen tabell eller i samme tabell (rekursiv sammenhengstype læreboka kap. 6). Husk følgende: Et attributt kan både være en primærnøkkel og en fremmednøkkel Et attributt kan være en del av en sammensatt fremmednøkkel En tabell har bare en primærnøkkel, men kan ha mange fremmednøkler En fremmednøkkel må alltid referere til en primærnøkkel I datamodelleringsdelen av kurset kommer vi tilbake til bruk av fremmednøkler.
3 Relasjonsmodellen side 3 av Referanseintegritet Dataintegritet i kap. 2.5 er også viktig. Referanseintegritet sammen med bruk av fremmednøkler kan brukes til å unngå feil (inkonsistens) i en relasjonsdatabase. I eksemplet i figur 2.8 kan databasesystemet sjekke referanseintegriteten både ved innsetting og sletting av tupler i tabellen Fagvalg: Innsetting av et nytt tuppel i Fagvalg Ved innsetting av et nytt fagvalg-tuppel kan databasesystemet sjekke om studnr som lagres finnes i Student-tabellen (heretter Student). D.v.s. det er ikke lov å registrere et fagvalg for en student som ikke er registrert i Student. Eller sagt på en annen måte: En student må være registrert (lagret) i Student før en kan legge inn annen informasjon om vedkommende, som hvilke fag hun / han tar. Videre kan databasesystemet sjekke om fagkode finnes i Fag-tabellen. Dette blir samme argumentasjon som over. En student kan ikke ta et fag som ikke er registrert i Fag først Sletting av tupler fra tabellene Student, Fag og Fagvalg Hvis en ønsker å slette et student-tuppel fra Student er ikke dette mulig hvis studenten har tatt fag registrert i Fagvalg. Årsaken er at det vil bryte referanseintegriteten hvis en tillatter at Fagvalg inneholder studnr som er slettet fra Student. Hvis en skal slette en student uten å bryte refereanseintegriteten må en først slette alle tuplene i Fagvalg som refererer til studenten, så tuplet i Student. Det samme forholder gjelder for sletting av tupler i Fag. En kan ikke slette et fag som studenter har tatt. Da må en i så fall slette de aktuelle fagvalgene først. Sletting av tupler i Fagvalg er derimot problemløst. Det ødelegger ikke referanseintegriteten mellom de tre tabellene at tupler i Fagvalg slettes Automatisk generert primærnøkkel Valg av primærnøkkel i en tabell kan i praksis ofte være vanskelig. Kanskje det ikke finnes noe attributt som naturlig er entydig. I tillegg er det uheldig å endre verdien på en primærnøkkel, for eksempel hvis en har valgt kundenummer som primærnøkkel og man senere ønsker å endre på kundenummeret blir det fort mye rot. Derfor tilbyr de fleste relasjonsdatabasesystemer automatisk genererte primærnøkler som brukerne ikke trenger å tenke på. Dette er som regel et heltall (integer) som DBMS sørger for å holde entydig for alle tuplene i en tabell. Velg automatisk primærnøkkel i tilfeller hvor det ikke er noen annen naturlig nøkkel.
4 Relasjonsmodellen side 4 av Et lite eksempel Tabeller med nøkler La oss si vi ønsker å lage en liten relasjonsdatabase over kunder, varer og hvilke varer (ordrer) de ulike kundene kjøper / bestiller. Vi kan da opprette to tabeller; KUNDE og VARE. KUNDE-tabellen inneholder her dataene for å lage et kunderegister, mens VARE-tabellen inneholder en vareliste, eller produktliste om du vil. Tabellene kan se slik ut: KUNDE kundenr navn adresse telefon 1 Tore Mallaug Trondheim 2 Ole Olsen Moss 3 Eva Larsen Levanger VARE varenr varenavn pris 1 hammer kr 49,90 3 sag kr 79,00 4 slagbor kr 395,00 Understrekne attributt er valgte primærnøkler. KUNDE og VARE har ingen fremmednøkler. Datatypene til attributtene er ikke tatt med her. Vi trenger så en sammenheng (mellom KUNDE og VARE. Vi kan lage denne som en mangetil-mange sammenhengstype. Mange-til-mange i relasjonsmodellen krever en koblingstabell som vi kaller VARESALG. Denne sammenhenger gjør det mulig for en kunde å handle null, en eller flere varer. For hver handel blir fakturadato, antallet av varer som kjøpes registrert, pluss attributtet betalt som viser om antallet er betalt eller ikke (boolean datatype). Hvert tuppel i VARESALG kan være ei linje på en samlefaktura for kunden. Hver vare kan handles av ingen, en eller flere kunder. Tabellen: VARESALG ID Kundenr* Varenr* fakturadato antall betalt Ja Nei Nei Nei Nei I tabellen VARESALG har jeg latt databasesystemet (i dette tilfellet var det MS-Access) generere en primærnøkkel automatisk, her ID, siden det ikke finnes noen naturlig entydig
5 Relasjonsmodellen side 5 av 5 nøkkel her (kombinasjonen av Kundenr + Varenr er ikke entydig siden en kunde kan bestille samme varen flere ganger). * indikerer fremmednøkler. Dette betyr at hvert tuppel i VARESALG har en sammenheng til både en kunde i KUNDE og en vare i VARE. Fremmednøklene Kundenr og Varenr tilsvarer primærnøklene i henholdsvis KUNDE og VARE Dataintegritet Dataintegritet: Hvis vi inkluderer referanseintegritet i databasen har dette innvirkning på hvordan sletting av tupler i KUNDE og VARE må foregå. Referanseintegriteten medfører at det ikke er mulig å slette et tuppel som refereres av andre tupler i databasen. Her betyr det at det ikke er mulig å slette en kunde i KUNDE som har kjøpt varer. Kjøpene kunden har registrert i VARESALG må slettes først. Det er heller ikke mulig å slette en vare som kunder har kjøpt Bruk av data i tabellene Tabellene i databasen kan f.eks. brukes til å skrive ut fakturaer til kunder. F.eks. en faktura til kunde Tore Mallaug over ubetalte kjøp. KUNDEFAKTURA kundenr navn adresse varenr varenavn pris ID varenr fakturadato antall sum 1 Tore Mallaug Trondheim 4 slagbor kr 395, kr 395,00 3 sag kr 79, kr 395,00 Total sum: kr 790,00 Utskriften over er laget i rapportgeneratoren til MS-Access med data fra tabellene. Poenget med dette lille eksempelet er å vise: Det er mulig å skrive ut bare et utvalg av tuplene fra tabellene. Her er det skrevet ut kun tupler for kundenr=1 hvor betalt -attributtet i VARESALG er lik Nei (usann / false). Summeringsfelt (også kalt aggregat-felt) trenger i prinsippet ikke å lagres i tabellene. Disse kan regnes ut ved å summere attributtverdier i databasen. Så sum og totalt sum er altså ikke lagret i tabellene, men regnet ut på grunnlag av antall*pris. I enkelte tilfeller kan det riktignok være praktisk å lagre enkelt utregninger i databasen, f.eks. hvis en sum brukes veldig ofte av mange sluttbrukere av databasen.
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
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
1. Datamodellering. 1.1. Kommentarer til læreboka
Tore Mallaug 20.10.2009 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for fagene LN323D Databaser 1. Datamodellering Resymé: Denne leksjonen viser et par eksempler på ER-modellering
1. SQL spørringer mot flere tabeller
1. SQL spørringer mot flere tabeller Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL spørringer mot flere tabeller Tore Mallaug 29.9.2008 Lærestoffet er utviklet for faget Databaser
1. Normalisering Kommentarer til læreboka
Tore Mallaug 6.11.2007 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for fagene LN323D Databaser 1. Resymé: Denne leksjonen viser et eksempel på normalisering av en liten database.
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
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
Datamodellering 101 En tenkt høgskoledatabase
Datamodellering 101 En tenkt høgskoledatabase Spesifikasjoner for databasen vi skal modellere: Oversikt over studenter med: Fullt navn Klasse Studium Avdeling Brukernavn Fødselsdag Adresse Telefonnummer
Datamodellering: ER-modeller ER = Enitity-Relationship del 1: Notasjon og oversetting av ulike ER-modeller til tilsvarende relasjonsmodeller
LC238D http://www.aitel.hist.no/fag/_dmdb/ Datamodellering: ER-modeller ER = Enitity-Relationship del 1: Notasjon og oversetting av ulike ER-modeller til tilsvarende relasjonsmodeller ER-modellen, intro.
1. Introduksjon og bakgrunn
Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Introduksjon til Databaser 2 Tore Mallaug 28.8.2012 Lærestoffet er utviklet for faget Databaser 2 1. Introduksjon og bakgrunn Resymé: I denne
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
IN2090 Introduksjon til databaser
UNIVERSITETET I OSLO IN2090 Introduksjon til databaser Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Institutt for informatikk IN2090 26.9.2018!1 Relasjonsmodellen
Oppgave 3 - normalisering
Oppgave 3 - normalisering Løsningsforslag Oppgave 3 - løsning 22.10.2014 Øvelsesoppgave 3 1. Normaliser logisk skjema fra oppgave 1 og 2 (Læringssenter) 2. Normaliser logisk skjema fra seminarøvelsen (Nøsteelskere)
HØGSKOLEN I SØR-TRØNDELAG
HØGSKOLEN I SØR-TRØNDELAG AVDELING FOR TEKNOLOGI Institutt for databehandling Kandidat nr.: Eksamensdato: 09.05.2005 Varighet: 0900-1200 (3 timer) Fagnummer: LO323D Fagnavn: Databaser Klasse(r): NETT 2006V
INF1300 Introduksjon til databaser
UNIVERSITETET I OSLO Dagens tema: INF1300 Introduksjon til databaser Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Institutt for informatikk INF1300 12.9.2016 1 Relasjonsmodellen
En lett innføring i foreninger (JOINs) i SQL
En lett innføring i foreninger (JOINs) i SQL Noen ord om forening (JOIN)! 2 JOINs til gjennomgang! 3 1. INNER JOIN! 3 Eksempel på [INNER] JOIN! 4 NATURAL JOIN! 5 Eksempel på NATURAL JOIN! 5 2. LEFT [OUTER]
Kunnskapsorganisasjon og gjenfinning 1
Kunnskapsorganisasjon og gjenfinning 1 Normalisering Tine Lodberg Frost Normalisering 14.10.2014 Dagens forelesning Pensum Berget, G. (2010). Relasjonsdatabaser og datamodellering (3. utg.). Oslo: Høgskolen
Del 1: ER-modellering og databaseteori
Del 1: ER-modellering og databaseteori (a) ER-modellering Oppgavens del 1a er delt i tre deler. I første del skal det lages et ER-diagram for databasen til firmaet Sjokoladeland. Deretter skal det lages
EKSAMENSFORSIDE Skriftlig eksamen med tilsyn
EKSAMENSFORSIDE Skriftlig eksamen med tilsyn Emnekode: Emnenavn: DAT1000 Database 1 Dato: Tid fra / til: 13.05.2019 10.00 14.00 Ansvarlig faglærer: Bjørn Kristoffersen Campus: Fakultet: Bø Handelshøyskolen
Kunnskapsorganisasjon og gjenfinning 1. Relasjonsmodellen og -databaser
Kunnskapsorganisasjon og gjenfinning 1 Relasjonsmodellen og -databaser Tine L. Frost Relasjonsmodellen 17.09.2014 Dagens forelesning Pensum Berget, G. (2010). Relasjonsdatabaser og datamodellering (3.
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
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
OM DATABASER DATABASESYSTEMER
OM DATABASER DATABASESYSTEMER Begrepet database brukes på flere måter, og det er ikke uvanlig å bruke det for å angi en total samling av data (i dette tilfellet lagrede opplysninger) uavhengig av hvordan
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
INF3100 Databasesystemer
INF3100 Databasesystemer Relasjonsmodellen INF3100-18.1.2005 - Ragnar Normann 1 Relasjonsdatabasemodellen Datamodell Mengde av begreper for å beskrive strukturen til en database Relasjonsmodellen Databasen
Dagens tema: Oppdateringsanomalier Normalformer
UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer Institutt for informatikk INF300 08..0 [email protected] Hva kjennetegner god relasjonsdatabasedesign?
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
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
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
2. Beskrivelse av mulige prosjektoppgaver
Avanserte databaser (øving 9, 10, 11 & 12) Tore Mallaug 25.01.2008 Opphavsrett:Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO326D Avanserte Databaser INNLEVERINGSFRISTER (Obligatorisk
Løsningsforslag maskindatabasen på Ifi SQL og normalisering
Løsningsforslag maskindatabasen på Ifi SQL og normalisering Oppgave 1 select prosjektid, ansattid, dato, timer from Prosjekttimer where status = 'merknad' order by prosjektid, ansattid; Oppgave 2 Fra primærnøkkelen
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
UNIVERSITETET I OSLO. Relasjonsmodellen. Relasjoner og funksjonelle avhengigheter. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO Relasjonsmodellen Relasjoner og funksjonelle avhengigheter Institutt for Informatikk INF3100-23.1.2007 Ellen Munthe-Kaas 1 Relasjonsdatabasemodellen Datamodell Mengde av begreper for
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
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:
1. Designe ER-modeller med MS Visio
Kjell Toft Hansen 01.07.2009 Opphavsrett: Forfatter og AITeL Lærestoffet er utviklet for faget LO151D Informatikk 1- databaser 1. I dette notatet skal vi se på hvordan vi kan lage ER-modeller ved å bruke
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
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 9. juni 2008 Tid for eksamen: 14.30 17.30 Oppgavesettet er på 5 sider. Vedlegg: Tillatte hjelpemidler: INF3100 Databasesystemer
9. ASP med databasekopling, del II
Else Lervik 23.03.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 9. Resymé: I forrige leksjon så vi hvordan ASP kunne brukes til å vise
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : INF3100/INF4100 Databasesystemer Eksamensdag : Tirsdag 8. juni 2004 Tid for eksamen : 09.00-12.00 Oppgavesettet er på : 5 sider
Innhold Forord Innledning Kapittel 1 Introduksjon til databaser og databasesystem
Innhold Forord....................................................... 5 Innledning.................................................... 15 Databaser som basis i grunnopplæringen....................... 15
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
Oppdateringsanomalier Normalformer
UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer Institutt for informatikk INF300 26.0.2009 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign?
Høgskolen i Telemark EKSAMEN 6102 DATABASER Tid: Hjelpemidler: Vedlegg: Eksempeldata til oppgave 1
Høgskolen i Telemark EKSAMEN 6102 DATABASER 02.12.2014 Tid: 10-14 Målform: Sidetall: Hjelpemidler: Merknader: Bokmål/nynorsk 13 med forside Ingen Ingen Vedlegg: Eksempeldata til oppgave 1 Eksamensresultater
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 -
INF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer INF300..007 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign? Relasjonene samler beslektet
Plenum: Nøkler, normalformer og funksjonelle avhengigheter
Plenum: Nøkler, normalformer og funksjonelle avhengigheter Mathias Stang 14. november 2017 1 Agenda Hva er god databasedesign? Atomære verdier Nøkler: Supernøkler, kandidatnøkler, primærnøkler, nøkkelattributter
Databaser. Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen
Databaser Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen Tema for dagen Hva er relasjonsalgebra? Seleksjon Projeksjon Produkt Indre forening Ytterforening Settoperasjoner: union, snitt, differanse
Normalformer or Normalisering 1NF, 2NF, 3NF, BCNF
Normalformer or Normalisering 1NF, 2NF, 3NF, BCNF Martin Giese 7. november 2018 1 Agenda Nytt eksempel Med funksjonelle avhengigheter 1NF (veldig kort) 2NF, Grundig Hva er vitsen? anomalier Få eksemplet
Databaser. - Normalisering -
Databaser - Normalisering - Innholdsfortegnelse 1. Normalisering... 2 1.1. Redundans... 2 1.2. Anomalier (uregelmessigheter etter oppdateringer i databasen)... 2 1.2.1. Innsettingsanomalier (Insertion
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
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
Å bruke Java API-et til å sortere tabeller/arraylister der elementene er (referanser til) objekter
Sortering og søking i Java-API-et Tabeller og Arraylister Comaparable Comparator equals() LC9D Videregående programmering Semesterplan: http://aitel.hist.no/fag/vprg/index_lc9d.php Høgskolen i Sør-Trøndelag,
IN3020 V2019 Obligatorisk oppgave nr. 1
IN3020 V2019 Obligatorisk oppgave nr. 1 Oppgavesettet skal løses og leveres individuelt. Gjennomføring og innlevering av oppgaven skal skje i henhold til gjeldende retningslinjer ved Institutt for informatikk,
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
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
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1300 Introduksjon til databaser Eksamensdag: 1. desember 2014 Tid for eksamen: 09.00 15.00 Oppgavesettet er på 5 sider. Vedlegg:
IN2090 Databaser og datamodellering. Databasedesign og normalformer
IN2090 Databaser og datamodellering Databasedesign og normalformer Evgenij Thorstensen [email protected] Universitetet i Oslo 1 / 43 Oversikt Gode og dårlige skjemadesign (og litt historie) Funksjonelle
HØGSKOLEN I SØR-TRØNDELAG
HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - Kandidatnr: AITeL Eksamensdato: 2.desember 2009 Varighet: 0900-1300 Emnekode: Emnenavn: Klasse(r): LO191D / LC191D LO191D Videregående programmering
Eksamen i Internetteknologi Fagkode: ITE1526
Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Torsdag 15.06.06, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 1 oppgave
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 2. desember 2013 Tid for eksamen: 09.00 15.00 Oppgavesettet er på 6 sider. Vedlegg: Tillatte hjelpemidler: INF1300
Eksamen i IBE 210 - Databaser H 2008
Avdeling for økonomi, informatikk og samfunnsfag Eksamen i IBE 210 - Databaser H 2008 Eksamensdag : 5 desember 2008 Tid : 9.00 13.00 Faglærer/telefonnummer : Arne Løkketangen 99690939 Hjelpemidler : Alle
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Prøveeksamen i : INF1300 Introduksjon til databaser Eksamensdag: leveringsfrist 11. november 2016 Oppgavesettet er på 5 sider. Vedlegg:
Oppdateringsanomalier. Normalformer. Institutt for informatikk INF
Oppdateringsanomalier Normalformer Institutt for informatikk INF300 7.0.04 Relasjonene samler beslektet informasjon Så lite dobbeltlagring som mulig Så få glisne relasjoner som mulig Korrekt totalinformasjon
Obligatorisk oppgave nr. 3 i INF1300 høsten 2009
Obligatorisk oppgave nr. 3 i INF1300 høsten 2009 Oppgaven er beregnet på å løses og leveres som et samarbeid mellom to studenter, men det er lov for dem som vil seg selv så vondt, å levere en individuell
HØGSKOLEN I SØR-TRØNDELAG
HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Målform: Eksamensdato: Bokmål 9.mai 202 Varighet/eksamenstid: 0900-300 Emnekode: Emnenavn: Klasse(r): Studiepoeng: LC9D/LO9D Videregående
Hvordan komme i gang med
Hvordan komme i gang med AvtaleGiro AvtaleGiro er et praktisk og lettvint system for faste betalingsoppdrag (FBO) som vi sterkt anbefaler at sentrene tar i bruk. Avtalegiro medfører at kundene trekkes
Introduksjon til fagfeltet
LC238D http://www.aitel.hist.no/fag/_dmdb/ Introduksjon til fagfeltet Datafiler side 2 Databasesystemer side 3-5 Databasearkitektur ANSI/SPARC side 6-7 Datamodeller side 8 Flerbruker databasesystem side
SQL og Mengdelære. Oracle, MySQL, Access, bruker forskjellige syntaks.
SQL og Mengdelære Oracle, MySQL, Access, bruker forskjellige syntaks. Kan vi beskrive, hva SQL er og hva man kan gjøre med SQL, uavhengig av konkret syntaks!!! Hvilke universale formelle språk har vi til
Relasjonsalgebraen. Algebra
Relasjonsalgebraen Definerer en mengde av operasjoner på relasjoner Gir oss et språk til å beskrive spørsmål om innholdet i relasjonene Språket er prosedyralt: Vi sier hvordan svaret skal beregnes. Alternativet
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : INF3100/INF4100 Databasesystemer Eksamensdag : Tirsdag 8. juni 2004 Tid for eksamen : 09.00-12.00 Oppgavesettet er på : 5 sider
Posisjonsystemet FRA A TIL Å
Posisjonsystemet FRA A TIL Å VEILEDER FOR FORELDRE MED BARN I 5. 7. KLASSE EMNER Side 1 Innledning til posisjonsystemet P - 2 2 Grunnleggende om posisjonsystemet P - 2 3 Titallsystemet P - 3 4 Posisjonsystemet
I denne veiledningen skal vi gå igjennom de forskjellige funksjonene som. For å gå til abonnementet ditt klikker du på den blå fanen "Abonnement":
Administrere abonnementet I denne veiledningen skal vi gå igjennom de forskjellige funksjonene som er tilgjengelige for administrator av et abonnement på web. 1 Gå til abonnementet ditt For å gå til abonnementet
Oversikt over kryptografi
Oversikt over kryptografi Richard Williamson 3. desember 2014 Oppgave 1 Person A ønsker å sende meldingen Ha det! til person B, og ønsker å benytte RSAalgoritmen for å kryptere den. Den offentlige nøkkelen
Normalisering. Partielle avhengigheter Transitive avhengigheter Normalformer: 1NF, 2NF, 3NF, BCNF Normaliseringsstegene Denormalisering
Normalisering Motivasjon Redundans Funksjonelle avhengigheter Determinanter Partielle avhengigheter Transitive avhengigheter Normalformer: 1NF, 2NF, 3NF, BCNF Normaliseringsstegene Denormalisering Pensum:
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
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-
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : INF3100/INF4100 Databasesystemer Eksamensdag : Onsdag 8. juni 2005 Tid for eksamen : 14.30 17.30 Oppgavesettet er på : 5 sider
INF1000 - Uke 10. Ukesoppgaver 10 24. oktober 2012
INF1000 - Uke 10 Ukesoppgaver 10 24. oktober 2012 Vanlige ukesoppgaver De første 4 oppgavene (Oppgave 1-4) handler om HashMap og bør absolutt gjøres før du starter på Oblig 4. Deretter er det en del repetisjonsoppgaver
SQL Introduksjonskurs. Oversikt
SQL Introduksjonskurs Oversikt Oversikt 2/7 Introduksjon til datamodellering Normalisering Logisk skjema til Database Strukturelle operasjoner Operasjoner mot data Kontrolloperasjoner Aggregering og indekser
1. SQL server. Beskrivelse og forberedelse til installasjon
Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL server. Beskrivelse og forberedelse til installasjon Stein Meisingseth 15.10.2014 Lærestoffet er utviklet for faget IDRI2001 Drift av
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
UNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Kandidatnr Eksamen i INF1000 Grunnkurs i objektorientert programmering Eksamensdag: Onsdag 1. desember 2010 Tid for eksamen: 14.00 18.00
ITGK - H2010, Matlab. Dagens tema : Teori - Databaser
1 ITGK - H2010, Matlab Dagens tema : Teori - Databaser 2 I dag Teori: Databaser Bok: 8.1 8.2 (8.1-8.4 i gamle bøker) Læringsmål Lære det grunnleggende om databaser Lære det grunnleggende om databasedesign
Produktrapport Gruppe 9
Forord Dette dokumentet er ment for personer som skal vedlikeholde, endre eller utvikle systemet. Produktdokument innholder informasjoner om programmets funksjoner og hvordan de fungerer. Før bruk av dette
Databasesystemer, oversikt
Databasesystemer, oversikt Evgenij Thorstensen V18 Evgenij Thorstensen Databasesystemer, oversikt V18 1 / 23 Kurset Databasesystemer og databaser. Databaser er abstrakte objekter (datastrukturer, spørrespråk).
Eksamensoppgave i TDT4145 Datamodellering og databasesystemer
Institutt for datateknikk og informatikk Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Faglig kontakt under eksamen: Roger Midtstraum: 995 72 420 Svein Erik Bratsberg: 995 39 963 Eksamensdato:
Objektorientering i ER-modeller EER-modeller Enhanced Entity Relationship Models
LC238D Datamodellering og databaser http://www.aitel.hist.no/fag/_dmdb/ Objektorientering i ER-modeller EER-modeller Enhanced Entity Relationship Models Oppsummering: Å oversette fra ER- til relasjonsmodell
Andre sett obligatoriske oppgaver i INF3100 V2013
Andre sett obligatoriske oppgaver i INF3100 V2013 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser,
HØGSKOLEN I SØR-TRØNDELAG
HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 7.desember 2009 Varighet: 0900-1200 Fagnummer: Fagnavn: Klasse(r): LC238D Datamodellering og databaser HING2008HA
