Databaser. Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen
|
|
|
- Ellinor Aune
- 9 år siden
- Visninger:
Transkript
1 Databaser Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen
2 Tema for dagen Hva er relasjonsalgebra? Seleksjon Projeksjon Produkt Indre forening Ytterforening Settoperasjoner: union, snitt, differanse Grupperingsoperatoren divisjon Hva er en relasjonsdatabase? Kjell Toft Hansen 2
3 Hva er relasjonsalgebra? Relasjonsalgebra er et matematisk system bestående av: Atomiske operander: relasjoner eller variabler som representerer relasjoner Operatorer: designet for å gjøre de mest vanlige operasjonene vi har behov for å gjøre med relasjoner i en database Et sett med operasjoner som utføres på relasjoner Resultatet er alltid en ny relasjon Kjell Toft Hansen 3
4 Hva er relasjonsalgebra? De egentlige algebraoperatorene: seleksjon, projeksjon, produkt og forening Settoperatorene: union, snitt, differanse Grupperingsoperatoren: divisjon Kjell Toft Hansen 4
5 Hva er relasjonsalgebra? Et algebraisk uttrykk kan skrives slik: OPERASJON(R1:s:r:, R2:s:r:, RES::); R1 og R2 er relasjoner, RES er resultatrelasjonen s (selektor)uttrykker horisontalt utvalg (seleksjon) og r (reduktor)uttrykker vertikalt utvalg (projeksjon) Kjell Toft Hansen 5
6 Hva er relasjonsalgebra? Seleksjon, projeksjon, produkt, union og differanse er primitive fordi de øvrige kan uttrykkes ved hjelp av disse Bruker SELECT setningen til å utføre operasjonene i et SQL (Structered Query Language) basert databasesystem Med unntak av divisjon, er alle operatorene enkle å utføre i SQL Kjell Toft Hansen 6
7 Seleksjon Seleksjon (restriksjon): vi lager en ny relasjon ut fra bestemte tupler i en eksisterende relasjon Vi begrenser antall tupler SELECT(R1:s:r:, RES::); Kjell Toft Hansen 7
8 Seleksjon Tabell: Ansatt Skriv ut alle ansatte som har etternavnet Olsen og jobber i avdeling 1: SELECT(ANSATT:(etternavn= Olsen) AND (avd_nr = 1):r:, RES::); SQL: SELECT * FROM ansatt WHERE etternavn = 'Olsen' AND avd_nr = 1; RES Kjell Toft Hansen 8
9 Projeksjon Projeksjon (reduksjon): vi lager en ny relasjon ut fra bestemte attributter i en eksisterende relasjon Vi begrenser antall kolonner PROJECT(R1:s:r:, RES::); Kjell Toft Hansen 9
10 Projeksjon Tabell: Ansatt Skriv ut alle ansatte med ansatt_nr, etternavn og fornavn: PROJECT(ANSATT:s:ansatt_nr etternavn fornavn:, RES::); SQL: SELECT ansatt_nr, etternavn, fornavn FROM ansatt; RES Kjell Toft Hansen 10
11 Produkt (Kartesisk) produkt (kryssprodukt): lager en ny relasjon ved å sette sammen hver tuppel i R1 med hvert tuppel i R2 slik at R1 x R2 = RES Antallet attributter i resultatrelasjonen er lik summen av antall attributter i R1 og antall attributter i R2 og i rekkefølge Unntaket er attributter med samme navn som blir R1.a og R2.a CROSS(R1:s:r:, R2:s:r:, RES::) Kjell Toft Hansen 11
12 Produkt Tabell: Ansatt Tabell: Avdeling CROSS(ANSATT:s:r:, AVDELING:s:r:, RES::); Antall tuppler: 3 x 3 = 9 Antall attributter: = 9 SQL: SELECT * FROM ansatt, avdeling; Tabell: RES Kjell Toft Hansen 12
13 Indre forening (eng. inner join) Forening (eng. join): vi lager en ny relasjon med sammensettinger av tupler fra to relasjoner på et felles attributt, slik at hver sammensetting tilfredsstiller en gitt betingelse Ofte (ikke alltid) vil det felles attributtet være primærnøkkel i den ene relasjonen og fremmednøkkel i den andre Likhetsforening (eng. equijon): de to felles attributtene har samme verdi Naturlig forening (eng. natural join): det samme som likhetsforening, men duplikatattributtene er fjernet Kjell Toft Hansen 13
14 Indre forening (eng. inner join) JOIN(R1:s:r:k, R2:s:r:k, RES::); En resultattabell RES dannes når gitte attributter, spesifisert ved attributtlisten k, i R1 og R2, har samme verdi: R1.k = R2.k. En av de viktigste og nyttigste av relasjonsoperatorene Den mest brukte måte for å kombinere informasjon fra to eller flere tabeller Kjell Toft Hansen 14
15 Indre forening (eng. inner join) Tabell: Ansatt Tabell: Avdeling Skriv ut hvilke ansatte som jobber i hvilke avdelinger Naturlig forening: JOIN(ANSATT:s:r:avd_nr, AVDELING:s:avd_navn:avd_nr, R::); SQL: SELECT a.*, avd_navn FROM ansatt a, avdeling av WHERE a.avd_nr = av.avd_nr; SELECT a.*, avd_navn FROM ansatt a INNER JOIN avdeling av ON a.avd_nr = av.avd_nr; Tabell: RES Kjell Toft Hansen 15
16 Ytterforening (eng. outer join) Venstre ytterforening (eng. left outer join) Er en likhetsforening, men med det tillegg at alle tupler i venstre relasjon skal være med. Der det mangler sammenfallende verdier fra høyre relasjon, er attributtene fra høyre relasjon gitt NULL verdier Høyre ytterforening er tilsvarende LEFT OUTER JOIN(R1:s:r:k, R2:s:r:k; RES::); Kjell Toft Hansen 16
17 Ytterforening Tabell: Ansatt Tabell: Avdeling Skriv ut alle ansatte (også de som ikke jobbe i noen Avdeling) og hvilke avdelinger de jobber i Venstre ytterforening: LEFT-OUTER-JOIN(ANSATT:s:r:avd_nr, AVDELING:s:avd_navn:avd_nr, RES::); SQL: SELECT a.*, avd_navn FROM ansatt a LEFT JOIN avdeling av ON a.avd_nr = av.avd_nr; Tabell: RES Kjell Toft Hansen 17
18 Ytterforening Tabell: Ansatt Tabell: Avdeling Skriv ut alle ansatte og hvilke avdelinger (også de avdelinger som ikke har noen ansatte) de jobber i Høyre ytterforening: RIGHT-OUTER-JOIN(ANSATT:s:ansatt_nr etternavn fornavn adresse epost telefon:avd_nr, AVDELING:s:r:avd_nr avd_navn, RES::); SQL: SELECT a.ansatt_nr, etternavn, fornavn, adresse, epost, telefon, av.* FROM ansatt a RIGHT JOIN avdeling av ON a.avd_nr = av.avd_nr; Tabell: RES Kjell Toft Hansen 18
19 Settoperasjonen UNION Union lager en ny relasjon med tupler som finnes i den ene eller begge av to relasjoner. Relasjonene må være unionkompatible, dvs. at de har samme antallet attributter, og at attributtene er definert på samme verdidomene (har samme datatype) UNION(R1:s:r:k, R2:s:r:k, RES::); NB!! Alle duplikattupler blir fjernet Kjell Toft Hansen 19
20 Settoperasjonen UNION Tabell: Leverandor Tabell: Produkt Finn byer som har leverandører og/eller produkter : UNION(LEVERANDOR:s:r:lev_by, PRODUKT:s:r:prod_by, RES::lev_by); SQL: SELECT lev_by FROM leverandor UNION SELECT prod_by FROM produkt; RES Kjell Toft Hansen 20
21 Settoperasjonen SNITT Snitt (eng. intersect) lager en ny relasjon med tupler som finnes i begge av to relasjoner. Relasjonene må være unionkompatible. INTERSECT(R1:s:r:k, R2:s:r:k, RES::); NB!! Alle duplikattupler blir fjernet Kjell Toft Hansen 21
22 Settoperasjonen SNITT Tabell: Leverandor Tabell: Produkt Finn byer som har både leverandører og produkter INTERSECT(LEVERANDOR:s:r:lev_by, PRODUKT:s:r:prod_by, RES::lev_by); SQL (MySQL): SELECT DISTINCT lev_by FROM leverandor WHERE lev_by IN ( SELECT prod_by FROM produkt); RES Kjell Toft Hansen 22
23 Settoperasjonen DIFFERANSE Differanse (eng. difference) lager en ny relasjon med tupler som finnes i den første, men ikke i den andre av to relasjoner. Relasjonene må være unionkompatible DIFFERENCE(R1:s:r:k, R2:s:r:k, RES::); NB!! Alle duplikattupler blir fjernet Kjell Toft Hansen 23
24 Settoperasjonen DIFFERANSE Tabell: Leverandor Tabell: Produkt Finn byer hvor det er leverandører, men ikke produkter : DIFFERENCE(LEVERANDOR:s:r:lev_by, PRODUKT:s:r:prod_by, RES::lev_by); SQL (MySQL): SELECT DISTINCT lev_by FROM leverandor WHERE lev_by NOT IN ( SELECT prod_by FROM produkt); RES Kjell Toft Hansen 24
25 Grupperingsoperatoren DIVISJON Operatoren krever at vi har to relasjoner Den første må ha flere eller like mange tupler som relasjon to Den første relasjonen, R1, har to attributter eller attributtgrupper, g og c Tuplene i R1 grupperes på g Tuplene i R2 har attributter som er sammenlignbare med c Tuplenes c del i hver gruppe testes så mot alle tuplene i R2. Hvis all R2s tupler finnes for samme gruppe, vil gruppenes samlingsattributter g, inkluderes i resultatrelasjonen DIVISJON(R1:s:r:g:c, R2:s:r:c, RES:s:r); Kjell Toft Hansen 25
26 Grupperingsoperatoren DIVISJON Tabell: Produkt Tabell: Leveranse Finn hvilke leverandører som har leveranser av alle produktene: DIVISJON(LEVERANSE:s:lev_nr prod_nr:lev_nr:prod_nr, PRODUKT:s:prod_nr:prod_nr, RES::lev_nr); r:c g r c SQL: SELECT lev_nr FROM leverandor l WHERE NOT EXISTS ( SELECT * FROM produkt p WHERE NOT EXISTS ( SELECT * FROM leveranse le WHERE le.lev_nr = l.lev_nr AND le.prod_nr = p.prod_nr )); Velg leverandører slik at det ikke fins produkter som de ikke leverer Kjell Toft Hansen
27 Hva er en relasjonsdatabase? Relasjonsmodellen er et teoretisk fundament for databaser En database må tilfredsstille kravene i relasjonsmodellen for å kunne kalles en relasjonsdatabase Codd sier at et databasesystem er relasjonelt hvis det tilfredsstiller følgende kriterier: Brukeren av systemet skal oppfatte dataene som en samling med relasjoner (tabeller som tilfredsstiller visse krav), og intet annet. Systemet må minst tilby følgende operasjoner: seleksjon, projeksjon, forening (eng. join) uten på forhånd å måtte definere fysiske aksessveier for å kunne bruke disse operasjonene. I tillegg finnes det 12 detaljerte regler angående: datarepresentasjon, aksessveier, datakataloger, databasespråk, virtuelle relasjoner (eng. views), fysisk og logisk datauavhengighet og integritet. Men i henhold til denne definisjonen finnes det ikke relasjonelle systemer på markedet i dag. Dette er kontroversielt, men uansett så danner relasjonsmodellen en solid teoretisk basis og dernest utgjør definisjonen et mål å strekke seg etter Kjell Toft Hansen 27
INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1
INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1 Dagens temaer Relasjonsalgebraen Renavning Algebra Heltallsalgebra Klassisk relasjonsalgebra Mengdeoperatorer Union Snitt
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
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
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]
Relasjonsalgebra. Hva?
Relasjonsalgebra. Hva? Relasjonsalgebra består av et sett med høynivås operatorer som kan brukes til å manipulere med relasjoner (slå sammen to tabeller, selektere data etc.). Tankegangen er viktig å kjenne
INF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Relasjonsalgebraen Oversettelse av select-from-where til relasjonsalgebra SQL: union, snitt, differanse, kartesisk produkt INF1300 22.10.2007
UNIVERSITETET I OSLO SQL. Structured Query Language. (The intergalactic dataspeak) Institutt for Informatikk. INF Ragnar Normann 1
UNIVERSITETET I OSLO SQL Structured Query Language (The intergalactic dataspeak) Institutt for Informatikk INF3100 1.2.2005 Ragnar Normann 1 SQL SQL Structured Query Language er et deklarativt språk for
INF1300 Relasjonsalgebra. Et matematisk fundament for å forstå SQL-setninger
INF1300 Relasjonsalgebra Et matematisk fundament for å forstå SQL-setninger Innhold Relasjonsalgebraen Operatorene i relasjonsalgebraen Relasjonsalgebratolkning av select-setningen Kostbare operasjoner
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,
Join. Intuitivt: Skjøte sammen to relasjoner. Intuitivt: 1. Beregn R S 2. Velg ut de tuplene som tilfredsstiller joinbetingelsen C
Join Intuitivt: Skjøte sammen to relasjoner R S C Intuitivt: 1. Beregn R S 2. Velg ut de tuplene som tilfredsstiller joinbetingelsen C Join Bistro bn mkat A kosher A vegetabilsk B uten melk B hallal B
Innhold Forord Innledning Kapittel 1 Introduksjon til databaser og databasesystem
Innhold Forord....................................................... 5 Innledning.................................................... 15 Databaser som basis i grunnopplæringen....................... 15
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
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
Spørsmålskompilering del 1
UNIVERSITETET I OSLO Spørsmålskompilering del 1 Parsering Logiske spørreplaner uttrykt i relasjonsalgebra Optimalisering ved hjelp av algebraiske lover Institutt for Informatikk INF3100 - V18 - Evgenij
Spørsmålskompilering del 1
UNIVERSITETET I OSLO Spørsmålskompilering del 1 Parsering Logiske spørreplaner uttrykt i relasjonsalgebra Optimalisering ved hjelp av algebraiske lover Institutt for Informatikk INF3100-11.4.2016 - Ellen
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 RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas
UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et språk til å beskrive spørsmål om
En liten rekap. Spørrespråk. I dag SELECT
[Kurssidene] [ ABI - fagsider bibin ] Michael Preminger ([email protected]) 06/11-15 Databaser høsten 2015 En liten rekap ER-diagram - vi modellerer dataene våre til danne best mulig grunnlag for informasjonen
UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk INF3100-8.2.2010 Ellen Munthe-Kaas 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et
UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas
UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk INF3100-2.2.2015 Ellen Munthe-Kaas Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et
SQL, del 1 - select. Hva er SQL?
LC238D http://www.aitel.hist.no/fag/_dmdb/ SQL, del 1 - select Hva er SQL? side 2 Eksempelbase side 3 SELECT-setningen, syntaks side 4-5 Operatorer side 6 Å hente ut et radintervall fra resultatsettet
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
Emnenavn: Ny/utsatt eksamen. Eksamenstid: Faglærer: Edgar Bostrøm. Erik Åsberg. Davide Roverso
Høgskolen i østfold EKSAMEN Emnekode: Emnenavn: ITF301415 Store datamengder: analyse og prosessering Ny/utsatt eksamen Dato: Eksamenstid: 20.05.2016 09:00-12:00 Hjelpemidler: Ingen Faglærer: Edgar Bostrøm
SQL Structured Query Language. Repetisjon av select spørringer Nestede select spørringer Mengdeoperasjoner Views Flere operatorer
SQL Structured Query Language Repetisjon av select spørringer Nestede select spørringer Mengdeoperasjoner Views Flere operatorer Generelt utseende av SQL-spørsmål select [ distinct ]
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
UNIVERSITETET I OSLO SQL. Structured Query Language. (forts.) Institutt for Informatikk. INF Ragnar Normann 1
UNIVERSITETET I OSLO SQL Structured Query Language (forts.) Institutt for Informatikk INF3100 7.2.2005 Ragnar Normann 1 null Resultatet av å evaluere et uttrykk som produserer en skalar verdi, kan være
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
SQL, del 1 - select. Hva er SQL?
LC238D http://www.aitel.hist.no/fag/_dmdb/ SQL, del 1 - select Hva er SQL? side 2 Eksempelbase side 3 SELECT-setningen, syntaks side 4-5 Operatorer side 6 Å hente ut et radintervall fra resultatsettet
LC238D Datamodellering og databaser SQL, del 1 - SELECT
LC238D http://www.aitel.hist.no/fag/_dmdb/ SQL, del 1 - SELECT Hva er SQL? side 2 Eksempelbase side 3 SELECT-setningen, syntaks side 4-5 Operatorer side 6 Å hente ut et radintervall fra resultatsettet
INF1300 Det meste av resten av SQL. Utleggsark v. 2.0
INF1300 Det meste av resten av SQL Utleggsark v. 2.0 Dagens temaer Sammenligning med tekstmønstre Aggregeringsfunksjoner Nestede spørsmål Gruppering Relasjonssammenligninger: View JDBC exists in any all
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
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
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
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
SELECT DISTINCT Fornavn, Etternavn, Programtittel FROM Program P, Medvirkende M, Deltagelse D. SELECT Tilgjengelighet FROM Program
[Kurssidene] [ ABI - fagsider bibin ] Michael Preminger ([email protected]) 10/11-15 DISTINCT Pregnante navn på kolonner Boolske operatorer: OR, NOT Beregningsfunksjoner og Gruppering NULL-verdier Maria
Tabeller og enkle spørringer
Tabeller og enkle spørringer Database, relasjonsdatabase Databasehåndteringssystem (DBHS) Databasesystem Tabell, kolonne, rad, datatype, verdi, primærnøkkel Utvalgsspørringer i SQL Velge ut rader Velge
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,
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
Spørringer mot flere tabeller
Spørringer mot flere tabeller Kartesisk produkt / kryssprodukt/krysskobling Likekoblinger INNER JOIN syntaks Generelle koblinger Egenkoblinger Ytre koblinger Union, snitt og differanse Mer om gruppering
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
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
INFO122 Innføring i databaser. Oblig 2. av Frode H. Pedersen, Kjartan B. Michalsen og Kristin Breivik
INFO122 Innføring i databaser Oblig 2 av Frode H. Pedersen, Kjartan B. Michalsen og Kristin Breivik a) For at en relasjonsmodell skal være på en viss normalform, må alle relasjoner oppfylle minst denne
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
SQL SELECT-FROM-WHERE. Skjemadefinisjon og datainnsetting i SQL. Semantikk bak ein-relasjons-spørring
SQL Språk for Skjemadefinisjon Spørringar Database-oppdateringar Svært høgnivå: i prinsippet skriv ein kva ein vil ha som resultat, utan å spesifisere korleis Sterk grad av optimalisering effektivt Skjemadefinisjon
UNIVERSITETET I OSLO SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language Institutt for Informatikk INF3100 3.2.2015 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
UNIVERSITETET I OSLO SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language Institutt for Informatikk INF3100 2.2.2012 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
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
UNIVERSITETET SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET IOSLO SQL Structured Query Language Institutt for Informatikk INF3100 8.2.2011 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer
Institutt for datateknikk og informasjonsvitenskap Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Eksamensdato: 23. mai 2013 Eksamenstid (fra-til): 09:00-13:00 Hjelpemiddelkode/Tillatte
Dagens program. Kunnskapsorganisasjon og gjenfinning 1. Spørring mot databaser: SQL 2 - Spørring mot flere tabeller 12.11.2014
Kunnskapsorganisasjon og gjenfinning 1 Spørring mot databaser: SQL 2 - Spørring mot flere tabeller SQL 2 - flere tabeller 12.11.2014 Dagens program SQL oppgave 2 - løsningsforslag Spørring mot flere tabeller
Alle attributter har NULL som mulig verdi. mulige verdier for integer: NULL, 0, 1, 2, 3...
NULL verdier Alle attributter har NULL som mulig verdi mulige verdier for integer: NULL, 0, 1, 2, 3... Dog mulig å lage tabeller med attributter som forbyr NULL Ulik bruk: manglende informasjon («vet ikke
SQL Structured Query Language
SQL Structured Query Language Litt tabellterminologi Definere tabeller Fylle tabeller med data Hente data fra tabeller select-from-where distinct order by Relasjoner terminologi relasjonsnavn Personale
INF1300 Introduksjon til databaser
UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Det meste av resten av SQL Sammenligning med tekstmønstre Aggregeringsfunksjoner Nestede spørsmål Gruppering Relasjonssammenligninger:
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.
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
Oppgave 1 Datamodellering 22 %
Side 1 av 8 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap LØSNINGSFORSLAG TIL EKSAMENSOPPGAVE I FAG TDT4145 DATAMODELLERING OG DATABASESYSTEMER Eksamensdato:
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
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
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
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
DBS18 - Strategier for Query-prosessering
Side 1 for Databaser DBS18 - Strategier for Query-prosessering søndag 22. mai 2016 13.03 Pensum 18.1-18.4, side 655-674, unntatt 18.4.4 og 18.4.5 En spørring som blir skrevet i et høynivå-språk, må bli
UNIVERSITETET I OSLO SQL. Structured Query Language. (forts.) Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language (forts.) Institutt for Informatikk INF3100 11.2.2008 Ellen Munthe-Kaas 1 null Resultatet av å evaluere et uttrykk som produserer en skalar verdi, kan
UNIVERSITETET SQL. Structured Query Language (forts.) Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET IOSLO SQL Structured Query Language g (forts.) Institutt for Informatikk INF3100 9.2.2009 Ellen Munthe-Kaas 1 null Resultatet av å evaluere et uttrykk som produserer en skalar verdi, kan
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
Oppgave 1 Datamodellering 25 %
Side 1 av 6 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap LØSNINGSFORSLAG TIL EKSAMENSOPPGAVE I FAG TDT4145 DATAMODELLERING OG DATABASESYSTEMER Eksamensdato:
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
LO118D Forelesning 3 (DM)
LO118D Forelesning 3 (DM) Mengder og funksjoner 27.08.2007 1 Mengder 2 Funksjoner Symboler x y Logisk AND, både x og y må være sanne x y Logisk OR, x eller y må være sann x Negasjon, ikke x x For alle
Romlig datamanipulering
Romlig datamanipulering Gunnar Tenge, 18.04.08 Romlige manipuleringsteknikker brukes i GIS-analyser. I denne artikkelen forklares alle manipuleringsteknikker som man kan forvente å finne i et GIS-program.
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
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
Relasjoner terminologi
Relasjoner terminologi Kopi av lysark fra forelesningen 1. september. Dette er utdrag fra et notat som snart blir publisert. Dette notatet egner seg bedre til repetisjon og selvstudium enn disse arkene.
UNIVERSITETET I OSLO SQL. Structured Query Language. Institutt for Informatikk. INF Ellen Munthe-Kaas 1
UNIVERSITETET I OSLO SQL Structured Query Language Institutt for Informatikk INF3100 9.2.2010 Ellen Munthe-Kaas 1 SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser
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
Avansert bruk av SQL. Avanserte spørringer Valguttrykk Spørring på spørring Unionspørringer Delspørringer, vekselvirkende delspørringer Kvantorer
Avansert bruk av SQL Avanserte spørringer Valguttrykk Spørring på spørring Unionspørringer Delspørringer, vekselvirkende delspørringer Kvantorer Begrensninger ved SQL Pensum: Kapittel 5 Databaser Leksjon
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
Obligatorisk oppgave 2 i Databaseadministrasjon.
Obligatorisk oppgave 2 i Databaseadministrasjon. Gruppenummer 7 Av Kai Hagali Ole J. Schön Cato Goffeng Høgskolen i Østfold 8. Oktober 2012 1 Avklaring vedrørende gruppesammensetning. I forbindelse med
SQL: SELECT-spørringer
SQL: SELECT-spørringer Evgenij Thorstensen V18 Evgenij Thorstensen SQL: SELECT-spørringer V18 1 / 29 Relasjonsalgebra, recap Tre hovedoperatorer i tillegg til mengdeoperatorer: Seleksjon σ θ Projeksjon
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
SQL. SQL-standarder. Flere standarder: ANSI SQL SQL2 (SQL-92) SQL3 (SQL-99) = SQL2 + objekt-relasjonelle egenskaper mm
SQL SQL Structured Query Language er et deklarativt språk for spørringer mot relasjonsdatabaser Uttrykkskraften er omtrent som den i relasjonsalgebraen utvidet med tilleggsoperatorene SQL inneholder også
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
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
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
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
Spørsmålskompilering. Basert på foiler av Hector Garcia-Molina
Spørsmålskompilering Basert på foiler av Hector Garcia-Molina Oversikt: Fra spørring til resultat SQL spørring parsere parseringstre konvertere resultat logiske spørreplaner (LSPer) anvende lover forbedrede
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
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
Andre sett obligatoriske oppgaver i INF3100 V2012
Andre sett obligatoriske oppgaver i INF3100 V2012 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser,
