Δημιουργία Σχεσιακού μοντέλου από ERD

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Μοντέλο Οντοτήτων Συσχετίσεων
Advertisements

ΕΣΔ 232: Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας © 2012 Nicolas Tsapatsoulis Φυσική Σχεδίαση – Υλοποίηση βάσης ΕΣΔ232 – Οργάνωση Δεδομένων στη.
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Μοντέλο Οντοτήτων - Συσχετίσεων
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΙΣΑΓΩΓΙΚΑ ΖΗΤΗΜΑΤΑ.
ΔΙΑΓΡΑΜΜΑΤΑ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ
Εργαλεία για Μοντελοποίηση
Σχεσιακό Μοντέλο Δαμιανός Χατζηαντωνίου
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΜΑΘΗΜΑ 2. ΣΧΕΣΙΑΚΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ • Μια σχεσιακή ΒΔ καταγράφει δεδομένα μέσα σε σχέσεις (πίνακες). • Μια πραγματική οντότητα γίνεται.
Επεκτεταμένο Μοντέλο Οντοτήτων Συσχετίσεων
Βάσεις Δεδομένων.
Example 1   a professor teaches zero, one or many classes and a class is taught by one professor a course may generate zero, one or many classes and a.
Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό
Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ
1 Βάσεις Δεδομένων I ΥΠΕΥΘΥΝΟΙ: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ ΝΙΚΟΣ ΚΥΡΙΤΣΗΣ Εργαστήριο.
Μοντέλο Οντοτήτων-Συσχετίσεων
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή Σχεδιασμός μιας ΒΔ ανάλυση ποιας πληροφορίας και της σχέσης ανάμεσα στα στοιχεία της περιγραφή.

Entity-Relationship Παραδείγματα Πληροφοριακά Συστήματα και Βάσεις Δεδομένων Φροντιστήριο 1 Δαμιανός Χατζηαντωνίου.
Μοντέλο Οντοτήτων-Συσχετίσεων
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό.
ΜΟΝΤΕΛΟ Ο-Σ ΜΑΘΗΜΑ 2.
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΜΑΘΗΜΑ 3.
Βάσεις Δεδομένων Μάθημα 4.
Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό.
Περιεχόμενα Λογικός Σχεδιασμός (Σχεσιακό Μοντέλο) Εισαγωγικά
Βάσεις Δεδομένων II Ενότητα 2: Το μοντέλο οντοτήτων/συσχετίσεων
Εννοιολογική αναπαράσταση δεδομένων. Οντότητα Είναι κάθε αντικείμενο, πρόσωπο, γεγονός κατάσταση ή και αφηρημένη έννοια που προσδιορίζεται από την ανεξάρτητη.
Entity Relationship Diagram (ERD) (Διαγράμμα Οντοτήτων Συσχετίσεων)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό.
1 Βάσεις Δεδομένων ΙI Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ SQL (3 από 3) T Manavis.

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό.
9 Η Γλώσσα SQL  Εισαγωγή – Βασικές Έννοιες  Τύποι Δεδομένων  Ορισμός Δεδομένων (data definition)  Χειρισμός Δεδομένων (data manipulation)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή Σχεδιασμός μιας ΒΔ ανάλυση ποιας πληροφορίας και της σχέσης ανάμεσα στα στοιχεία της περιγραφή.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή Σχεδιασμός μιας ΒΔ ανάλυση ποιας πληροφορίας και της σχέσης ανάμεσα στα στοιχεία της περιγραφή.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό.
Βάσεις Δεδομένων ER-Διάγραμμα.
Κανονικοποίηση, συναρτησιακές εξαρτήσεις
Μοντελοποίηση δεδομένων. Οι βάσεις δεδομένων αναπαριστούν έννοιες του πραγματικού κόσμου Για να είναι εφικτή η αναπαράσταση πρέπει οι έννοιες του πραγματικού.
Βάσεις Δεδομένων Κεφ. 1 Πλεονεκτήματα Β.Δ. έναντι αρχείων Βασικές λειτουργίες Β.Δ. Εφαρμογές Β.Δ. στην καθημερινή ζωή.
Βάσεις Δεδομένων Ενότητα 4: Μοντελοποίηση Συσχέτισης Οντοτήτων Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό.
Βάσεις Δεδομένων Ι 4η διάλεξη
Βάσεις Δεδομένων Ενότητα 5: Σημασιολογικός Σχεδιασμός
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ.
Σχεσιακό Μοντέλο Δεδομένων
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας
Η φάση του εννοιολογικού σχεδιασμού
Από το Μοντέλο Οντοτήτων Συσχετίσεων στο Σχεσιακό Μοντέλο
Κωδικός Διαφανειών: MKT119
Βάσεις Δεδομένων και web-based Εφαρμογές
Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL
Εφαρμογή Κανονικοποίησης
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Κανονικοπηση(normalization)
Κανονικοποίηση 1η, 2η και 3η Κανονική Μορφή
ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ
Σχεσιακεσ βασεισ δεδομενων
ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ
ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ I
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Μεταγράφημα παρουσίασης:

