Relationele Databases 2002/2003



Vergelijkbare documenten
Relationele Databases 2002/2003

Relationele Databases 2002/2003

Datamodelleren en databases 2011

Normaliseren versie 1.1

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

Thinking of development

Opgave 2 Geef een korte uitleg van elk van de volgende concepten: De Yield-to-Maturity of a coupon bond.

ER-modeling. Datamodellering Wat is ER-modeling?

ER-modeling. Wat is ER-modeling? ERD & relationeel model. ER-benadering DMO Datamodellering 2008

SQL Aantekeningen 3. Maarten de Rijke 22 mei 2003

Databases (INFODB) 24 januari 2007

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

SAMPLE 11 = + 11 = + + Exploring Combinations of Ten + + = = + + = + = = + = = 11. Step Up. Step Ahead

Add the standing fingers to get the tens and multiply the closed fingers to get the units.

Understanding and being understood begins with speaking Dutch

Introductie (relationele) databases

COGNITIEVE DISSONANTIE EN ROKERS COGNITIVE DISSONANCE AND SMOKERS

Luister alsjeblieft naar een opname als je de vragen beantwoordt of speel de stukken zelf!

OPEN TRAINING. Onderhandelingen met leveranciers voor aankopers. Zeker stellen dat je goed voorbereid aan de onderhandelingstafel komt.

Het omzetten van een ER-diagram naar SQL

Introductie in flowcharts

Les S-01: De basisbeginselen van SQL

LDA Topic Modeling. Informa5ekunde als hulpwetenschap. 9 maart 2015

Databases - Inleiding

Concept of Feedback. P.S. Gandhi Mechanical Engineering IIT Bombay

ANGSTSTOORNISSEN EN HYPOCHONDRIE: DIAGNOSTIEK EN BEHANDELING (DUTCH EDITION) FROM BOHN STAFLEU VAN LOGHUM

Chapter 4 Understanding Families. In this chapter, you will learn

ISO Query By Example

Online Resource 1. Title: Implementing the flipped classroom: An exploration of study behaviour and student performance

Summary 124

Databases (INFODB) 20 april 2010

Les 2 Eenvoudige queries

MyDHL+ Van Non-Corporate naar Corporate

Data Manipulatie. Query Talen. / Informatica

TECHNISCHE UNIVERSITEIT EINDHOVEN. Faculteit Wiskunde en Informatica

Toon TITEL, JAAR en PLATVORM van GAMES die voor het jaar 2000 uitkwamen op Nintendo 64

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

SQL & Datamodelleren

UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Secondary Education

Relationele databases

