24
Ενότητα # 2: Μοντέλο Οντοτήτων-Συσχετίσεων Μελέτη Περίπτωσης: Η βάση δεδομένων των CD Γεώργιος Ευαγγελίδης, Καθηγητής Τμήμα Εφαρμοσμένης Πληροφορικής Βάσεις Δεδομένων Ι

Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

  • Upload
    telis93

  • View
    31

  • Download
    0

Embed Size (px)

DESCRIPTION

Μοντέλο Οντοτήτων-ΣυσχετίσεωνΜελέτη Περίπτωσης: Η βάση δεδομένων των CD

Citation preview

Page 1: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Ενότητα # 2: Μοντέλο Οντοτήτων-Συσχετίσεων Μελέτη Περίπτωσης: Η βάση δεδομένων των CD

Γεώργιος Ευαγγελίδης, ΚαθηγητήςΤμήμα Εφαρμοσμένης Πληροφορικής

Βάσεις Δεδομένων Ι

Page 2: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

2

Άδειες Χρήσης

● Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

● Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς.

Page 3: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

3

Χρηματοδότηση

● Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα.

● Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Μακεδονίας» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού.

● Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Page 4: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

4

Μέρος 1

Μοντέλο Οντοτήτων-Συσχετίσεων

Page 5: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

5

Σχεδιάζοντας μια ΒΔ

● Ανάλυση απαιτήσεων.● Σχεδιασμός ιδεατού σχήματος (μοντέλο

Οντοτήτων-Συσχετίσεων).● Σχεδιασμός λογικού σχήματος (Σχεσιακό μοντέλο)

*** εδώ μπορούμε να φτάσουμε απευθείας από άλλη οδό (Κανονικοποίηση με διάσπαση – θα μιλήσουμε σε επόμενο μάθημα)***.

● Σχεδίαση φυσικού σχήματος (σε επιλεγμένο ΣΔΒΔ).

Page 6: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

6

Σχεδιασμός ιδεατού σχήματος

● Διάγραμμα Οντοτήτων-Συσχετίσεων:– Σύνολα Οντοτήτων και Συσχετίσεων.

– Γνωρίσματα συνόλων οντοτήτων και συσχετίσεων.

– Επιχειρησιακοί κανόνες.

● Αλγόριθμος μετατροπής διαγράμματος ΟΣ σε σχεσιακό μοντέλο.

Page 7: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

7

Οντότητες

● Αντικείμενα του φυσικού ή ιδεατού κόσμου:– π.χ., ένα cd, ένα τραγούδι, μια δισκογραφική εταιρία.

● Μια οντότητα έχει συγκεκριμένα γνωρίσματα ή ιδιότητες:– π.χ., ένα cd έχει τίτλο, έτος κυκλοφορίας, εταιρία

έκδοσης.

● Κάθε γνώρισμα παίρνει τιμές από ένα συγκεκριμένο πεδίο ορισμού:– π.χ., το έτος κυκλοφορίας είναι ακέραιος αριθμός.

Page 8: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

8

Σύνολα οντοτήτων

● Μια συλλογή από μοναδικές όμοιες οντότητες:– π.χ., όλα τα cd της συλλογής μας.

● Σημασιολογία ίδια με τα μαθηματικά σύνολα.● Συμβολίζεται από ένα ορθογώνιο.

cd

titleyearcode

Page 9: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

9

Περί κλειδιών

● Κλειδί: ελάχιστος συνδυασμός γνωρισμάτων που προσδιορίζει μονοσήμαντα κάθε οντότητα σε ένα σύνολο οντοτήτων.

● Υποψήφιο κλειδί: ένα οποιοδήποτε από τα παραπάνω κλειδιά.

● Κύριο κλειδί: ένα κλειδί της επιλογής μας – συνήθως το συντομότερο – μπορεί να είναι και τεχνητό.

Page 10: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

10

Συσχέτιση

● Όταν οντότητες συσχετίζονται μεταξύ τους:– π.χ., το τραγούδι “Σιγά μην κλάψω” υπάρχει στο cd

“Από 'δω και πάνω”.