Δημιουργία Σχεσιακού μοντέλου από ERD Βάσεις Δεδομένων I Δημιουργία Σχεσιακού μοντέλου από ERD ΥΠΕΥΘΥΝΟΣ: Θ. ΜΑΝΑΒΗΣ tmanavis@ist.edu.gr T Manavis

Βήμα 1 Κάθε κανονικός τύπος οντότητας (regular entity type) αντιστοιχίζεται σε μιά σχέση (relation) (πίνακα), που περιλαμβάνει όλα τα απλά γνωρίσματα (attributes) της οντότητας Για ένα σύνθετο (composite) γνώρισμα, επιλέγουμε μόνο τα απλά γνωρίσματα από τα οποία αποτελείται (π.χ για το «Όνοματεπώνυμο» θα βάλουμε τα «Όνομα» και «Επίθετο». Ενα υποψήφιο κλειδί του τύπου οντότητας επιλέγεται ως το πρωτεύον κλειδί (primary key) (Αν το κλειδί είναι σύνθετο, τότε θα κάνουμε κλειδί το συνδυασμό των επιμέρους γνωρισμάτων από τα οποία αποτελείται)

Βήμα 2 Κάθε ασθενής τύπος οντότητας (weak entity type) αντιστοιχίζεται σε μιά σχέση (relation) (πίνακα) και θα περιλάβει όλα τα απλά γνωρίσματα της οντότητας (ή όταν πρόκειται γιά σύνθετα γνωρίσματα, όλα τα απλά γνωρίσματα από τα οποία αποτελούνται) Πρωτεύον κλειδί (primary key) γίνεται το επιμέρους κλειδί αυτής της οντότητας σε συνδυασμό με το πρωτεύον κλειδί της οντότητας από την οποία εξαρτάται.

Βήμα 3 Για κάθε δυαδική 1:1 συσχέτιση (binary 1:1 relationship), βρίσκουμε τις δύο σχέσεις (πίνακες) που συμμετέχουν στη συσχέτιση και περιλαμβάνουμε το πρωτεύον κλειδί (primary key) του ενός πίνακα ως ξένο κλειδί (foreign key) στον άλλο. Προτιμούμε να βάλουμε το foreign key στον πίνακα που έχει ολική συμμετοχή (διπλή γραμμή) στη συσχέτιση (στο παράδειγμα, θα βάλουμε το πρωτεύον κλειδί του «ΕΡΓΑΖΟΜΕΝΟΣ» στο «ΤΜΗΜΑ» ως ξένο κλειδί) Αν η 1:1 συσχέτιση έχει γνωρίσματα, τότε αυτά μπαίνουν ως γνωρίσματα στον πίνακα όπου βάλαμε το ξένο κλειδί. 1 διοικεί 1 ΕΡΓΑΖΟΜΕΝΟΣ ΤΜΗΜΑ Εδώ θα μπεί (ως ξένο κλειδί) το πρωτεύον κλειδί της σχέσης «ΕΡΓΑΖΟΜΕΝΟΣ»

Βήμα 4 Για κάθε δυαδική 1:Ν συσχέτιση (binary 1:Ν relationship) μεταξύ δύο σχέσεων (πινάκων) Χ και Υ, βρίσκουμε τον πίνακα που βρίσκεται στην πλευρά «προς πολλά» της σχέσης (στο διάγραμμα), έστω Υ, και βάζουμε το πρωτεύον κλειδί του Χ ως ξένο κλειδί (foreign key) στον Υ. Π.χ. Αν η 1:Ν συσχέτιση έχει γνωρίσματα, τότε αυτά μπαίνουν ως γνωρίσματα στον πίνακα Υ. Ν Εργάζεται_σε 1 ΕΡΓΑΖΟΜΕΝΟΣ ΤΜΗΜΑ Υ Χ Εδώ θα μπεί το πρωτεύον κλειδί της σχέσης «ΤΜΗΜΑ»

Βήμα 5 Για κάθε δυαδική Μ:Ν συσχέτιση (binary Μ:Ν relationship) δημιουργούμε μια νέα σχέση (πίνακα) που αναπαριστά τη συσχέτιση. Το primary key της νέας σχέσης (πίνακα) είναι ο συνδυασμός των κλειδιών των δύο πινάκων που μετέχουν στη συσχέτιση. Ολα τα γνωρίσματα της Μ:Ν συσχέτισης μπαίνουν στον νέο πίνακα.

Βήμα 6 Για κάθε πλειότιμο (multi-valued) γνώρισμα, δημιουργούμε μια νέα σχέση (πίνακα) R που περιλαμβάνει το κλειδί της αρχικής σχέσης. Το πρωτεύον κλειδί (primary key) του R θα είναι ο συνδυασμός του κλειδιού της αρχικής σχέσης μαζί με το γνώρισμα. Αν το πλειότιμο γνώρισμα είναι σύνθετο, τότε περιλαμβάνουμε τα απλά του γνωρίσματα.

Βήμα 7 Για κάθε μεγαλύτερη από δυαδική συσχέτιση (έστω Ν-ary, N>2) δημιουργούμε μιά νέα σχέση (πίνακα) S. Βάζουμε στην S ως ξένα κλειδιά τα πρωτεύοντα κλειδιά των σχέσεων που παίρνουν μέρος στην πολλαπλή (N-ary) συσχέτιση. Επίσης στην S βάζουμε όλα τα απλά γνωρίσματα της πολλαπλής συσχέτισης. Το πρωτεύον κλειδί του S είναι συνήθως ο συνδυασμός όλων των ξένων κλειδιών που αντιπροσωπεύουν τις οντότητες στη συσχέτιση.

Παράδειγμα

Σχεσιακό μοντέλο του προηγούμενου ER μοντέλου: Τα ξένα κλειδιά αναπαρίστανται με πλάγιους χαρακτήρες (π.χ. superNINO) ή με αστερίσκο

Αναλυτικά τα βήματα που ακολουθήθηκαν: EMPLOYEE (NINO, initials, fName, surname, DOB, address, gender) DEPARTMENT(dNumber, name) PROJECT(pNumber, name, location) 1 Δηλαδή το πρωτεύον κλειδί = {NINO,dependentName} και δίνει τον πίνακα: DEPENDENT(NINO, dependantName, relationship) 2 3

Αναλυτικά τα βήματα: Για τη συσχέτιση WORKS-FOR, το πρωτεύον κλειδί του DEPARTMENT συμπεριλαμβάνεται ως το ξένο κλειδί του EMPLOYEE   Για τον SUPERVISION, το πρωτεύον κλειδί του EMPLOYEE περιλαμβάνεται ως ξένο κλειδί στην ίδια τη σχέση EMPLOYEE relation, μετονομασμένο ως superNINO: EMPLOYEE (NINO, initials, fName, surname, DOB, address, gender, dNumber, superNINO) Η συσχέτιση CONTROLS αντιστοιχίζεται με παρόμοιο τρόπο: PROJECT(pNumber, name, location, controlDNumber) 4 5 WORKS_ON(NINO, pNumber, hours) DEPT_LOCATION(dNumber, location) Μια ξεχωριστή πλειάδα (tuple) («γραμμή») θα υπάρχει στο DEPT_LOCATION για κάθε τοποθεσία που έχει ένα department. Επομένως αν το Department 10 έχει 3 τοποθεσίες, τότε θα υπάρχουν 3 πλειάδες στη σχέση DEPT_LOCATION για το department 10. 6