Κωνσταντίνος Ταραμπάνης Καθηγητής kat@uom.gr Τα στοιχεία των ΠΣ στο πλαίσιο της ΔΔ Τα δεδομένα data (συνέχεια) ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΚΑΙ ΔΗΜΟΣΙΑ ΔΙΟΙΚΗΣΗ - Κ. - Κ. ΤΑΡΑΜΠΑΝΗΣ 2015 2015 1/ 1
Από το προηγούμενο μάθημα ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΔΗΜΟΣΙΑ ΔΙΟΙΚΗΣΗ - Κ. ΤΑΡΑΜΠΑΝΗΣ 2015 2/
Δεδομένα Ερωτήματα στο data management 1. Ποια δεδομένα/πληροφορίες πρέπει να διαχειρισθεί ο οργανισμός; Για την αντιμετώπιση των πληροφοριακών αναγκών των χρηστών του 2. Πώς θα είναι οργανωμένα τα δεδομένα; 3. Ποιος θα έχει πρόσβαση και τι είδους πρόσβαση θα έχει ο καθένας στα δεδομένα; Μεταδεδομένα Δεδομένα Οι ονομασίες των δεδομένων τι είναι; Για το πρώτο ερώτημα μπορούμε να βοηθηθούμε από τις γενικές κατηγορίες δεδομένων 1. κύρια δεδομένα (master data), δεδομένα κινήσεων (transaction data) 2. δεδομένα σχετικά με: Ανθρώπους, Οργανισμούς, Χώρους-Γεωγραφία, Πόρους, Δραστηριότητες, Γεγονότα 3. ρόλοι ανθρώπων ως χρήστες των υπηρεσιών της ΔΔ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΔΗΜΟΣΙΑ ΔΙΟΙΚΗΣΗ - Κ. ΤΑΡΑΜΠΑΝΗΣ 2015 3/
Άνθρωποι - Ρόλοι Διαχωρισμός ρόλων των χρηστών στη ΔΔ user segmentation Information Systems for egovernment, Viscusi, Batini, Mecella, Springer, 2010 ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΔΗΜΟΣΙΑ ΔΙΟΙΚΗΣΗ - Κ. ΤΑΡΑΜΠΑΝΗΣ 2015 4/
Εργασία #3: Βασικές Οντότητες της Διακυβέρνησης 1. Ποια δεδομένα πρέπει να διαχειρισθεί ο οργανισμός σας; Για την αντιμετώπιση των πληροφοριακών αναγκών των χρηστών του 2. Ποια δεδομένα πρέπει να διαχειρισθεί η ευρύτερη λειτουργική περιοχή στην οποία εντάσσεται ο οργανισμός σας; Για την αντιμετώπιση των πληροφοριακών αναγκών των χρηστών του 5 ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΔΗΜΟΣΙΑ ΔΙΟΙΚΗΣΗ - Κ. ΤΑΡΑΜΠΑΝΗΣ 2015 5/
Ποια δεδομένα; Παράδειγμα: Συνταγογράφηση 6
Ποια δεδομένα; Παράδειγμα: Πανεπιστήμιο ΦΟΙΤΗΤΗΣ - ΜΕΛΟΣ ΔΕΠ - ΔΙΟΙΚΗΤΙΚΟΣ ΥΠΑΛΛΗΛΟΣ ΕΙΔΙΚΟΤΗΤΑ ΜΕΛΟΥΣ ΔΕΠ - ΕΙΔΙΚΟΤΗΤΑ ΔΙΟΙΚΗΤΙΚΟΥ ΥΠΑΛΛΗΛΟΥ ΑΚΑΔΗΜΑΙΚΟ ΤΜΗΜΑ - ΔΙΟΙΚΗΤΙΚΗ ΜΟΝΑΔΑ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ ΕΡΕΥΝΗΤΙΚΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑ ΕΚΠΑΙΔΕΥΤΙΚΟ ΥΛΙΚΟ ΣΥΓΓΡΑΜΜΑ ΥΛΙΚΟΤΕΧΝΙΚΗ ΥΠΟΔΟΜΗ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΚΤΙΡΙΟ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΘΕΜΑΤΙΚΗ ΠΕΡΙΟΧΗ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ TRANSACTION ΤΩΝ ΜΕΛΩΝ ΔΕΠ TRANSACTION ΤΩΝ ΦΟΙΤΗΤΩΝ ΕΓΓΡΑΦΗ ΑΞΙΟΛΟΓΗΣΗ TRANSACTION ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΕΞΩΣΤΡΕΦΗΣ ΥΠΗΡΕΣΙΑ ΤΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΟΣ ΕΚΠΟΝΗΣΗ ΕΡΕΥΝΗΤΙΚΟΥ ΕΡΓΟΥ 7
Ποια δεδομένα; Παράδειγμα: Λειτουργική περιοχή της Παιδείας ΕΚΠΑΙΔΕΥΟΜΕΝΟΣ -ΕΚΠΑΙΔΕΥΤΙΚΟΣ - ΔΙΟΙΚΗΤΙΚΟΣ ΥΠΑΛΛΗΛΟΣ ΕΙΔΙΚΟΤΗΤΑ ΕΚΠΑΙΔΕΥΤΙΚΟΎ - ΕΙΔΙΚΟΤΗΤΑ ΔΙΟΙΚΗΤΙΚΟΥ ΥΠΑΛΛΗΛΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΣ ΦΟΡΕΑΣ ΑΚΑΔΗΜΑΙΚΟ ΤΜΗΜΑ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΦΟΡΕΑ ΔΙΟΙΚΗΤΙΚΗ ΜΟΝΑΔΑ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΦΟΡΕΑ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΦΟΡΕΑ ΜΑΘΗΜΑ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΦΟΡΕΑ ΕΡΕΥΝΗΤΙΚΗ ΔΡΑΣΤΗΡΙΟΤΗΤΑ ΕΚΠΑΙΔΕΥΤΙΚΟ ΥΛΙΚΟ ΥΛΙΚΟΤΕΧΝΙΚΗ ΥΠΟΔΟΜΗ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΦΟΡΕΑ ΚΤΙΡΙΟ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΦΟΡΕΑ ΘΕΜΑΤΙΚΗ ΠΕΡΙΟΧΗ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΦΟΡΕΑ TRANSACTION ΤΩΝ ΕΚΠΑΙΔΕΥΤΙΚΩΝ TRANSACTION ΤΩΝ ΕΚΠΑΙΔΕΥΟΜΕΝΩΝ TRANSACTION ΤΗΣ ΔΙΟΙΚΗΣΗΣ ΤΟΥ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΦΟΡΕΑ TRANSACTION ΤΟΥ ΥΠΑΙΘ ΕΞΩΣΤΡΕΦΗΣ ΥΠΗΡΕΣΙΑ ΤΩΝ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΟΡΕΩΝ ΔΙΔΑΣΚΑΛΙΑ ΜΑΘΗΜΑΤΟΣ ΕΚΠΟΝΗΣΗ ΕΡΕΥΝΗΤΙΚΟΥ ΕΡΓΟΥ 8
Πώς θα είναι οργανωμένα τα δεδομένα; 9/ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΔΗΜΟΣΙΑ ΔΙΟΙΚΗΣΗ - Κ. ΤΑΡΑΜΠΑΝΗΣ 2015 9/
Η οργάνωση που παρέχει μια απλή λίστα είναι κατάλληλη; Όχι 10 ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΑΙ ΔΗΜΟΣΙΑ ΔΙΟΙΚΗΣΗ - Κ. ΤΑΡΑΜΠΑΝΗΣ 2015 10/
Οργάνωση των Δεδομένων Ο αρχικός πίνακας του παραδείγματος περιέχει δεδομένα σχετικά με διαφορετικά θέματα. Στο παράδειγμα πόσα θέματα συνυπάρχουν στην ίδια λίστα; Η απάντηση είναι επτά καθώς η λίστα περιέχει στοιχεία για.. Απαιτείται κατάτμηση του πίνακα αυτού σε επιμέρους πίνακες με ένα θέμα στον καθένα Οι όροι «πίνακες» ή «οντότητες» - tables, entities χρησιμοποιούνται στην ορολογία της διαχείρισης δεδομένων. Στη διαχείριση δεδομένων η ομαδοποίηση δεδομένων ενός και μόνον θέματος διεκπεραιώνεται με μια διαδικασία που ονομάζεται «κανονικοποίηση» (normalization). Επιλύονται πολλά από τα προηγούμενα προβλήματα. Πώς ; Με την εξάλειψη του πλεονασμού δεδομένων data redundancy Επίσης επιλύεται το πρόβλημα της επιλεκτικής πρόσβασης σε ορισμένα στοιχεία, για παράδειγμα, σε αυτά που βρίσκονται στον ίδιο πίνακα ή και σε μέρος ενός πίνακα. 11
Οργάνωση των Δεδομένων Στη συνέχεια τα επιμέρους στοιχεία του αρχικού πίνακα πρέπει να ενταχθούν σε έναν από τους νέους πίνακες-οντότητες Πρέπει να καθορισθεί σε ποιον πίνακα θα ομαδοποιηθεί το κάθε επιμέρους στοιχείο; Το κάθε επιμέρους στοιχείο ονομάζεται «γνώρισμα» ή «πεδίο» ή «στήλη» - attribute, field, column στην ορολογία της διαχείρισης δεδομένων 12
Πίνακες & Γνωρίσματα 13
Πίνακες & Γνωρίσματα Ο πίνακας αποτελεί μια αποθηκευτική δομή η οποία ομαδοποιεί τα επιμέρους στοιχεία που σχετίζονται μεταξύ τους Οι πίνακες (tables) ονομάζονται συχνά και οντότητες (entities) Π.χ. ΦΟΙΤΗΤΗΣ Τα επιμέρους στοιχεία ονομάζονται γνωρίσματα (attributes) ή αλλιώς πεδία (fields) ή αλλιώς στήλες (columns) π.χ. όνομα φοιτητή, α/μ φοιτητή Το γνώρισμα αποτελεί ατομική πληροφορία π.χ. ημερομηνία γέννησης του φοιτητή Τα γνωρίσματα εντάσσονται σε πίνακες Σε ποιο πίνακα θα ενταχθεί κάποιο γνώρισμα; π.χ. ο μέσος όρος βαθμολογίας φοιτητή, ο μέσος όρος βαθμολογίας μαθήματος, ο μέσος όρος αποφοίτησης Η σειρά των γνωρισμάτων στον πίνακα δεν έχει σημασία. 14
Άλλα κριτήρια για τα γνωρίσματα Δεν είναι κατάλληλα γνωρίσματα τα λεγόμενα γνωρίσματα πολλαπλών τιμών (multi-value attributes) γιατί δεν αποτελούν ατομική πληροφορία Π.χ. τηλέφωνα επικοινωνίας Φαίνεται και από τη χρήση του πληθυντικού αριθμού Τα γνωρίσματα πολλαπλών τιμών μπορούν να αποθηκευθούν με πίνακες. Δεν είναι κατάλληλα γνωρίσματα τα λεγόμενα υπολογιζόμενα γνωρίσματα (derived attributes) εκτός και αν είναι δύσκολος ο υπολογισμός τους Π.χ. χρόνια προϋπηρεσίας, όχι - ημερομηνία πρόσληψης, ναι Γιατί δεν συμπεριλήφθηκε σε κανέναν πίνακα η τιμή του συνολικού κόστους του φαρμάκου; Δεν χρειάζεται καθώς μπορεί να υπολογισθεί από τα υπόλοιπα στοιχεία. 15
Πίνακες & Γνωρίσματα Ο κάθε πίνακας αποθηκεύει δεδομένα που εμφανίζονται ως ομοειδείς εγγραφές (records) ή αλλιώς σειρές (rows) ή αλλιώς περιπτώσεις (instances) Π.χ. στον πίνακα με το όνομα «ΦΟΙΤΗΤΗΣ» αποθηκεύονται όλες οι περιπτώσεις των φοιτητών Μια περίπτωση φοιτητή περιέχει όλα τα στοιχεία ενός φοιτητή (όνομα φοιτητή, α/μ φοιτητή, ημερομηνία γέννησης φοιτητή, φύλο φοιτητή, αριθμός ταυτότητας φοιτητή κλπ.). 16
Πίνακες & Γνωρίσματα Οι πίνακες και τα γνωρίσματα παρουσιάζουν μια ιεραρχία. Πηγή: Kroenke 17
Πίνακες & Γνωρίσματα Κλειδί (Key) Ο όρος κλειδί αναφέρεται στη στήλη ή σε ένα σύνολο στηλών που έχει επιλεγεί να προσδιορίζει την ταυτότητα μιας μοναδικής γραμμής σε ένα πίνακα. Για παράδειγμα, ο κωδικός του καθηγητή είναι το κλειδί του πίνακα «καθηγητής». Η τιμή του κωδικού του καθηγητή προσδιορίζει μια και μόνη γραμμή στον πίνακα «καθηγητής». Τη τιμή 354 για παράδειγμα έχει μόνον ένας καθηγητής. Κάθε πίνακας πρέπει να έχει κλειδί. Το κλειδί του πίνακα «μάθημα» είναι ο κωδικός του μαθήματος, και το κλειδί του πίνακα «φοιτητής» είναι ο αριθμός μητρώου του φοιτητή. Σε ορισμένες περιπτώσεις απαιτούνται περισσότερες από μια στήλες για να σχηματίσουν μια ταυτότητα. Π.χ. Για ένα πίνακα με «Αεροπορικές Πτήσεις» ο συνδυασμός αριθμός πτήσης και ημέρα προσδιορίζει τη ταυτότητα μιας πτήσης καθώς ο αριθμός πτήσης από μόνος του επαναλαμβάνεται. Κάθε πεδίο ενός κλειδιού πρέπει να έχει τιμή δηλ. δεν μπορεί να είναι κενό NULL 18
Σχέσεις 19
Σχέσεις Όμως με τη κατάτμηση της μιας λίστας σε επιμέρους πίνακες λείπει πληροφορία. Ποια; δεν φαίνονται πλέον οι συσχετίσεις που υπάρχουν μεταξύ των επιμέρους πινάκων Πρέπει να βρεθεί ένας τρόπος να εκφρασθούν οι συσχετίσεις μεταξύ των δεδομένων των επιμέρους πινάκων. Οι συσχετίσεις αυτές ονομάζονται «σχέσεις» - relations στην ορολογία της διαχείρισης δεδομένων 20
Σχέσεις Οι εγγραφές ενός πίνακα συσχετίζονται με τις εγγραφές σε έναν άλλο πίνακα; Professor Σχήμα: Database Processing, Kroenke 21
Σχέσεις Τρόπος επίλυσης Το κλειδί μπορεί να χρησιμοποιηθεί για να συσχετίσει δεδομένα των πινάκων μεταξύ τους Πώς; Με τη μεταφορά του κλειδιού ενός πίνακα στον άλλον πίνακα με τον οποίο σχετίζεται η παρουσία του κλειδιού στον σχετιζόμενο πίνακα ονομάζεται ξένο κλειδί. Χρησιμοποιείται ο όρος αυτός καθώς οι στήλες αυτές είναι κλειδιά, αλλά είναι κλειδιά άλλου (ξένου) πίνακα και όχι κλειδιά στον πίνακα που βρίσκονται. Το ξένο κλειδί αποτελεί εκδήλωση πλεονασμού δεδομένων αλλά είναι αυστηρά ελεγχόμενος Π.χ. δεν επιτρέπουμε να παρουσιασθεί ασυνέπεια μεταξύ κλειδιού και ξένου κλειδιού Τι εννοούμε ασυνέπεια; 22
Σχέσεις Παράδειγμα: Συνταγογράφηση κωδικός φαρμακείου Κωδικός του φαρμακείου στον πίνακα «ΣΥΝΤΑΓΗ» είναι ξένο κλειδί κωδικός φαρμακείου 23/
Σχέσεις Μεταξύ ποιων πινάκων υπάρχει σχέση; Πρέπει να μελετηθεί 24
Σχέσεις Η σχέση μεταξύ πινάκων εκφράζεται με ένα ρήμα Π.χ. Παρακολουθεί: «ΜΑΘΗΜΑ», «ΦΟΙΤΗΤΗΣ» Π.χ. Εργάζεται: «ΕΡΓΑΖΟΜΕΝΟΣ», «ΤΜΗΜΑ ΕΠΙΧΕΙΡΗΣΗΣ» 25
Πίνακες, Σχέσεις, Γνωρίσματα Παράδειγμα: Συνταγογράφηση 26
Είδη Σχέσεων: Βαθμός 27
Σχέσεις Μια σχέση μπορεί να συσχετίζει πολλές οντότητες. Ο αριθμός των πινάκων (οντοτήτων) που σχετίζονται σε μια σχέση ονομάζεται ο βαθμός (degree) της σχέσης. Σχέσεις με βαθμό δύο είναι πολύ συχνές και συχνά αναφέρονται ως δυαδικές σχέσεις. Υπάρχουν και σχέσεις με βαθμό 1 δηλ. να υπάρχει σχέση ενός πίνακα με τον εαυτό του π.χ. σκεφτείτε αναδρομική σχέση του πίνακα ΕΡΓΑΖΟΜΕΝΟΣ π.χ. σκεφτείτε αναδρομική σχέση του πίνακα ΜΑΘΗΜΑ ονομάζονται και αναδρομικές σχέσεις recursive relationships εμφανίζονται σπανιότερα θα τις μελετήσουμε αργότερα Σχέσεις με βαθμό μεγαλύτερες του 2 π.χ. τριαδικές σχέσεις (μεταξύ τριών πινάκων) αναπαρίστανται με δυαδικές σχέσεις μεταξύ ορισμένων εκ των πινάκων Θα εστιαστούμε στις δυαδικές σχέσεις σε αυτό το στάδιο 28
Είδη Σχέσεων: Μέγιστος Πληθάριθμος 29
Είδη Σχέσεων: Μέγιστος Πληθάριθμος Professor Σχήμα: Database Processing, Kroenke 30
Είδη Σχέσεων: Μέγιστος Πληθάριθμος Με βάση τον μέγιστο πληθάριθμο υπάρχουν τρεις τύποι σχέσεων : η σχέση 1:1 (ένα προς ένα) Για τη σχέση αυτή μια περίπτωση(εγγραφή) της μιας οντότητας(πίνακα) σχετίζεται με μια περίπτωση της άλλης οντότητας. η σχέση 1:Ν (ένα προς πολλά) Για τη σχέση αυτή μια περίπτωση(εγγραφή) της μιας οντότητας(πίνακα) σχετίζεται με πολλές εν γένει περιπτώσεις(εγγραφές) της άλλης οντότητας. Η σχέση αυτή είναι ασύμμετρη και έτσι η θέση του 1 και του Ν έχει σημασία η σχέση Ν:Μ (σχέση πολλά προς πολλά) Για τη σχέση αυτή μια περίπτωση(εγγραφή) της μιας οντότητας(πίνακα) σχετίζεται με πολλές εν γένει περιπτώσεις(εγγραφές) της άλλης οντότητας, και αντίστροφα, μια περίπτωση(εγγραφή) της άλλης οντότητας σχετίζεται με πολλές εν γένει περιπτώσεις(εγγραφές) της πρώτης οντότητας. Η παραπάνω κατηγοριοποίηση δηλώνει τον μέγιστο αριθμό των περιπτώσεων(εγγραφών) των οντοτήτων(πινάκων) που μπορούν να λάβουν μέρος στο ένα μέρος της σχέσης. Σκεφτείτε την ανάλογη κατηγοριοποίηση με τον ελάχιστο αριθμό των περιπτώσεων 31
Σχέσεις Μέγιστος πληθάριθμος Σχέσεων Παραδείγματα ΑΚΙΝΗΤΟ και ΠΡΟΣΩΠΟ ΦΑΡΜΑΚΟ και ΣΥΝΤΑΓΗ ΣΥΝΤΑΓΗ και ΦΑΡΜΑΚΕΙΟ 32
Πίνακες, Σχέσεις, Γνωρίσματα Παράδειγμα: Συνταγογράφηση 33
Σχέσεις 1:Ν 34
Σχέσεις Σχέσεις με μέγιστο πληθάριθμο 1:N Ο πίνακας από τη πλευρά 1 ονομάζεται γονέας της σχέσης Ο πίνακας από τη πλευρά Ν (πολλά) ονομάζεται παιδί της σχέσης Συνηθέστερη περίπτωση σχέσης Το κλειδί του γονέα μεταφέρεται στο παιδί ως ξένο κλειδί και έτσι αναπαρίσταται η σχέση Ως τώρα δεν αναφέραμε σε ποιον από τους δυο πίνακες τοποθετείται το ξένο κλειδί 35
Σχέσεις Παράδειγμα ΚΑΘΗΓΗΤΗΣ κωδ. καθηγητή επώνυμο όνομα.. 354 Γεωργίου Γιώργος 213 Ιωάννου Γιάννης 198 Στεργίου Στέργιος 192 Νικολάου Νίκος ΜΑΘΗΜΑ κωδ. μαθήματος τίτλος μαθήματος κωδ. καθηγητή 108 Στατιστική 213 109 Μάνατζμεντ 198 110 Πληροφορική 213 ΦΟΙΤΗΤΗΣ α/μ φοιτητή επώνυμο όνομα κωδ. καθηγητή 13408 Αθανασόπουλος Αθανάσιος 192 13508 Γεωργόπουλος Γιώργος 198 13608 Πετρόπουλος Πέτρος 213 13708 Κωνσταντόπουλος Κων/νος 354 Γιατί δημιουργούμε σχέση μεταξύ πίνακα ΚΑΘΗΓΗΤΗΣ και πίνακα ΜΑΘΗΜΑ, και γιατί μεταξύ πίνακα ΚΑΘΗΓΗΤΗΣ και πίνακα ΦΟΙΤΗΤΗΣ; 36
Σχέσεις Σχέσεις με μέγιστο πληθάριθμο 1:N διδάσκει ΚΑΘΗΓΗΤΗΣ κωδ. καθηγητή επώνυμο όνομα.. ΜΑΘΗΜΑ κωδ. μαθήματος τίτλος μαθήματος κωδ. καθηγητή 354 Γεωργίου Γιώργος 213 Ιωάννου Γιάννης 198 Στεργίου Στέργιος 192 Νικολάου Νίκος ΦΟΙΤΗΤΗΣ 108 Στατιστική 213 109 Μάνατζμεντ 198 110 Πληροφορική 213 συμβουλεύει α/μ φοιτητή επώνυμο όνομα κωδ. καθηγητή 13408 Αθανασόπουλος Αθανάσιος 192 13508 Γεωργόπουλος Γιώργος 198 13608 Πετρόπουλος Πέτρος 213 13708 Κωνσταντόπουλος Κων/νος 354 37
Σχέσεις Παράδειγμα Ας θεωρήσουμε ένα παράδειγμα με τρεις πίνακες: ΚΑΘΗΓΗΤΗΣ, ΜΑΘΗΜΑ, ΦΟΙΤΗΤΗΣ. Παρατηρούμε την στήλη με τον κωδικό του καθηγητή στο πίνακα «ΜΑΘΗΜΑ». Η στήλη αυτή δηλώνει τη γραμμή στον πίνακα «ΚΑΘΗΓΗΤΗ» με την οποία συνδέεται μια γραμμή στο πίνακα «ΜΑΘΗΜΑ». Στη πρώτη γραμμή του πίνακα «ΜΑΘΗΜΑ» η τιμή του κωδικού του καθηγητή είναι 213. Αυτό υποδηλώνει ότι υπεύθυνος αυτού του μαθήματος είναι ο καθηγητής του οποίου ο κωδικός είναι 213. Παρατηρώντας τον πίνακα «ΚΑΘΗΓΗΤΗΣ» φαίνεται ότι η γραμμή του Γιάννη Ιωάννου έχει τη τιμή αυτή. Έτσι, η πρώτη γραμμή στο πίνακα «μάθημα» σχετίζεται με τον Γιάννη Ιωάννου. Παρόμοια παρατηρούμε τη στήλη με τον κωδικό του καθηγητή στο πίνακα «ΦΟΙΤΗΤΗΣ». Η στήλη αυτή δηλώνει τη γραμμή στον πίνακα «ΚΑΘΗΓΗΤΗ» με την οποία συνδέεται μια γραμμή στο πίνακα «ΦΟΙΤΗΤΗΣ». Στη τελευταία γραμμή του πίνακα «φοιτητής» η τιμή του κωδικού του καθηγητή είναι 354. Αυτό υποδηλώνει ότι ο σύμβουλος καθηγητής αυτού του φοιτητή είναι ο καθηγητής του οποίου ο κωδικός είναι 354. Παρατηρώντας τον πίνακα «καθηγητής» φαίνεται ότι η γραμμή του Γιώργου Γεωργίου έχει τη τιμή αυτή. Έτσι η τελευταία γραμμή στο πίνακα «φοιτητής» σχετίζεται με τον Γιώργο Γεωργίου. 38
Σχέσεις Παράδειγμα (συνέχεια) Ο κωδικός του καθηγητή δεν αποτελεί το κλειδί του πίνακα «μάθημα». Φαίνεται εξάλλου καθώς υπάρχουν δύο μαθήματα με τον ίδιο κωδικό καθηγητή. Δηλαδή, ο κωδικός καθηγητή δεν προσδιορίζει μοναδικά σειρές στο πίνακα αυτό. Ο κωδικός καθηγητή δεν είναι κλειδί ούτε στον πίνακα «φοιτητής» παρά το ότι δεν φαίνεται να υπάρχουν στις γραμμές του πίνακα αυτού οι ίδιες τιμές κωδικού καθηγητή στις γραμμές που παρουσιάζονται. Δεν υπάρχει λόγος δύο ή και περισσότεροι φοιτητές να μην έχουν τον ίδιο καθηγητή ως σύμβουλο. Μάλιστα είναι και το πιθανότερο. 39
Σχέσεις Πόσες σχέσεις μεταξύ δυο πινάκων; Μπορούν να υπάρχουν περισσότερες από μια σχέσεις μεταξύ των ίδιων δυο πινάκων; Ναι Η κάθε σχέση σημαίνει κάτι άλλο και εκφράζεται με διαφορετικό ρήμα Από κάθε σχέση προκύπτει χωριστό ξένο κλειδί. Π.χ. Σκεφτείτε τις σχέσεις μεταξύ ΕΡΓΑΖΟΜΕΝΟΣ και ΤΜΗΜΑ ΕΠΙΧΕΙΡΗΣΗΣ Σκεφτείτε τις σχέσεις μεταξύ ΑΤΟΜΟ και ΑΚΙΝΗΤΟ κατά την ενοικίασή του 40
Σχέσεις Παράδειγμα: Ηλεκτρονική Μίσθωση ΠΡΟΣΩΠΟ Πρώτη προσπάθεια Υποθέσεις Ρεαλιστικές; ΑΚΙΝΗΤΟ κωδ. ακινήτου κωδ. προσώπου επώνυμο όνομα αφμ ΜΙΣΘΩΣΗ 13408 Αθανασόπουλος Αθανάσιος 034179221 13508 Γεωργόπουλος Γιώργος 034189221 13608 Πετρόπουλος Πέτρος 034199221 13708 Κωνσταντόπουλος Κων/νος 034109221 κωδ. εκμίσθωσης μισθώθηκε μίσθωσε κωδ. ακινήτου ημνια έναρξης ημνια λήξης διευθ. ακινήτου 354 Σοφούλη 56, Θεσ/νικη Κατοικία είδος ακινήτου.. 213 Αιγαίου 12, Θεσ/νικη Κατάστημα 198 Κανάρη 3, Καλοχώρι Αγροτεμάχιο 192 Σοφούλη 57, Θεσ/νικη Κατοικία εκμίσθωσε κωδ. προσώπου (μισθωτή) κωδ. προσώπου (εκμισθωτή) 100 354 23/11/2012 22/11/2015 13408 13508 1024 101 192 23/11/2012 22/11/2015 13508 13708 1022 102 213 24/11/2012 23/11/2015 13408 13508 997 αρ. συμβολαίου... 41
Σχέσεις Ν:Μ 42
Σχέσεις Σχέσεις με μέγιστο πληθάριθμο Ν: Μ Συναντώνται πολύ συχνά Δεν υπάρχει γονέας ή παιδί Δεν μπορεί να εκφρασθεί με την απλή μεταφορά του κλειδιού του ενός πίνακα στον άλλο Απαιτεί την δημιουργία νέου πίνακα που ονομάζεται συνδετικός πίνακας Το όνομα του συνδετικού πίνακα μπορεί να προκύψει από τη παράθεση των ονομάτων των αρχικών πινάκων ή από το ρηματικό ουσιαστικό που προκύπτει από το ρήμα της σχέσης Ο συνδετικός πίνακας έχει από μια σχέση με τον καθένα από τους αρχικούς πίνακες Η καθεμιά από τις σχέσεις αυτές έχουν μέγιστο πληθάριθμο 1:Ν 43
Σχέσεις Σχέσεις με βαθμό Ν: Μ Το κλειδί του συνδετικού πίνακα προκύπτει συνήθως από τον συνδυασμό των κλειδιών των αρχικών πινάκων Ορισμένες φορές ο συνδυασμός αυτός δεν αρκεί (δηλ. δεν διασφαλίζει μοναδικότητα) και έτσι απαιτείται ή η πρόσθεση και άλλου(ων) γνωρίσματος(ων) ή η επιλογή ενός νέου γνωρίσματος τύπου ID 44
Σχέσεις Τι είδους σχέση μεταξύ: ΦΟΙΤΗΤΗΣ και ΜΑΘΗΜΑ Σχέση πολλά-προς-πολλά Ποιο είναι το κλειδί για κάθε πίνακα; Διαφέρει το κλειδί αν ενδιαφέρει η διαχρονική παρακολούθηση της επίδοσης του κάθε φοιτητή από τη γραμματεία του τμήματος; 45
Σχέσεις Παράδειγμα: ΦΟΙΤΗΤΗΣ, ΜΑΘΗΜΑ ΦΟΙΤΗΤΗΣ ΜΑΘΗΜΑ κωδ. μαθήματος όνομα μαθήματος 354 ΕΙΔΙΚΑ ΘΕΜΑΤΑ ΠΣ 3 213 ΕΙΣΑΓΩΓΗ ΣΤΑ ΠΣ 4 198 ΠΣ ΔΙΟΙΚΗΣΗΣ 4 192 αμ επώνυμο όνομα ημνια γέννησης ΔΗΛΩΣΗ ΜΑΘΗΜΑΤΟΣ ή ΦΟΙΤΗΤΗΣ- ΜΑΘΗΜΑ 10101 Αθανασόπουλος Αθανάσιος 11/12/1992 1092 Γεωργόπουλος Γιώργος 5/9/1992 10121 Πετρόπουλος Πέτρος 16/3/1991 10201 Κωνσταντόπουλος Κων/νος 7/2/1992 δήλωσε δηλώθηκε ΠΛΗΡΟΦΟΡΙΑΚΗ ΟΡΓΑΝΩΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ 4 αρ. διδακτικών μονάδων.. κωδ. μαθήματος κωδ. φοιτητή ημνια δήλωσης βαθμός αρ. Απουσιών... 213 10201 23/11/2012 10 0 213 1092 23/11/2012 9 1 198 1092 24/11/2012 3 8 46
Σχέσεις Τι είδους σχέση μεταξύ: ΕΡΓΑΖΟΜΕΝΟΣ και ΕΡΓΟ Σχέση πολλά-προς-πολλά Ποιο είναι το κλειδί του κάθε πίνακα; Ποια γνωρίσματα έχει ο συνδετικός πίνακας εκτός αυτών που αποτελούν το κλειδί του; Ισχύει το θέμα της διαχρονικής παρακολούθησης που υπήρχε στο παράδειγμα ΦΟΙΤΗΤΗΣ και ΜΑΘΗΜΑ; Κάνετε το σχήμα με πίνακες και εγγραφές. 47
Σχέσεις Παράδειγμα: ΕΡΓΟ και ΕΡΓΑΖΟΜΕΝΟΣ Σχήμα: Database Processing, Kroenke 48
Σχέσεις Παράδειγμα: ΕΡΓΟ και ΕΡΓΑΖΟΜΕΝΟΣ Ο συνδετικός πίνακας «ΑΝΑΘΕΣΗ» Θα μπορούσε να έχει ο συνδετικός πίνακας δικό του κωδικό ως κλειδί αντί του συνδυασμού των κλειδιών των αρχικών πινάκων Σχήμα: Database Processing, Kroenke 49
Βάσεις Δεδομένων- Σχέσεις Τι είδους σχέση μεταξύ: ΕΡΓΑΖΟΜΕΝΟΣ και ΔΕΞΙΟΤΗΤΑ Σχέση πολλά-προς-πολλά Ποιο είναι το κλειδί του κάθε πίνακα; Ποια γνωρίσματα έχει ο συνδετικός πίνακας εκτός αυτών που αποτελούν το κλειδί του; Ισχύει το θέμα της διαχρονικής παρακολούθησης που υπήρχε στο παράδειγμα ΦΟΙΤΗΤΗΣ και ΜΑΘΗΜΑ; Κάνετε το σχήμα με πίνακες και εγγραφές. 50