Databaser Obligatorisk opgave 2 Vejledende løsning
|
|
|
- Susanne Christiansen
- 10 år siden
- Visninger:
Transkript
1 University of Southern Denmark Department of Mathematics and Computer Science Databaser Obligatorisk opgave 2 Vejledende løsning Afleveres senest: Søndag d. 5. maj kl 23.59
2 Spilleregler Denne obligatoriske opgave indeholder 3 opgaver, der alle skal besvares. Hvis ikke der er gjort et anstændigt forsøg på at løse alle opgaver, vil den ikke blive godkendt. Opgaven skal besvares individuelt (det er altså ikke en gruppeopgave). Besvarelsen afleveres via Blackboard senest søndag d. 5. maj kl Er din besvarelse ikke afleveret inden, betragtes dette som udeblivelse fra eksamen. Din besvarelse skal uploads som én pdf fil, hvor dit navn tydeligt fremgår af den første side. Du skal uddybe dine besvarelser, med beskrivende tekst, men du behøver ikke at gentage opgavens tekst i din besvarelse. Det kan tage lang tid at lave pæne elektroniske figurer af B+træer og hashtabeller 1. Det er derfor ikke et krav at det er lavet elektronisk; en scannet håndskrevet løsning er helt fin. 1 SQL (35%) Betragt følgende relationer, med tilhørende data, der findes i filen: airline.sql: Flights(flno, origin, destination, distance, departs, arrives, price) Aircraft(aid, aname, crusingrange ) Certified (eid, aid) Employees( eid, ename, salary) Bemærk at der både er piloter og andre ansatte i Employees relationen. Enhver pilot er certificeret til at flyve mindst ét fly, og kun piloter er certificeret til at flyve. Skriv følgende forespørgsler i SQL, og angiv også resultatet fra datasættet, når du udfører forespørgslen. 1. For hver pilot, der er certificeret til at flyve mere end 3 fly, find eid, og maksimum crusing range for de fly piloten er certificeret til. 2. Find navnene på piloter, hvis løn er mindre end prisen på den billigste rute fra Los Angeles til Honolulu 3. Udskriv navnene på piloter, der kan flyve et fly med crusingrange større end 3000, men ikke er certificeret til at flyve noget Boing fly. 1 Forelæseren har brugt Pencil ( og filerne til figurerne kan findes på kursets hjemmeside, mens dia ( eller OpenOffice Draw ( også er set anvendt af andre. 2
3 1 SELECT C.eid, MAX (A.crusingrange) FROM Certified C INNER JOIN Aircraft A ON C.aid = A.aid GROUP BY C.eid HAVING COUNT (*) > 3 ; Som på datasættet giver følgende eid max SELECT DISTINCT E.ename FROM Employees E WHERE E.salary < ( SELECT MIN (F.price) FROM Flights F WHERE F.origin = Los Angeles AND F.destination = Honolulu ); Som på datasættet giver ename Milo Brooks 1 SELECT DISTINCT E.ename FROM Employees E INNER JOIN Certified C ON C.eid = E.eid INNER JOIN Aircraft A ON C.aid=A.aid WHERE A.crusingrange > 3000 AND E.eid NOT IN ( SELECT C1.eid FROM Certified C1 3
4 ); INNER JOIN Aircraft A1 ON C1.aid = A1.aid WHERE A1.aname LIKE Boeing% Med resultat ename Joseph Thompson Angela Martinez Lawrence Sperry William Jones Eric Cooper En typisk fejl her har været at lave følgende: SELECT DISTINCT E.ename FROM Employees E, Certified C, Aircraft A WHERE E.eid= C.eid AND A.aid =C.aid AND A.crusingrange > 3000 AND A.aname NOT LIKE %Boeing% ; Her er det fly der er har crusingrange større end 3000 ikke et boing fly, men piloten kan godt være certificeret til at flyve et boing fly Lav også et view der har følgende schema Pilots(eid, ename, salary) og indeholder alle piloter, men ikke andre ansatte. Gør så det er muligt at opdatere piloters f.eks. løn, ved at opdatere i viewet. Det kan laves således: CREATE VIEW pilots AS SELECT E.eid, E.ename, E.salary FROM employees E WHERE E.eid IN ( SELECT C.eid FROM certified C ); og kan opdateres således: CREATE RULE pilots_update AS ON UPDATE TO pilots DO INSTEAD UPDATE employees SET ename = NEW.ename, salary = NEW.salary, eid = NEW.eid WHERE employees.eid = OLD.eid; 4
5 Her kan man opdatere alle oplysningerne, ikke kun løn. Generelt er der flere der har brugt NATURAL JOIN. Det skal man passe på med, da forespørgslen kan ændres hvis der indsættes en kolonne i en af tabellerne med samme navn som en af de andre tabeller. Det anbefales at undlade at bruge NATURAL JOIN i produktionskode. 5
6 2 B+træ (25%) btree Exported at: Thu Apr :10:26 GMT+0200 (CEST) Tag udgangspunkt i følgende B+træ Primes Udfør de følgende operationer. Tag hver gang udgangspunkt i det originale træ fra figuren, ikke det der følger fra den foregående opgave. Beskriv hvad du gør, ikke bare træet efter operationen. Hvis det kun er en del af træet der påvirkes, er det i orden kun at tegne den del der påvirkes, så længe det er klart hvilken del det er. 1. Indsæt værdien 57 Der er plads i bladet, efter at der er søgt efter 57, så værdien kan indsættes uden ændringer i træets struktur. 1. Indsæt værdien 118 Efter søgning konstateres det at bladet er fyldt. Det skal derfor splittes, og nøglen 118 kopieres til forældreren. Den skal også splittes fordi den er fyldt, men her flyttes 112 til forældreren (roden). 6
7 1. Slet værdien 72 Ved at slette 72 bliver bladet for lidt fyldt, men vi kan låne fra højre blad. Herved skal søgenøglen i forældreren opdateres til Slet værdien 3 Når 3 skal slettes bliver bladet ugyldigt, da det ikke er halvt fyldt. Der kan ikke lånes en værdi fra søsteren, skal de to blade slåes sammen. I forældreren skal der fjernes en søgenøgle, og bliver derved for lidt fyldt. Her kan der lånes fra søsteren, og værdien i roden rettes ligeledes. Bemærk: Typisk fejl: Der er flere der har stoppet med en ugyldig indre knude. Derved er træet ikke gyldigt. 7
8 3 Hash strukturer (40%) extensible Extensible hashing Exported at: Sat Apr :07:35 GMT+0200 (CEST) Tag udgangspunkt i følgende extensible hashing struktur. Her anvender vi hashfunktionen h(x) = x for at gøre det simpelt. Extensible Hashing i = Udfør de følgende operationer. Tag hver gang udgangspunkt i den originale figur, ikke det der følger fra den foregående opgave. 1. Indsæt værdien Indsæt værdien Indsæt værdien
9 1 9
10 2 10
11 3 11
12 linear Linear hashing Exported at: Sat Apr :35:32 GMT+0200 (CEST) Tag udgangspunkt i følgende linear hashing struktur. h(x) = x for at gøre det simpelt. Linear Hashing Her anvender vi hashfunktionen i = 3 n = 5 r = Bem: f = 2 pmax = Udfør de følgende operationer. Tag hver gang udgangspunkt i den figur der opstår ved udførsel af de foregående opgaver. 1. Indsæt værdien Indsæt værdien Indsæt værdien Hint: Det er ikke nødvendigt at udvide lineært hvis strukturen er præcis 80% fyldt, først når det overstiges. 12
13 1 2 13
14 3 Bemærk: En typisk fejl er at det er værdien fra overflow siden der flyttes ned i den nye spand. Den skal først rykkes næste gang til spand med nummeret 6. Hvilket ses på de tre bagerste bits. 14
Take-home Eksamen. DM505 Design og programmering af databaser. Syddansk Universitet Institut for Matematik og Datalogi
Syddansk Universitet Institut for Matematik og Datalogi DM505 Design og programmering af databaser Take-home Eksamen Udleveret: 4. maj 2013, kl. 10:00 Afleveres senest: 5. maj 2013 kl 10.00 Forår 2013
Databaser Obligatorisk opgave 1
University of Southern Denmark Department of Mathematics and Computer Science Databaser Obligatorisk opgave 1 Afleveres senest: Lørdag d. 23. marts kl 23.59 Introduction Denne obligatoriske opgave indeholder
Eksamen 2013. Uden hjælpemidler - normeret til 60 minutter
ksamen 2013 Uden hjælpemidler - normeret til 60 minutter 1 er-diagram 1 /R iagram til relationelle model xported at: Mon May 13 2013 22:43:32 GMT+0200 (ST) Untitled etragt Page figur 1. Hvordan oversættes
Skriftlig Eksamen DM507 Algoritmer og Datastrukturer
Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Institut for Matematik og Datalogi Syddansk Universitet, Odense Tirsdag den 24. juni 2014, kl. 10:00 14:00 Besvarelsen skal afleveres elektronisk. Se
Danmarks Tekniske Universitet
Eksamen 005, F side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed:
Danmarks Tekniske Universitet
Eksamen 02105, F14 side 1 af 14 Danmarks Tekniske Universitet Skriftlig prøve, den 22. maj 2014. Kursusnavn: Algoritmer og datastrukturer 1 Kursusnummer: 02105 Hjælpemidler: Skriftlige hjælpemidler. Det
Skriftlig Eksamen DM507 Algoritmer og Datastrukturer
Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Institut for Matematik og Datalogi Syddansk Universitet, Odense Mandag den 6. juni 2016, kl. 15:00 19:00 Besvarelsen skal afleveres elektronisk. Se
Relationel Algebra og SQL
Relationel Algebra og SQL Indholdsfortegnelse Relationel Algebra og SQL...1 Indholdsfortegnelse...1 De oprindelige mængdeoperationer...2 1. UNION (foreningsmængde)...2 2. INTERSECTION (fællesmængde)...2
Tilgang til data. To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer.
Merging og Hashing Tilgang til data To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer. API for sekventiel tilgang (API =
Danmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning
Danmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning
Introduktion til SQL queries
Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til SQL queries Denne artikel beskriver nogle forskellige muligheder i SQL queries. Eksemplerne skulle gerne være standard SQL og virke i
Danmarks Tekniske Universitet
side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 2. maj 200. Kursusnavn Algoritmer og datastrukturer Kursus nr. 02326. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne:
Danmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne: Opgave
Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012
Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012 May 15, 2012 1 CONTENTS 2012 CONTENTS Contents 1 Kompleksitet 3 1.1 Køretid................................................ 3 1.2 Asymptotisk
Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:
Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra
Datalagring og formater
Datalagring og formater IT Universitetet i København 4. januar 2011 Eksamenssættet består af 6 opgaver med 15 spørgsmål, fordelt på 11 sider (inklusiv denne side). Det anbefales at læse opgaverne i rækkefølge,
Merging og Hashing (del I)
Merging og Hashing (del I) Tilgang til data To udbredte metoder for at tilgå data: Sekventiel tilgang Random access: tilgang via ID (også kaldet key, nøgle) for dataelementer. API for sekventiel tilgang
Views etc. Databaser
Views etc. Databaser Views Med Views kan vi gemme nogle af de lange select sætninger. I vores eksempel fra tidligere er det f.eks. forbundet med en del besvær at finde telefon nr og bilmærker for en sælger
Skriftlig Eksamen Algoritmer og Sandsynlighed (DM538)
Skriftlig Eksamen Algoritmer og Sandsynlighed (DM538) Institut for Matematik og Datalogi Syddansk Universitet, Odense Fredag den 25. januar 2013 kl. 1013 Alle hjælpemidler (computer, lærebøger, notater,
Eksamen, DSDS, efterår 2007
Eksamen, DSDS, efterår 2007 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech og Martin Elsman IT Universitetet i København 7. januar 2008 Alle hjælpemidler er tilladte, dog ikke
Database optimering - Indeks
Database optimering - Indeks Alle kender til dette irritations moment, hvor programmet man sidder og arbejder med, bare ikke er hurtigt nok. Selvom det kun drejer sig om få sekunder man sidder og venter,
1. Basal select med (stjerne)
1. Basal select med (stjerne) 1. List alle øltyper. a. select * from oltyper 2. List alle bryggerier a. select * from bryggeri 3. List alle Danmarks postnumre samt tilhørende by, landsdel og antal indbyggere
DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi
DATALOGISK INSTITUT, AARHUS UNIVERSITET Det Naturvidenskabelige Fakultet EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 12 (tolv) Eksamensdag: Tirsdag den 20. marts 2012, kl.
Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)
Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Institut for Matematik og Datalogi Syddansk Universitet, Odense Mandag den 7. juni 00, kl. 9 Alle sædvanlige hjælpemidler (lærebøger, notater, osv.)
Sortering. Eksempel: De n tal i sorteret orden
Sortering 1 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 34 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden
DB undervisning 01-01
Databaser... 2 Tabeller... 2 Redundans... 3 Første regel... 4 Anden regel... 4 Tredje regel... 5 Relationer... 5 Opskrift... 6 SQL sætninger til at oprette tabeller... 7 SQL sætninger til at indsætte data...
Database design for begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk Database design for begyndere Denne artikel beskriver hvordan man kommer fra ide til database design. Den stopper inden normal former. Den forudsætter
Danmarks Tekniske Universitet
Eksamen 0205, Forår 205 side af 5 Danmarks Tekniske Universitet Skriftlig prøve, den 22. maj 205. Kursusnavn: Algoritmer og datastrukturer Kursusnummer: 0205 Hjælpemidler: Skriftlige hjælpemidler. Det
Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach ([email protected]) 2002
Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach ([email protected]) 2002 På datalogi har vi en databaseserver, som de studerende på datalogi kan benytte til projekter og som også benyttes i forbindelse
De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML
SQL kap 6-7 + 17-20 DDL og DML 1 De vigtigste SQL-sætninger Data Definition Language (DDL) create table: opretter en ny tabel create unique index: tilføjer et index til en tabel drop table : sletter en
Begrænsninger i SQL. Databaser, efterår 2002. Troels Andreasen
Databaser, efterår 2002 Begrænsninger i SQL Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk
1. Redegør for Lister, stakke og køer mht struktur og komplexitet af de relevante operationer
1. Redegør for Lister, stakke og køer mht struktur og komplexitet af de relevante operationer på disse. Typer af lister: Array Enkelt linket liste Dobbelt linket Cirkulære lister Typer af køer: FILO FIFO
Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)
Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Institut for Matematik og Datalogi Syddansk Universitet, Odense Onsdag den 0. juni 009, kl. 9 Alle sædvanlige hjælpemidler (lærebøger, notater, osv.)
Sortering. Eksempel: De n tal i sorteret orden
Sortering 1 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 2 / 32 Sortering Input: Output: Eksempel: n tal De n tal i sorteret orden
DM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2019 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 10. april, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Sortering. De n tal i sorteret orden. Eksempel: Kommentarer:
Sortering Sortering Input: Output: n tal De n tal i sorteret orden Eksempel: Kommentarer: 6, 2, 9, 4, 5, 1, 4, 3 1, 2, 3, 4, 4, 5, 9 Sorteret orden kan være stigende eller faldende. Vi vil i dette kursus
En Kort Introduktion til Oracle
En Kort Introduktion til Oracle Henrik Bulskov 12. februar 2001 [email protected] 1 Start SQL*Plus... 1 1.1 TELNET... 1 1.2 WINDOWS SQL PLUS... 2 2 Kør et SQL-script... 3 3 Hjælp i SQL*Plus... 3 4 Editering
DM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2016 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 20. april, 2016 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Skriftlig eksamen i. Databaser. Vinter 2002/2003. Vejledende løsninger
Skriftlig eksamen i Databaser Vinter 2002/2003 Vejledende løsninger Dette eksamenssæt består af 5 nummererede sider (incl. denne). Der er 5 opgaver, som ved bedømmelsen tillægges følgende vægte: Opgave
SQL Server 2008 Spatiale eksempler. Plan & Miljø, GIS
SQL Server 2008 Spatiale eksempler Plan & Miljø, GIS Stråtækte bygninger SQL script udtræk og geokodning af stråtækte bygninger fra BBR. Geokodede bygninger er en forudsætning. NB! Frederikssund Kommune
Skriftlig eksamen i kurset. Informationssystemer
6. semester sundhedsteknologi Skriftlig eksamen i kurset Informationssystemer Der er 3 timer til at besvare opgaven. Alle hjælpemidler er tilladte. Skriv kort og præcist. Referer gerne til kursuslitteraturen.
Eksempel på en database: studenter, kurser, eksamener
Udvidet Programmering 1999 Forelæsning 20, fredag 12. november 1999 Relationsdatabaser: relationer, tupler, attributter Forespørgselssproget SQL Databasesystemet PostgreSQL Tilgang til relationsdatabaser
DM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2017 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 6. april, 2017 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
DM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2012 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 15. marts, 2012 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Eksamen, DSDS, efterår 2008
Eksamen, DSDS, efterår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 6. januar 2009 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.
SQL-opgaver 5 løsning
SQL-opgaver 5 løsning Diagrammet herunder viser, hvordan kildetabellerne gerne skal se ud efter at have løst de tidligere opgaver. Scriptet opgave_5.txt indeholder også disse tabelstrukturer og alle data,
Ruko SmartAir. Updater installation
Ruko SmartAir Updater installation Introduktion. Updateren er en speciel enhed som giver os mulighed for at tilføje, læse og skrive funktioner i en offline installation. Med læse og skrive funktionen kan
DM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 20. marts, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Indhold. Download driver... 2. Find version af Windows 8... 3. Hent drivers til Windows 8... 5. Udpak driver... 6
KB print Windows 8 installations guide DET KONGELIGE NATIONAL OG Indhold Download driver... 2 Find version af Windows 8.... 3 Hent drivers til Windows 8... 5 Udpak driver... 6 Windows 8 installation af
En opsamling af artefakter for Hotel Databasen som REST-service Bygger på Hotel opgaven i 8 trin
En opsamling af artefakter for Hotel Databasen som REST-service Bygger på Hotel opgaven i 8 trin Trin 1: Lav en Domain model Opgave beskrivelse - Scandic hotel kæde Lav en domain model af Hotel-kæden.
Indlæse GEDCOM-fil i FamilySearch og kopiere information til FamilyTree
Indlæse GEDCOM-fil i FamilySearch og kopiere information til FamilyTree (Oversat fra dokumentet Uploading GEDCOM Files and Copying the Information int Family Tree: http://broadcast.lds.org/elearning/fhd/product/en/handouts/gedcom.pdf)
Buildvejledning (Release, patch og testversion)
Buildvejledning (Release, patch og testversion) 1. Opdater Post deployment filen for SBSYS hoved databasen. 2. Deploy til SBSYS databasen. 3. Build - fra og med version 1.95.00.00 4. Udarbejd historik