● Το ρήμα στην παραπάνω πρόταση δηλώνει μια συσχέτιση ανάμεσα σε δυο συγκεκριμένες οντότητες.

● Μια συσχέτιση μπορεί να έχει δικά της γνωρίσματα.

Page 11: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

11

Σύνολο συσχετίσεων

● Μια συλλογή από μοναδικές όμοιες συσχετίσεις:– π.χ., ποια τραγούδια υπάρχουν σε ποια cd.

● Συμβολίζεται με ρόμβο.

cd songhas

pos

Page 12: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

12

Παραδείγματα (1)

cdhas

track

song

artist

● Τριαδική συσχέτιση.

Page 13: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

13

Παραδείγματα (2)

artist

works with

● Αναδρομική συσχέτιση.

Page 14: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

14

Περιορισμοί κλειδιού (1)

● Δηλώνουν πόσες οντότητες ενός συνόλου συσχετίζονται με πόσες οντότητες ενός άλλου συνόλου.

● Συμβολίζονται με την ύπαρξη ή όχι βέλους.● 1-1, 1-πολλά, πολλά-1, πολλά-πολλά.

A B C D

Page 15: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

15

Περιορισμοί κλειδιού (2)

cdcompany has

Page 16: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

16

Περιορισμοί συμμετοχής (1)

● Είναι απαραίτητο να συσχετίζονται όλες οι οντότητες ενός συνόλου με οντότητες ενός άλλου συνόλου;

● Συμβολίζονται με παχιά ή λεπτή γραμμή.

cdcompany has

Page 17: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

17

Περιορισμοί συμμετοχής (2)

cdhas

track

song

artist

Page 18: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

18

Αδύναμες οντότητες

● Όταν μια οντότητα μπορεί να προσδιοριστεί μονοσήμαντα με τη βοήθεια του κλειδιού μιας άλλης οντότητας (ισχυρής).

cd copyhas

number conditioncode

Page 19: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

19

Ιεραρχίες ISA

● Όπως η κληρονομικότητα των κλάσεων στον αντικειμενοστραφή προγραμματισμό.

recording

cdmp3vinyl

ISA

weight typesize

year

price

price

price

code

Page 20: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

20

Συνυπολογισμός

● Δίνει τη δυνατότητα συσχέτισης συνόλων οντοτήτων και συνόλων συσχετίσεων!

cd artisthas

manager

has

Page 21: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

21

Μέρος 2

Μελέτη Περίπτωσης: Η βάση δεδομένων των CD

Page 22: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

22

Ένα πρώτο ιδεατό μοντέλο

cd song

● Τα cd έχουν τραγούδια και αυτά ερμηνευτές

Πρόβλημα: η έμμεση συσχέτιση των cd με τους ερμηνευτές είναι ασαφής.● Ποιος ερμηνευτής ενός τραγουδιού (από τους πιθανόν

πολλούς) το εκτελεί σε ένα συγκεκριμένο cd;● Μήπως μερικοί το ερμηνεύουν σε ντουέτο;

Επίσης, δεν γίνεται να υπάρχει ένα τραγούδι >1 φορά σε ένα cd ή ένας ερμηνευτής να εκτελέσει >1 φορά ένα τραγούδι

performerhas has

Page 23: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

23

Ένα καλύτερο...

● Τριαδικό σύνολο συσχετίσεων

Πρόβλημα: δεν μπορώ να έχω >1 εμφάνιση του ίδιου τραγουδιού από τον ίδιο εκτελεστή σε ένα cd – με τα ντουέτα τί γίνεται;

cd song

performer

has

Page 24: Βάσεις Δεδομένων Ι Μοντέλο Οντοτήτων-Συσχετίσεων

Βάσεις Δεδομένων ΙΤμήμα Εφαρμοσμένης Πληροφορικής

24

Ένα ακόμη καλύτερο...

● Το πρόβλημα προέκυπτε από τη σύγχυση ανάμεσα στις έννοιες τραγούδι και ηχογράφηση

Το μόνο που δεν υποστηρίζεται είναι να υπάρχει >1 φορά μια ηχογράφηση στο ίδιο cd

cd recording

performer

has

has

songis of