Databases (INFODB) 24 januari 2007



Vergelijkbare documenten
Tentamen Databases. 18 december :00-12:00, Educatorium Gamma

Tentamen Databases voor ica

Tentamen Databases voor iku

Databases (INFODB) 20 april 2010

Tentamen Databases voor ica

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

Tentamen Informatica 6, 2IJ60,

Tentamen Informatica 6, 2IJ60,

TI2500 Informatie en Datamodellering

Data Manipulatie. Query Talen. / Informatica

Relationele Databases 2002/2003

Relationele Databases 2002/2003

Relationele Databases 2002/2003

TI2505/TI2500 Informatie- en Datamodellering

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

TI2500 Informatie en Datamodellering

Databases - Inleiding

Structured Query Language (SQL)

Normaliseren versie 1.1

TI2500 Informatie en Datamodellering

SQL Aantekeningen 3. Maarten de Rijke 22 mei 2003

Introductie (relationele) databases

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica. Proeftentamen ISO (2R290), query-gedeelte, Oktober 2006

Relationele databanken

Datamodelleren en databases 2011

Les S-01: De basisbeginselen van SQL

EXAMEN juni 2018 Gegevensbanken

Ontwerp van Algoritmen: opgaven weken 3 en 4

ISO Query By Example

IN2105/IN2410 Databases

SQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd.

TU Delft TENTAMEN DATABASES. Opgaven IN2105/IN oktober uur. Er zijn 6 opgaven. maximale score 100 punten

SQL / Systeemanalyse

Databases en SQL Foundation (DBSQLF.NL)

SQL opgaven. Relationele model: Opgaven:

[TOETS SQL INLEIDING]

DBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd.

12. Meer dan één tabel gebruiken en sub-queries

(iii) Enkel deze bundel afgeven; geen bladen toevoegen, deze worden toch niet gelezen!

ISO SQL: Structured Query Language

Informatie & Databases

Normaliseren voor Dummies

1. Databanken. Wat is een databank? Verschillende opslagmethodes

Uitwerking 1 Uitwerkingen eerste deeltentamen Lineaire Algebra (WISB121) 3 november 2009

Het ontwerpen van een databaseschema

SQL: query taal met. woorden. ISO SQL: Structured Query Language. de SQL basis query structuur. voorbeeld: doel: intuitieve query taal

Miniles gegevensbanken bevragen met SQL

DBMS SQL. Relationele databases. Sleutels. DataBase Management System. Inleiding relationele databases. bestaan uit tabellen.

Koppeling met een database

Zelftest SQL Workshop

Les 2 Eenvoudige queries

Faculteit Elektrotechniek - Leerstoel ES Tentamen Schakeltechniek. Vakcode 5A050, 17 november 2004, 9:00u-12:00u

Oefening 1. Bedenk een voorbeeld van een vreemde sleutel die naar de eigen relatie verwijst.

Een introductie tot gegevensbanken

Les S-01: De basisbeginselen van SQL

databases & SQL - antwoorden

Informatica toets vwo 6 Databases

Het omzetten van een ER-diagram naar SQL

Thinking of development

EXIN Databases en SQL Foundation

Entiteit Zaken en gebeurtenissen waarvan gegevens moeten worden vastgelegd worden een entiteit genoemd: b.v. mens, voorstelling, auto.

SQL & Datamodelleren

Zelftest SQL Workshop

Hoofdstuk: 1 Principes van databases

F. TRUYEN - Informatiekunde QBE. MS Access

Zelftest SQL. Document: n0453test.fm 19/04/2012. ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium

Business Intelligence. Toepassing BI Database en Datawarehouse BI proces BI Organisatie Implementatie BI

DATABANKEN GILLES CALLEBAUT

V.2 Limieten van functies

Workshop 3x. Normaliseren. Normaliseren. Hiëarchische database ODBMS. Relationele database. Workshop 14 oktober A. Snippe ICT Lyceum 1

Hoofdstuk 1 - Eigenschappen

SQL STATEMENTS. Deze kolom kan grote stukken tekst aan en is bedoeld om tekst erin de plaatsen. Geheel getal, bijvoorbeeld 8, 63, 835 NUMERIC

