Γηαδηθαζία Αλάπηπμεο ΣΓΒΓ Γηάγξακκα Οληνηήηωλ πζρεηίζεωλ (E-R) Φξνληηζηήξην 2 ν 13-10-2011
Βαζηθά Σρήκαηα: ΟΝΣΟΣΖΣΑ ΥΔΖ ΓΝΩΡΗΜΑ 13/10/2011 Βάζεηο Γεδνκέλωλ 2
Γλσξίζκαηα ύλζεηα vs Απιά Μνλόηηκα vs Πιεηόηηκα Απνζεθεπκέλα vs Παξαγόκελα Κιεηδηά ύλζεηα θιεηδηά 13/10/2011 Βάζεηο Γεδνκέλωλ 3
Σύλζεηα vs Απιά ύλζεηα: Σα γλωξίζκαηα πνπ κπνξνύλ λα ρωξηζηνύλ ζε κηθξόηεξα ηκήκαηα, όπωο πρ ε δηεύζπλζε 13/10/2011 Βάζεηο Γεδνκέλωλ 4
Πιεηόηηκα vs Μνλόηηκα Πιεηόηηκα: Σα γλωξίζκαηα γηα ηα νπνία κία νληόηεηα έρεη πνιιέο ηηκέο. Πρ ην γλώξηζκα «μέλεο γιώζζεο» γηα ηελ νληόηεηα καζεηήο κπνξεί λα έρεη πνιιέο ηηκέο, όπωο Αγγιηθά θαη Γαιιηθά 13/10/2011 Βάζεηο Γεδνκέλωλ 5
Απνζεθεπκέλα vs Παξαγόκελα Παξαγόκελα: Σα γλωξίζκαηα πνπ κπνξνύλ λα παξαρζνύλ από απνζεθεπκέλα γλωξίζκαηα. Πρ ην γλώξηζκα «θαζαξέο απνδνρέο» κπνξεί λα παξαρζεί από ην «κηθηέο απνδνρέο». 13/10/2011 Βάζεηο Γεδνκέλωλ 6
Κιεηδηά Γλώξηζκα-θιεηδί: Σν γλώξηζκα πνπ ραξαθηεξίδεη κνλνζήκαληα κηα νληόηεηα. Πρ αξηζκόο ηαπηόηεηαο. 13/10/2011 Βάζεηο Γεδνκέλωλ 7
Σύλζεηα Κιεηδηά ύλζεηα θιεηδηά: Σα θιεηδηά ηα νπνία ζρεκαηίδνληαη από ζπλδπαζκό γλωξηζκάηωλ. Μπνξνύλ λα αληηθαηαζηαζνύλ από έλα ζύλζεην γλώξηζκα πνπ απνηειεί θιεηδί. Πρ. ηα γλωξίζκαηα username θαη isp κπνξνύλ καδί λα απνηειέζνπλ θιεηδί, πνπ αιιηώο είλαη ην γλώξηζκα email,frank, ceid.upatras.gr-> frank@ceid.upatras.gr 13/10/2011 Βάζεηο Γεδνκέλωλ 8
Γλσξίζκαηα ηελ πεξίπηωζε πνπ κηα νληόηεηα δελ έρεη ηηκή γηα έλα από ηα γλωξίζκαηά ηεο, απνζεθεύεηαη ε ηηκή NULL. Γεληθά γηα ηα θιεηδηά κπνξείηε λα δεκηνπξγείηε έλα γλώξηζκα πρ θωδηθόο_βηβιίνπ, ην νπνίν έρεη λόεκα ζην ζύζηεκα, είλαη κνλαδηθό θαη παξάγεηαη κε ηπραίν ηξόπν. 13/10/2011 Βάζεηο Γεδνκέλωλ 9
Σπζρεηίζεηο-Λόγνο Πιεζηθόηεηαο Ο ιόγνο πιεζηθόηεηαο πξνζδηνξίδεη ηνλ αξηζκό ηωλ ζηηγκηνηύπωλ κηαο ζπρέηηζεο ζηα νπνία κπνξεί λα ζπκκεηέρεη κηα νληόηεηα. 13/10/2011 Βάζεηο Γεδνκέλωλ 10
Σπζρεηίζεηο-Οιηθή Σπκκεηνρή Ζ νιηθή ζπκκεηνρή ή εμάξηεζε ύπαξμεο νξίδεη αλ ε ύπαξμε κηαο νληόηεηαο εμαξηάηαη από ην αλ ζρεηίδεηαη κε κηα άιιε νληόηεηα κέζω ηνπ ηύπνπ ηεο ζπζρέηηζεο. 13/10/2011 Βάζεηο Γεδνκέλωλ 11
Αλαδξνκηθέο-Σπζρεηίζεηο Αλαδξνκηθέο ζπζρεηίζεηο ζπκβαίλνπλ ζηελ πεξίπηωζε πνπ ν ίδηνο ηύπνο νληόηεηαο ζπκκεηέρεη παξαπάλω από κηα θνξέο ζηε ζπζρέηηζε κε δηαθνξεηηθό ξόιν. Αλήθω N 1 Καηεγνξία 13/10/2011 Βάζεηο Γεδνκέλωλ 12
Σπζρεηίζεηο-Γλσξίζκαηα Μηα ζπζρέηηζε κπνξεί λα έρεη θάπνηα γλωξίζκαηα όπωο θαη νη νληόηεηεο. 13/10/2011 Βάζεηο Γεδνκέλωλ 13
Σπζρεηίζεηο-(min,max) Οη πεξηνξηζκνί ζηηο ζπζρεηίζεηο κεηαμύ δύν νληνηήηωλ, κπνξνύλ λα πεξηγξαθνύλ ωο έλα δεύγνο αθεξαίωλ πνπ εθθξάδνπλ ηα ειάρηζηα θαη κέγηζηα ζηηγκηόηππα ηεο δεύηεξεο νληόηεηαο ζηα νπνία κπνξεί λα ζπκκεηέρεη ε πξώηε νληόηεηα. 13/10/2011 Βάζεηο Γεδνκέλωλ 14
Με ηζρπξνί ηύπνη νληνηήησλ Με ηζρπξνί ηύπνη νληνηήηωλ ιέγνληαη νη ηύπνη νληνηήηωλ πνπ δελ έρνπλ γλώξηζκα-θιεηδί. Πξνζδηνξίδνληαη από ηε ζρέζε ηνπο (πξνζδηνξίδνπζα ζπζρέηηζε) κε άιιεο νληόηεηεο (πξνζδηνξίδνληαο ηδηνθηήηεο), ζε ζπλδπαζκό κε ηηο ηηκέο θάπνηωλ γλωξηζκάηωλ ηνπο (κεξηθά θιεηδηά). Έλαο κε ηζρπξόο ηύπνο νληνηήηωλ έρεη πάληα πεξηνξηζκό νιηθήο ζπκκεηνρήο ωο πξνο ηελ πξνζδηνξίδνπζα ζπζρέηηζή ηνπ. Γειαδή ε ζρέζε είλαη ππνρξεσηηθή- πξέπεη 13/10/2011 Βάζεηο Γεδνκέλωλ 15
Με ηζρπξνί ηύπνη νληνηήησλ- Παξάδεηγκα 13/10/2011 Βάζεηο Γεδνκέλωλ 16
Η Σπζρέηηζε ΔΞΔΙΓΙΚΔΥΣΗ (is-a) Ζ ζεώξεζε ελόο ζπλόινπ ηύπωλ νληνηήηωλ ωο έλα γεληθεπκέλν (generic) ηύπν Δπηκέξνπο Δμεηδίθεπζε ηωλ νληνηήηωλ κέζω ηεο ζπζρέηηζεο IS-A. Το βαζικό πλεονέκηημα αυηού είναι η ιδιόηηηα ηης ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑΣ (Inheritance) ηωλ Γλωξηζκάηωλ Παξάδεηγκα ΔΠΩΝΤΜΟ ΣΑΥ_ΓΗΔΤΘ ΩΡΑ ΣΖΛ ΖΜΔΡΑ ΑΦΜ ΑΡ_ΣΑΤΣ ΟΝΟΜΑ ΔΡΓΑΕΟΜΔΝΟ Is-A ΡΑΓΗΟΦΩΝΗΚΟ ΠΑΡΑΓΩΓΟ M ΠΑΡΟΤΗΑΕΔΗ ΘΔΖ ΔΡΓΑΗΑ E_MAIL ΠΡΟΓΡΑΜΜΑ Ν ΔΚΠΟΜΠΖ ΣΗΣΛΟ_ΔΚΠ 13/10/2011 Βάζεηο Γεδνκέλωλ 17
Σύλνςε - Θεσξία: Γξαθηθόο Σπκβνιηζκόο Μνληέινπ ER Συμβολισμός Σημασία νληόηεηα Αζζελήο_νληόηεηα ζρέζε Πξνζδηνξίδνπζα ζρέζε γλώξηζκα γλώξηζκα-θιεηδί Πιεηόηηκν_γλώξηζκα 13/10/2011 Βάζεηο Γεδνκέλωλ 18
Σύλνςε - Θεσξία: Γξαθηθόο Σπκβνιηζκόο Μνληέινπ ER Συμβολισμός Σημασία Σύλζεην γλώξηζκα Παξαγόκελν γλώξηζκα E 1 R E 2 Οιηθή ζπκκεηνρή ηεο E2 ζηελ R E 1 R N E 2 Λόγνο πιεζηθόηεηαο 1:N γηα ηηο E1:E2 ζηελ R R (min,max) E Γνκηθόο πεξηνξηζκόο (min, max) ζηε ζπκκεηνρή ηεο E ζηελ R 13/10/2011 Βάζεηο Γεδνκέλωλ 19
Παξάδεηγκα
Παξάδεηγκα 1 ν - Φαξκαθείν Θεωξείζηε ηηο παξαθάηω πξνδηαγξαθέο γηα ηελ θαηαζθεπή κηαο βάζεο δεδνκέλωλ ε νπνία ζα δηαηεξεί πιεξνθνξίεο γηα ηελ απνζήθε θαη ην πειαηνιόγην ελόο ζπγθεθξηκέλνπ θαξκαθείνπ. πγθεθξηκέλα : Γηα θάζε πειάηε ηνπ θαξκαθείνπ δηαηεξνύκε πιεξνθνξίεο ζρεηηθά κε ην όλνκά ηνπ, ην επίζεηό ηνπ, ην αζθαιηζηηθό ηνπ θνξέα, ην κεηξών ηνπ αζθαιηζηηθνύ ηνπ θνξέα, θαζώο θαη ηελ εκεξνκελία γέλλεζήο ηνπ. Δπίζεο δηαηεξνύκε δεδνκέλα γηα ην πνζό πνπ έρεη δαπαλήζεη ζε αγνξέο από ην θαξκαθείν θαζώο θαη ην ππόινηπν ηνπ ινγαξηαζκνύ ηνπ (πνζό πνπ δελ έρεη εμνθιεζεί). Γηα ηα θάξκαθα δηαηεξνύκε πιεξνθνξίεο γηα ην όλνκα ηνπ θαξκάθνπ, ηελ θαηεγνξία ζηελ νπνία αλήθεη (π.ρ. αλαιγεηηθό, ππλωηηθό θηι), πεξηγξαθή ηνπ θαξκάθνπ, παξελέξγεηεο ηνπ θαξκάθνπ, ηνλ κνλαδηθό θωδηθό ηνπ θαξκάθνπ θαζώο θαη ηελ δηαζέζηκε πνζόηεηά ηνπ ζηελ απνζήθε. Δπίζεο ζα πξέπεη λα δηαηεξείηαη πιεξνθνξία γηα θάζε αγνξά θαξκάθωλ. ε θάζε αγνξά ζα πξέπεη λα θαηαγξάθνπκε ηελ πνζόηεηα ηνπ εθάζηνηε θάξκαθνπ, ηελ εκεξνκελία αγνξάο θαη ηελ ζπλνιηθή αμία ηεο. Κάζε πειάηεο κπνξεί λα πξαγκαηνπνηεί κία ε πεξηζζόηεξεο αγνξέο. Μία αγνξά πξαγκαηνπνηείηαη απνθιεηζηηθά από έλαλ πειάηε. Έλα θάξκαθν κπνξεί λα ζπκκεηέρεη ζε κία ή πεξηζζόηεξεο αγνξέο. Μία αγνξά κπνξεί λα πεξηέρεη έλα ή πεξηζζόηεξα είδε θαξκάθωλ. 13/10/2011 Βάζεηο Γεδνκέλωλ 21
Παξάδεηγκα 1 ν - Φαξκαθείν Οληόηεηεο : Φάξκαθν Πειάηεο Αγνξά? ρέζεηο : Πειάηεο (κπνξεί λα) πξαγκαηνπνηεί αγνξά 1-Ν Αγνξά (πξέπεη λα) ζπκπεξηιακβάλεη θάξκαθν Μ-Ν 13/10/2011 Βάζεηο Γεδνκέλωλ 22
Πξώηε ιύζε - Γηάγξακκα E-R Μ.Α.Φ. ΠΕΛΑΣΗ 1 Ημ.γεν Ππαγματοποιεί Ν ID ΑΓΟΡΑ υνολική πλνιηθή πλνιηθή Αμία αξία Αμία Όνομα Επίθετο υν.δαπ αν Τπόινηπν υπόλοιπο Ημεπομηνία ID Ν υμμετέχει Μ ΦΑΡΜΑΚΟ Ποσότητα Σηκή Όνομα Κατηγοπία Πεπιγπαυή. Ποσότητα 13/10/2011 Βάζεηο Γεδνκέλωλ 23
Γεύηεξε ιύζε - Γηάγξακκα E-R Μ.Α.Φ. Ημ.γεν πλνιηθή υνολική πλνιηθή αμία αξία Αμία Ημεπομηνία ΠΕΛΑΣΗ Ν Αγοπάζει Μ ΦΑΡΜΑΚΟ Όνομα Ποσότητα Όνομα ID Επίθετο Τπόινηπν υπόλοιπο Κατηγοπία. Ποσότητα υν.δαπ αν Σηκή Πεπιγπαυή 13/10/2011 Βάζεηο Γεδνκέλωλ 24
Παξάδεηγκα 2 ν - Βηβιηνπσιείν Θέινπκε λα θαηαζθεπάζνπκε κηα ΒΓ γηα ηελ αιπζίδα βηβιηνπωιείωλ «Γεκόθξηηνο». ε θάζε πόιε ππάξρεη κόλν έλα θαηάζηεκα. Γηα θάζε θαηάζηεκα δηαηεξνύκε πιεξνθνξίεο γηα ηελ ηαρπδξνκηθή ηνπ δηεύζπλζε (ε νπνία απνηειείηαη από νδό, αξηζκό θαη ΣΚ) θαη ην ωξάξην ιεηηνπξγίαο ηνπ. Κάζε θαηάζηεκα πνπιά βηβιία. Έλα βηβιίν πξέπεη λα δηαηίζεηαη από έλα ή πεξηζζόηεξα θαηαζηήκαηα. Κάζε θαηάζηεκα κπνξεί λα δηαζέηεη ή όρη έλα βηβιίν θαη αλ ην δηαζέηεη κπνξεί λα έρεη έλα ή πεξηζζόηεξα αληίηππά ηνπ. Γηα θάζε βηβιίν πνπ πνπιά έλα θαηάζηεκα, θξαηάκε ηνλ αξηζκό ηωλ αληηηύπωλ πνπ δηαζέηεη θαη ηελ ηηκή πνπ ην πνπιά (πνπ κπνξεί λα είλαη δηαθνξεηηθή γηα θάζε θαηάζηεκα). Κάζε βηβιίν έρεη έλαλ κνλαδηθό θωδηθό (ISBN). Δπίζεο, θξαηάκε πιεξνθνξία γηα ηoλ εθδνηηθό νίθν, ην ρξόλν έθδνζήο ηνπ, ηνπο ζπγγξαθείο ηνπ θαη ηνλ ηίηιν ηνπ. Κάπνηα βηβιία απνηεινύλ επαλεθδόζεηο πξνεγνύκελωλ βηβιίωλ. Κάζε επαλέθδνζε έρεη δηαθνξεηηθό ISBN 13/10/2011 Βάζεηο Γεδνκέλωλ 25
Παξάδεηγκα 2 ν - Βηβιηνπσιείν Οληόηεηεο : Καηάζηεκα Βηβιίν Σρέζεηο : Καηάζηεκα (πξέπεη λα) δηαζέηεη βηβιία Μ-Ν Βηβιίν (κπνξεί λα) είλαη επαλέθδνζε βηβιίνπ 1-1 13/10/2011 Βάζεηο Γεδνκέλωλ 26
Λύζε - Γηάγξακκα E-R Ωξάξην Αξ. Αληηηύπωλ ISBN Δθ.Οίθνο Καηάζηεκα Μ Πνπιά Γηαζέηεη Ν Βηβιίν Υξνλ. Δθδνζεο Πόιε Γηεύζπλζε Οδόο ηηκή 1 1 πγγξαθέαο TK Αξηζκόο Πξνεγνύκελε έθδνζε 13/10/2011 Βάζεηο Γεδνκέλωλ 27
Παξάδεηγκα 3 ν - Σπλεξγείν Θεωξείζηε ην παξαθάηω ζύλνιν απαηηήζεωλ γηα ηε βάζε δεδνκέλωλ ελόο πλεξγείνπ Απηνθηλήηωλ. Σν ζπλεξγείν απαζρνιεί έλα ζύλνιν από ππαιιήινπο. Γηα ηνπο ππαιιήινπο καο ελδηαθέξεη λα θξαηάκε ην νλνκαηεπώλπκν, ηε δηεύζπλζε, ην ηειέθωλν, ηελ εηδηθόηεηα θαη ην κηζζό. Οη πειάηεο θιείλνπλ ξαληεβνύ κε ην ζπλεξγείν γηα ηελ επηζθεπή ηνπ απηνθηλήηνπ ηνπο. Γηα θάζε πειάηε ζέινπκε λα μέξνπκε: νλνκαηεπώλπκν, δηεύζπλζε, πόιε θαη ηειέθωλν. Γηα ην ξαληεβνύ θξαηάκε πιεξνθνξία γηα: ηελ εκεξνκελία, ηελ ώξα, κηα κηθξή πεξηγξαθή ηνπ πξνβιήκαηνο. Γηα ην απηνθίλεην ζέινπκε λα μέξνπκε: ηε κάξθα, ην κνληέιν, ηε ρξνλνινγία θαηαζθεπήο, ηνλ αξηζκό θπθινθνξίαο θαη ηνλ αξηζκό πιαηζίνπ ηνπ. 13/10/2011 Βάζεηο Γεδνκέλωλ 28
Κάζε πειάηεο κπνξεί λα θέξεη πεξηζζόηεξα από έλα απηνθίλεηα γηα επηζθεπή. ε θάζε απηνθίλεην γίλεηαη κία επηζθεπή, γηα ηελ νπνία θξαηάκε ηα εμήο ζηνηρεία: εκεξνκελία έλαξμεο επηζθεπήο, εκεξνκελία ιήμεο επηζθεπήο θαη πεξηγξαθή. Ζ επηζθεπή γίλεηαη από θάπνηνλ ππάιιειν. Σν ζπλεξγείν δηαζέηεη αληαιιαθηηθά ηα νπνία ρξεζηκνπνηνύληαη ζηηο επηζθεπέο ηωλ απηνθηλήηωλ. Γηα ην θάζε αληαιιαθηηθό θξαηάκε ζηνηρεία γηα: ηνλ ηύπν, ηνλ θωδηθό, ην θόζηνο θαη ηελ πνζόηεηα ηωλ απνζεκάηωλ. Μαο ελδηαθέξεη λα μέξνπκε πνηα θαη πόζα αληαιιαθηηθά ρξεζηκνπνηήζεθαλ ζε θάζε επηζθεπή. Κάζε επηζθεπή έρεη έλα ζπλνιηθό θόζηνο πνπ πξνθύπηεη από ην άζξνηζκα ηνπ θόζηνπο ηωλ αληαιιαθηηθώλ θαη ηνπ θόζηνπο εξγαζίαο. Μαο ελδηαθέξεη λα δηαηεξνύκε ζηνηρεία γηα ηηο νθεηιέο θάζε πειάηε 13/10/2011 Βάζεηο Γεδνκέλωλ 29
... Οληόηεηεο Τπάιιεινη Πειάηεο Απηνθίλεην Δπηζθεπή Αληαιιαθηηθά Ραληεβνύ ρέζεηο Ο πειάηεο (πξέπεη λα) Έρεη απηνθίλεην (κπνξεί λα) Κιείλεη ξαληεβνύ Καηά ηε δηάξθεηα ζπγθεθξηκέλεο επηζθεπήο (πξέπεη λα) Δπηζθεπάδεηαη απηνθίλεην (κπνξεί λα) Υξεζηκνπνηνύληαη αληαιιαθηηθά (πξέπεη λα) Απαζρνινύληαη ππάιιεινη 13/10/2011 Βάζεηο Γεδνκέλωλ 30
Λύζε Γηάγξακκα E-R ΣΖΛΔΦΩΝΟ ΠΟΛΖ ΓΗΔΤΘΤΝΖ ΖΜΔΡ ΜΔΓΔΘΟ ΑΡΥΗΚΖ ΟΦΔΗΛΖ ΑΦΜ ΟΝΟΜΑ ΔΠΩΝΤΜΟ ΩΡΑ ΠΔΡΗΓΡΑΦΖ ΠΟΟ ΠΟΤ ΔΥΔΗ ΔΞΩΦΛΖΘΔΗ Πελάτης ΚΩΓΗΚΟ ΓΗΔΤΘΤΝΖ ΟΝΟΜΑ ΣΖΛΔΦΩΝΟ Ραντεβού N Κλείνει 1 1 Έτει ΤΝ ΣΡΔΥΟΝ ΤΠΟΛ N ΔΠΩΝΤΜΟ Υπάλληλοι ΜΗΘΟ 1 Αστοκίνητο ΑΦΜ ΠΔΛΑΣΖ ΑΡ ΠΛΑΗΗΟΤ N ΔΗΓΗΚΟΣΖΣΑ Πάει ΑΡ ΚΤΚΛΟΦΟΡΗΑ ΜΑΡΚΑ ΔΣΟ ΚΑΣΑΚΔΤΖ ΜΟΝΣΔΛΟ Απαστολούνται N ΠΛΖΘΟ ΚΟΣΟ_ΟΜΑΓΑ M Επισκεσή Μ Χρησιμοποιούνται Ν Ανταναλλακτικά ΚΩΓΗΚΟ ΖΜ ΔΗΑΓΩΓΖ ΚΩΓΗΚΟ ΤΠ ΣΤΠΟ ΚΩΓΗΚΟ ΑΠΟΘΔΜΑ ΖΜ ΠΑΡΑΓΟΖ ΚΟΣΟ ΠΔΡΗΓΡΑΦΖ ΚΟΣΟ 13/10/2011 Βάζεηο Γεδνκέλωλ 31
Δξσηήζεηο... Δπραξηζηώ!!! 13/10/2011 Βάζεηο Γεδνκέλωλ 32