SQL en XML. XML schema s & DMO. Entiteitsklasse en attribuut. SQL en XML. Datamodellering Schema een ruim begrip (zie Møller, p.

Academisch schrijven Inleiding

Engels op Niveau A2 Workshops Woordkennis 1

Cambridge Assessment International Education Cambridge International General Certificate of Secondary Education. Published

Van een ER-diagram naar een database specificatie in SQL

Adherence aan HWO en meer bewegen

2019 SUNEXCHANGE USER GUIDE LAST UPDATED

Open Onderwijs API. De open standaard voor het delen van onderwijs data. 23 juni 2016 Frans Ward - SURFnet Architectuurraad - Utrecht

L.Net s88sd16-n aansluitingen en programmering.

Tentamen Databases voor iku

Enterprisearchitectuur

Les 10 : Aanmaken van een database (deel2).

Zelftest SQL Workshop

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

Mounting ceiling & wall

Zelftest SQL Workshop

UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Secondary Education

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

AdVISHE: Assessment of the Validation Status of Health- Economic Decision Models

FOR DUTCH STUDENTS! ENGLISH VERSION NEXT PAGE. Toets Inleiding Kansrekening 1 8 februari 2010

DMD-2011 Introductie. Introductie. Opzet van de cursus. Werkwijze per week. Datamodelleren en databases Twee hoorcolleges in totaal

DATAMODEL SQL. Middelbare School. Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: Groep TDI 1

Het beheren van mijn Tungsten Network Portal account NL 1 Manage my Tungsten Network Portal account EN 14

Tentamen Informatica 6, 2IJ60,

Question-Driven Sentence Fusion is a Well-Defined Task. But the Real Issue is: Does it matter?

i(i + 1) = xy + y = x + 1, y(1) = 2.

Preschool Kindergarten

Informatie & Databases

Sparse columns in SQL server 2008

Quality of life in persons with profound intellectual and multiple disabilities. Marga Nieuwenhuijse maart 2016

[TOETS SQL INLEIDING]

Inhoud. Voorwoord Belangrijkste kenmerken van dit boek De opzet van dit boek Over de auteur Woord van dank

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

Cambridge International Examinations Cambridge International General Certificate of Secondary Education

L.Net s88sd16-n aansluitingen en programmering.

C - de totale constante kosten. N - de normale bezetting in stuks

APPROACHING THE FAMILY

Keuzetwijfels in de Emerging Adulthood rondom Studie- en Partnerkeuze. in Relatie tot Depressie

Cambridge International Examinations Cambridge International General Certificate of Secondary Education

ISO SQL: Structured Query Language

Tentamen Databases voor ica

Enterprise Portfolio Management

Tentamen Databases voor ica

Meetkunde en Lineaire Algebra

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

Academisch schrijven Inleiding

Creatief onderzoekend leren

Transcriptie:

1 Relationele Databases 2002/2003 Hoorcollege 3 24 april 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 Plan voor Vandaag Praktische dingen 2.1, 2.3, 2.6 (alleen voor 2.2 en 2.3), 2.9, 2.10, 2.11, 2.14 SQL Aantekeningen 1 Tabellen; Eenvoudige Queries. Theorie Silberschatz et al: hoofdstuk 3: Relationele Model ( 3.1, 3.2). 2 3 Docenten: Huishoudelijke Zaken 1. Jaap Kamps, Email: kamps@science.uva.nl 2. Maarten de Rijke, Email: mdr@science.uva.nl URL voor de cursus: http://www.science.uva.nl/~kamps/rdb/, of http://www.science.uva.nl/~mdr/teaching/rdb/0203/ Practicum Deadline eerste inleveropdracht: 2 mei 2002 2.1 Explain the distinctions among the terms primary key, candidate key, and superkey. Een superkey is een verzameling van één of meer attributen die ons, samen, in staat stellen om een entiteit in een entity set te identificeren. Een superkey kan overbodige attributen bevatten: als K een superkey is, dan ook iedere uitbreiding van K. Een superkey waarvoor geen echte deelverzameling ook een superkey is, heet een candidate key. Er kunnen meerdere candidate keys zijn. De primary key is één van de candidate keys die door de database ontwerper gekozen is als belangrijkste middel om entiteiten te identificeren binnen een entity set. 4 5 2.3 Construct an E-R diagram for a hospital with a set of patients and a set of medical doctors. Associate with each patient a log of the various tests and examinations conducted. Aannames: Doctors behandelen meerdere patienten. Patienten kunnen meerdere doctors hebben. Patienten ondergaan geen, een of meer tests. Doctoren doen meerdere tests. Sommige tests worden door meerdere doctors afgenomen. Een afgenomen test hoort bij precies 1 patient. 2.3 Construct an E-R diagram for a hospital with a set of patients and a set of medical doctors. Associate with each patient a log of the various tests and examinations conducted. Entiteiten: patients, met attributen ss#, name, insurance, date-admitted, date-checked-out. doctors, met attributen dss#, name, specialization. test, met attributen test-name, date, time, result. Weak entity set test is afhankelijk van patient, discriminatory attributen zijn {test-name, date, time}. 6 7 2.3 Construct an E-R diagram for a hospital with a set of patients and a set of medical doctors. Associate with each patient a log of the various tests and examinations conducted. 2.3 Construct an E-R diagram for a hospital with a set of patients and a set of medical doctors. Associate with each patient a log of the various tests and examinations conducted. Relaties: Dr-Patient many-to-many tussen patients en doctors. performed-by many-to-many tussen test en doctors. test-log total, many-to-one van test naar patients.

8 9 2.6 Construct appropriate tables for each of the E-R diagrams in 2.2 and 2.3 [and 2.4]. Tabellen voor de auto verzekering (2.2) person(ss#,name,address) car(license,year,model) accident(report-number,location,date) owns(ss#,license) participated(license,report-number,ss#,damage-amount) 2.6 Construct appropriate tables for each of the E-R diagrams in 2.2 and 2.3 [and 2.4]. Tabellen voor het ziekenhuis (2.3): patients(ss#,name,insurance,date-admitted,date-checked-out) doctors(dss#,name,specialization) test(ss#,test-name, date,time,result) Dr-Patient(ss#,dss#) performed-by(ss#,test-name, date,time,dss#) Merk op: Er is geen tabel voor test-log want dat is een identificerende relatie van de weak entity set test. 10 11 2.9 Explain the difference between a weak and a strong entity set Een strong entity set (e.s.) heeft een primary key. Alle tuples in de verzameling kunnen mbv deze key geïdentificeerd worden. Een weak e.s. heeft alleen een primary key als attributen van de strong e.s. waarvan het afhangt, worden gebruikt. Tuples in een weak e.s. worden gegroepeerd aan de hand van hun relaties met tuples in een strong e.s.; tuples binnen één groep worden onderscheiden met een discriminator of partial key. 2.10 We can convert any weak e.s. to a strong e.s. by simply adding appropriate attributes. Why, then, do we have weak e.s. s? We willen data duplication door dupliceren van de key van een strong e.s. voorkomen Weak e.s. s geven de logische structuur weer van een entity die afhankelijk is van een andere entity. Weak e.s. s kunnen automatisch verwijderd worden als hun strong e.s. verwijderd wordt Weak e.s. s kunnen worden opgeslagen met hun strong e.s. s 12 13 2.11 Define the concept of aggregation. Give two examples of where this concept is useful. Definitie: Aggregatie is een abstractie waarmee relaties kunnen worden behandeld als (hoger-niveau) entiteiten. Merk op: Je kunt dus op deze manier een relatie definiëren tussen een relatie en een entiteit. 2.11 Voorbeeld 1: Employees werken voor projecten. Een employee die voor één of ander project werkt gebruikt allerlei apparatuur. 14 15 2.11 Voorbeeld 2: Producenten hebben overeenkomsten (tie-ups) met distributeurs voor het distribueren van producten. Voor elke tie-up specificeren we de verzamelingen van producten die gedistribueerd moeten worden. 2.14 Consider a university db for the scheduling of classrooms for final exams. The db could be modeled as the single e.s. exam with attributes course name, section-number, room-number, and time. Alternatively, one or more additional e.s. s could be defined, along with relationship sets to replace some of the attributes of the exam e.s. course (att: name, dept, c-number) section (att: s-number, enrollment), een weak e.s. afh. van course room (att: r-number, capacity, building)

16 17 2.14 (a) Show an E-R diagram illustrating the use of all three additional entity sets listed. 2.14 (b) Explain what application characteristics would influence a decision to include or not to include each of the additional entity sets De extra e.s. s zijn handig als we hun attributen ook willen opnemen: Voor de course e.s. hebben we 3 attributen. Het is niet aantrekkelijk om meerdere attributen van course als attributen van exam te hebben omdat het dan lastig kan zijn de gegevens over courses te onderhouden, vooral als een course geen exam heeft, of juist meerdere exams. Als we alleen de primary key op zouden nemen (c-number) en als courses maar 1 sectie hebben, dan zouden we course (en section) kunnen vervangen door een attribuut (c-number) by exam. Soortgelijke opmerkingen zijn van toepassing voor room. 18 19 Database System Concepts Hoofdstuk 3 Edgar Codd Bedenker relationele model Een begin maken met het relationele model Het relationele model is het gebruikte data model. Het geeft een simpele theoretische basis voor query talen. Het vormt de basis van de SQL query taal (H.4). Ruwweg 3.1 en 3.2 20 21 Edgar Codd Bedenker relationele model 22 23

24 25 26 27 28 29 30 31

32 33 34 35 36 37 38 39

40 41 42 43 44 45 46 47

48 49 50 51 52 53 54 55

56 57 58 59 60 61 62 63

64 65 66 67 68 69 Overzicht Vandaag Database System Concepts, Hoofdstuk 3. Relationele model ( 3.1 en 3.2). Opgaven: 2.1, 2.3, 2.6 (alleen voor 2.2 en 2.3), 2.9, 2.10, 2.11, 2.14 SQL Aantekeningen 1 Tabellen; Eenvoudige Queries. 70 71 Volgende Keer bij Relationele Databases End! Opgaven voor volgende keer (8 mei): 3.1 3.2 3.3 3.4 3.5 (alleen voor relatie algebra) SQL Aantekeningen 2 Relational model (Hoofdstuk 3), en begin SQL (Hoofdstuk 4).