6 A: = 26 m 2 B: = 20 m 2 C:

III.3 Supremum en infimum

ONBETWIST ONderwijs verbeteren met WISkunde Toetsen Voorbeeldtoetsen Lineaire Algebra Deliverable 3.10 Henk van der Kooij ONBETWIST Deliverable 3.

Oplossingen Datamining 2II15 Juni 2008

Inleiding Databases en Data Base Management Systems Tabellen Wat is SQL?... 5

Gebruikers Handleiding

Definitie: Een enkelvoudige weddenschap is het eenvoudigste type weddenschap. Je doet als het ware een

1 Vlaamse Wiskunde Olympiade : Tweede Ronde.

EMBEDDED SQL. Inleiding. Queries en update-opdrachten. Embedden en hostvariabelen

Transcriptie:

Departement Informatica en Informatiekunde, Faculteit Bètawetenschappen, UU. In elektronische vorm beschikbaar gemaakt door de TBC van A Eskwadraat. Het college INFODB werd in 2006/2007 gegeven door Dhr. Herlaar. Schrijf en formuleer duidelijk. Databases (INFODB) 24 januari 2007 Bij elke vraag wordt verwacht dat je laat zien hoe je aan het antwoord komt (tenzij anders wordt vermeld). Je mag uitsluitend originele indexcards met aantekeningen raadplegen. Gebruikte afko s: 2PL = two-phase locking BCNF = Boyce-Codd normaalvorm DP = dependency preserving FD = functional dependency RA = relationele algebra SQL = SQL (Structured Query Language) Opgave 1. Algemeen (20 punten) Bij de onderstaande vragen zijn er 0 of meerdere antwoorden correct. Je dient alle correcte antwoorden aan te geven. Een toelichting is niet noodzakelijk. Vraag 1: Welke van de onderstaande uitspraken zijn waar? A : Binnen een decompositie komt elk attribuut in maximaal één relatie voor. B : Bij een verliesvolle ( lossy ) decompositie verlies je tuples. C : Een functional dependency is een speciaal geval van een key. D : Een decompositie is alleen lossless als de decompositie de DP eigenschap heeft. E : De attributen van een candidate key vormen altijd een strikte deelverzameling van een superkey. Vraag 2: Welke van de onderstaande uitspraken zijn waar? A : BCNF is de ultieme normaalvorm in termen van het uitbannen van redundantie. B : Een relatieschema met twee attributen is altijd in 3NF. C : Een relatieschema met twee attributen is altijd in BCNF. D : Een relatieschema met twee attributen is altijd in 4NF. E : Bij het 3NF algoritme maak je eerst de closure van je FD verzameling. Vraag 3: Welke van de onderstaandei afleidingsregels voor FD s zijn geldig? A : X Z, X Y Y Z. B : X Z X Y, Y Z. C : XY Z, Y U XU Z.

D : X Y, XY ZU X Z. E : XY Z, U Y XU Z. Vraag 4: Stel we hebben een I/O-mechanisme volgens de principes immediate update en flush forced. Welke van de onderstaande uitspraken zijn waar? A : AFTER-images zijn van belang bij een recovery. B : Het schrijven van een update naar het externe geheugen vindt mogelijkerwijs plaats na de commit. C : Het regelmatig draaien van een checkpoint is niet zinvol. D : Bij een recovery kan een UNDO van sommige transacties noodzakelijk zijn. E : BEFORE-images zijn van belang bij een recovery. Opgave 2: Queries (20 punten) Een bedrijf dat gegevens bijhoudt over de woningmarkt heeft een database met daarin een tabel waarin gegevens over woningen worden bijgehouden en een tabel waarin de verkoop- transacties worden bijgehouden. Elke woning heeft een uniek objectnummer waaronder het bij het bedrijf bekend staat, een adres (inclusief huisnummer, toevoeging huisnummer en plaats), een type (vrijstaande woning, hoekwoning, tussenwoning, appartement), een woonoppervlakte, een grondoppervlakte, een bouwjaar en een beschrijving. Verkooptrans- acties hebben een verkoopprijs, een verkoopdatum en een referentie naar een woning op basis van het objectnummer. We gaan er in het onderstaande vanuit dat geen enkele tabel leeg is. Het databaseschema van de database is als volgt (primary keys zijn in cursief): Woning ( objectnr, adres, type, woonopp, grondopp, bouwjaar, beschrijving ) Verkoop ( objectnr, datum, verkoopprijs ) Gegeven zijn de volgende queries: Q1 : Geef de adressen van de woningen die ten minste één keer verkocht zijn. Q2 : Geef het bouwjaar van de oudste woning die op 23-01-2007 verkocht is. Q3 : Geef de adressen van de woningen die nooit verkocht zijn. Hieronder volgen expressies in de RA of in SQL. Geef voor elke query aan welke expressie(s) met de query corresponderen. De relatie tussen queries en expressies is many-to-many en optioneel. E1 : π adres ((π objectnr (Woning) π objectnr (Verkoop)) Woning) E2 : π adres (Woning Verkoop) E3 : π adres ((π objectnr (Verkoop) π objectnr (Woning)) Woning) E4 : π adres ((π objectnr (Woning) π objectnr (Verkoop)) Woning) E5 : π adres ((π objectnr (Woning) π objectnr (Verkoop)) Woning) E6 : WHERE Woning.bouwjaar <= MIN(Woning.bouwjaar) AND Verkoop.datum = 23-01-2007

E7 : E8 : E9 : E10 : HAVING Woning.bouwjaar < ALL ( ) WHERE Woning.bouwjaar <= MIN(Woning.bouwjaar) AND Verkoop.datum = 23-01-2007 WHERE Woning.objectnr IN ( FROM Verkoop) HAVING Woning.bouwjaar =< ALL ( ) E11: SELECT MIN(Woning.bouwjaar) E12: SELECT MIN(Woning.bouwjaar) E13: WHERE NOT EXISTS ( FROM Verkoop)

E14 : E15 : E16 : HAVING Woning.bouwjaar <= ALL ( ) WHERE NOT EXISTS ( FROM Verkoop WHERE Verkoop.objectnr = Woning.objectnr) WHERE EXISTS ( FROM Verkoop WHERE Verkoop.objectnr = Woning.objectnr) Opgave 3: Concurrency We beschouwen de onderstaande twee schedules. (25 punten) a) Geef aan of deze schedules serializeerbaar zijn of niet. Licht toe. Geef zo mogelijk de equivalente seriële schedules. b) Geef eveneens aan of de schedules geaccepteerd worden door een 2PL-scheduler. Geef hierbij een korte toelichting. T1 T2 T3 T4 T5 w(x) w(z) r(z) r(x) T1 T2 T3 T4 T5 w(x) w(z) r(z) Opgave 4: Normalisatie Ter herinnering wordt hier de decompositiestelling vermeld: Stel we hebben een relatieschema R(XY Z). Als X Y, dan is de decompositie R 1 (XY ), R 2 (XY ) verliesvrij. (30 punten)

Gegeven een relatieschema R(ABCDE) en een set FDs F = {A BCD, BC D, AD DE}. Hieronder zijn vijf mogelijke decomposities gegeven: 1. (ABCD), (ADE) 2. (ABCD), (AE) 3. (ABC), (BCD), (ADE) 4. (ABC), (BCD), (AE) 5. (AD), (AE), (ABC) Beschouw de volgende drie eigenschappen: DC : de decompositie kan vanuit R verkregen worden door het (herhaald) toepassen van de decompositiestelling en is derhalve verliesvrij. BCNF : de decompositie is in BCNF. DP : de decompositie is dependency preserving. Ga voor elk van de vijf decomposities na of eigenschap DC geldt. Zo ja, geef dan de decompositievolgorde en geef dan ook aan of eigenschap BCNF geldt. Als BCNF geldt, geef dan ook aan of DP geldt. Licht de antwoorden met betrekking tot DC kort toe. De antwoorden met betrekking tot BCNF en DP hoeven niet toegelicht te worden.