Βάσεις Δεδομένων 2005-2006 Ευαγγελία Πιτουρά1 Σχεσιακός Λογισμός.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ 2 ΜΑΘΗΜΑ 4.
Advertisements

Σχεσιακός Λογισμός Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακός Λογισμός.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων: Αποσύνθεση.
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΜΑΘΗΜΑ 2. ΣΧΕΣΙΑΚΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ • Μια σχεσιακή ΒΔ καταγράφει δεδομένα μέσα σε σχέσεις (πίνακες). • Μια πραγματική οντότητα γίνεται.
Δρ. Παναγιώτης Συμεωνίδης
Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ
Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων.
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΜΑΘΗΜΑ 3.
ΣΧΕΣΙΑΚΗ ΑΛΓΕΒΡΑ ΜΑΘΗΜΑ 4.
1 Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Επεξεργασία και βελτιστοποίηση ερωτήσεων Πάνος Βασιλειάδης Σεπτέμβρης.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακός Λογισμός.
31 Μαρτίου 2015 ΔΙΑΦΑΝΕΙΑ 1 ΤΥΠΙΚΕΣ ΜΕΘΟΔΟΙ ΑΝΑΛΥΣΗΣ ΣΥΣΤΗΜΑΤΩΝ ΤΜ. ΠΛΗΡΟΦΟΡΙΚΗΣ Α.Π.Θ. – ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ ΚΑΤΗΓΟΡΗΜΑΤΙΚΟΣ ΛΟΓΙΣΜΟΣ Ι Για τον προτασιακό.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Εργαστήριο ΙΙI Τμήμα Πληροφορικής ΑΠΘ
Βάσεις Δεδομένων Εργαστήριο ΙΙ Τμήμα Πληροφορικής ΑΠΘ
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακός Λογισμός.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων.
1 Βάσεις Δεδομένων ΙI Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ SQL (3 από 3) T Manavis.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακός Λογισμός.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Συναρτησιακές Εξαρτήσεις.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακή Άλγεβρα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Η Γλώσσα SQL.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Συναρτησιακές Εξαρτήσεις.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Κανονικοποίηση Σχήματος.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Η Γλώσσα SQL.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Σχεσιακή Άλγεβρα.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή Σχεδιασμός μιας ΒΔ ανάλυση ποιας πληροφορίας και της σχέσης ανάμεσα στα στοιχεία της περιγραφή.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή Σχεδιασμός μιας ΒΔ ανάλυση ποιας πληροφορίας και της σχέσης ανάμεσα στα στοιχεία της περιγραφή.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακός Λογισμός.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Λογικός Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεδιασμός Σχεσιακών Σχημάτων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Κανονικές Μορφές.
Βασικά στοιχεία της Java
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Η Γλώσσα SQL.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακός Λογισμός.
1 Σχεσιακή Άλγεβρα Προβολή, Επιλογή, Καρτεσιανό Γινόμενο, Ένωση, Διαφορά, Σύνθεση Τελεστών, Μετονομασία, Παραδείγματα Ερωτήσεων, Τομή Συνόλων, Φυσική Σύζευξη.
ΜΕΤΑΒΛΗΤΕΣ-ΣΤΑΘΕΡΕΣ -ΕΚΦΡΑΣΕΙΣ
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΑΛΓΟΡΙΘΜΟΣ ΠΡΟΒΛΗΜΑ ΑΛΓΟΡΙΘΜΟΣ ΛΥΣΗ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Η Γλώσσα SQL Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Σχεσιακή Άλγεβρα.
Σχεσιακή Άλγεβρα Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΔΟΜΕΣ ΕΛΕΓΧΟΥ(if-else, switch) και Λογικοί τελεστές / παραστάσεις
Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Τελεστές και ή όχι Για την εκτέλεση αριθμητικών πράξεων
Σχεσιακός Λογισμός Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
SQL Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Σχεσιακός Λογισμός Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Σχεσιακός Λογισμός Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Το Σχεσιακό Μοντέλο Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Σχεσιακός Λογισμός Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Μεταγράφημα παρουσίασης:

Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Σχεσιακός Λογισμός

Βάσεις Δεδομένων Ευαγγελία Πιτουρά2 Εισαγωγή Σχεσιακό Μοντέλο  Τυπικές Γλώσσες Ερωτήσεων Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός Πλειάδων Σχεσιακός Λογισμός Πεδίου

Βάσεις Δεδομένων Ευαγγελία Πιτουρά3 Σχεσιακός Λογισμός Γιατί σχεσιακό λογισμό;  αδυναμία σχεσιακή άλγεβρας: περιγράφει τον τρόπο (τα βήματα) για να πάρουμε την απάντηση σε μια ερώτηση - δηλαδή, το πως παρέχει ένα σύνολο από πράξεις μία ερώτηση στη σχεσιακή άλγεβρα είναι μια ακολουθία από πράξεις που προσδιορίζει ρητά τη σειρά εκτέλεσης των πράξεων και καθορίζει μια στρατηγική αποτίμησης  στόχος: περιγραφή του τι θέλουμε (βάση για QBE)

Βάσεις Δεδομένων Ευαγγελία Πιτουρά4 Σχεσιακός Λογισμός Στη σχεσιακή άλγεβρα έχουμε μια ακολουθία πράξεων (procedural) ενώ στον σχεσιακό λογισμό έχουμε δηλωτικές εκφράσεις (declarative μη διαδικαστικός τρόπος) Δυο προσαρμογές (με βάση το από που παίρνουν τιμές οι μεταβλητές): -- σχεσιακός λογισμός πλειάδων -- σχεσιακός λογισμός πεδίου

Βάσεις Δεδομένων Ευαγγελία Πιτουρά5 Σχεσιακός Λογισμός Ισοδυναμία = ίδια εκφραστική δύναμη όποια ανάκτηση μπορεί να προσδιοριστεί σε σχεσιακή άλγεβρα μπορεί και σε σχεσιακό λογισμό και αντιστρόφως σχεσιακά πλήρης γλώσσα

Βάσεις Δεδομένων Ευαγγελία Πιτουρά6 Σχεσιακός Λογισμός Πλειάδων

Βάσεις Δεδομένων Ευαγγελία Πιτουρά7 Εισαγωγή Ο σχεσιακός λογισμός πλειάδων βασίζεται στον προσδιορισμό ενός πλήθους τιμών πλειάδων: «Δώσε μου τις πλειάδες που ικανοποιούν μια συνθήκη» Η ερώτηση δίνει τη συνθήκη ως μια λογική έκφραση (στη συνέχεια, θα δούμε τη σύνταξη της) Κάθε μεταβλητή έχει πεδίο τιμών μια συγκεκριμένη σχέση μιας βδ

Βάσεις Δεδομένων Ευαγγελία Πιτουρά8 Γενική Μορφή {t | COND(t)} (όπου t μεταβλητή πλειάδων) t είναι μια μεταβλητή πλειάδων (σχέση) και COND(t) είναι ένας τύπος (formula) που περιγράφει την t Αποτέλεσμα είναι το σύνολο όλων των πλειάδων t για τις οποίες η συνθήκη COND(t) είναι TRUE π.χ., {t | Ηθοποιός(t)}

Βάσεις Δεδομένων Ευαγγελία Πιτουρά9 Παράδειγμα ΤαινίαΤίτλος Έτος Διάρκεια Είδος Παίζει Όνομα-Ηθοποιού Τίτλος Έτος Όνομα Διεύθυνση Έτος-Γέννησης Σύζυγος-Ηθοποιού Ηθοποιός

Βάσεις Δεδομένων Ευαγγελία Πιτουρά10 Παράδειγμα {t | COND(t)} (όπου t μεταβλητή πλειάδων) πχ. οι ταινίες με διάρκεια πάνω από 100 λεπτά {t | Ταινία(t) and t.Διάρκεια > 100} μόνο ο τίτλος και το έτος {t.Τίτλος, t.Έτος | Ταινία(t) and t.Διάρκεια > 100} προβολή επιλογή Σημείωση t.Διάρκεια το γράφαμε t[Διάρκεια] σχέση τιμών

Βάσεις Δεδομένων Ευαγγελία Πιτουρά11 Παράδειγμα (συνέχεια) {t.Τίτλος, t.Έτος | Ταινία(t) and t.Διάρκεια > 100} ποια γνωρίσματα (project) Ποια σχέση Ποια συνθήκη  Για κάθε μεταβλητή πλειάδων t, τη σχέση τιμών R(t)  Μια συνθήκη για την επιλογή ενός συγκεκριμένου συνδυασμού πλειάδων (η συνθήκη αποτιμάται για κάθε πιθανό συνδυασμό πλειάδων)  Τα ζητούμενα γνωρίσματα που θα ανακτηθούν Σημείωση: μια μεταβλητή πλειάδων t παίρνει τιμές από όλες τις δυνατές τιμές του κόσμου μας, αν R(t), τότε true αν t ανήκει στην R

Βάσεις Δεδομένων Ευαγγελία Πιτουρά12 Τυπικός Ορισμός {t 1.A 1, t 2.A 2, …, t n.A n | COND(t 1, t 2, …, t n, t n+1, t n+2, … t n+m )} t 1, t 2, …, t n+m : μεταβλητές πλειάδων Α 1, Α 2, …, Α n : γνωρίσματα COND μια συνθήκη ή τύπος του σχεσιακού λογισμού πλειάδων

Βάσεις Δεδομένων Ευαγγελία Πιτουρά13 Τυπικός Ορισμός (συνέχεια) Ένας τύπος (formula) του σχεσιακού λογισμού πλειάδων αποτελείται από άτομα Άτομα του σχεσιακού λογισμού πλειάδων: R(t i ): R όνομα σχέσης, t i μεταβλητή πλειάδων, προσδιορίζει ότι το πεδίο τιμών της πλειάδας είναι η σχέση R t i.A opt t j.B t i.A opt c ή c opt t i.A opt : = ≠ ≤ ≥ c : σταθερά A, B : γνωρίσματα

Βάσεις Δεδομένων Ευαγγελία Πιτουρά14 Τυπικός Ορισμός (συνέχεια) Κάθε άτομο αποτιμάται σε true ή false (τιμή αληθείας) του ατόμου Κάθε τύπος κατασκευάζεται από ένα ή περισσότερα άτομα Κάθε άτομο είναι ένας τύπος (F1 or F2) (F1 and F2) not(F1)

Βάσεις Δεδομένων Ευαγγελία Πιτουρά15 Τυπικός Ορισμός (συνέχεια) Επίσης: (  τ) (Φ) (  τ) (Φ) Ελεύθερη και δεσμευμένη μεταβλητή Με απλά λόγια, δεσμευμένη αν ποσοδεικτείται Οι μόνες ελεύθερες μεταβλητές πλειάδων του σχεσιακού λογισμού θα πρέπει να είναι αυτές που εμφανίζονται στα αριστερά του |

Βάσεις Δεδομένων Ευαγγελία Πιτουρά16 Σχεσιακός Λογισμός Πλειάδων  Υπενθύμιση:  DeMorgan  Ιmplication:  Διπλή άρνηση: “every human is mortal : no human is immortal” P1 and P2  not (not(P1) or not(P2)) P1  P2  not(P1) or P2 (  t) P(t)  not (  t) (not P(t))

Βάσεις Δεδομένων Ευαγγελία Πιτουρά17 Παράδειγμα ΤαινίαΤίτλος Έτος Διάρκεια Είδος Παίζει Όνομα-Ηθοποιού Τίτλος Έτος Όνομα Διεύθυνση Έτος-Γέννησης Σύζυγος-Ηθοποιού Ηθοποιός

Βάσεις Δεδομένων Ευαγγελία Πιτουρά18 Παράδειγμα Παράδειγμα (επιλογή, προβολή): Τα ονόματα ηθοποιών που γεννήθηκαν μετά το 1980 {t.Όνομα | Ηθοποιός(t) and t.Ετος-Γέννησης > 1980}

Βάσεις Δεδομένων Ευαγγελία Πιτουρά19 Παράδειγμα Παράδειγμα (συνένωση): Το όνομα και η διεύθυνση όλων των ηθοποιών που έπαιξαν στη ταινία «Νύφες» του 2004 {t.Όνομα, t.διεύθυνση | Ηθοποιός(t) and ((  d) ( Παίζει(d) and d.Τίτλος = ‘Νύφες’ and d.Έτος = 2004 and d. Όνομα-Ηθοποιού = t. Όνομα))} Συνθήκη συνένωσης

Βάσεις Δεδομένων Ευαγγελία Πιτουρά20 Παράδειγμα Παράδειγμα (συνένωση): Το όνομα και η διεύθυνση όλων των ηθοποιών που έπαιξαν στη ταινία «Νύφες» του 2004 {d.Όνομα-Ηθοποιού, t.διεύθυνση | Ηθοποιός(t) and Παίζει(d) and d.Τίτλος = ‘Νύφες’ and d.Έτος = 2004 and d. Όνομα-Ηθοποιού = t. Όνομα} Δυο διαφορετικές (ελεύθερες) μεταβλητές πλειάδων Η συνθήκη αποτιμάται για κάθε συνδυασμό πλειάδων που ανατίθεται στο d και t. Προτιμήστε εκφράσεις με μια μεταβλητή στα αριστερά του |

Βάσεις Δεδομένων Ευαγγελία Πιτουρά21 Παράδειγμα Παράδειγμα (διαφορά): Τα ονόματα ηθοποιών που δεν έπαιξαν στην ταινία American Beauty του 1999 {t.Όνομα | Ηθοποιός(t) and (not ((  d) ( Παίζει(d) and d.Τίτλος = ‘Αmerican Beauty’ and d.Έτος = 1999 and d.Όνομα-Ηθοποιού = t. Όνομα))} Χρήση του  ;

Βάσεις Δεδομένων Ευαγγελία Πιτουρά22 Παράδειγμα Παράδειγμα (διαφορά): Τα ονόματα ηθοποιών που δεν έπαιξαν στην ταινία American Beauty του 1999 Χρήση του  {t.Όνομα | Ηθοποιός(t) and ((  d) ( not(Παίζει(d)) or (d.Όνομα-Ηθοποιού  t. Όνομα or d.Τίτλος  ‘Αmerican Beauty’ and d.Έτος  1999)))} Χρειάζεται ιδιαίτερη προσοχή, πρέπει να είναι true για όλες τις δυνατές πλειάδες (  t) P(t)  not (  t) (not P(t)) (  t) (P(t))  not (  t) (not P(t))

Βάσεις Δεδομένων Ευαγγελία Πιτουρά23 Ασφαλείς Εκφράσεις Πρέπει να αποτιμάται σε πεπερασμένο αριθμό πλειάδων Πεδίο ορισμού μιας έκφρασης Ρ: σύνολο τιμών που αναφέρονται στο Ρ, δηλαδή οι τιμές που εμφανίζονται άμεσα στο Ρ (ως σταθερές) και οι τιμές πλειάδων σχέσεων που εμφανίζονται στο Ρ Ασφαλής: τιμές στο αποτέλεσμα από το πεδίο ορισμού Παράδειγμα μη ασφαλούς: {t | not(Ηθοποιός(t)}

Βάσεις Δεδομένων Ευαγγελία Πιτουρά24 Παράδειγμα Για κάθε ηθοποιό το όνομα και τον τίτλο-έτος για όλες τις ταινίες στις οποίες παίζει μαζί με τον σύζυγο του/της

Βάσεις Δεδομένων Ευαγγελία Πιτουρά25 Σχεσιακός Λογισμός Πεδίου

Βάσεις Δεδομένων Ευαγγελία Πιτουρά26 Σχεσιακός Λογισμός Πεδίων Διαφορά από το σχεσιακό λογισμό πλειάδων: οι μεταβλητές είναι απλές τιμές του πεδίου ορισμού των γνωρισμάτων {x 1, x 2, …, x n | COND(x 1, x 2, …, x n, x n+1, x n+2, … x n+m } x 1, x 2, …, x n : μεταβλητές πεδίου τιμών που παίρνουν τιμές από πεδία ορισμού γνωρισμάτων COND μια συνθήκη ή τύπος του σχεσιακού λογισμού πεδίων

Βάσεις Δεδομένων Ευαγγελία Πιτουρά27 Σχεσιακός Λογισμός Πεδίων Άτομα του σχεσιακού λογισμού πεδίου R(x 1, x 2, …, x n ): R όνομα σχέσης n-οστού βαθμού x i opt x j x i opt c ή c opt x i Για συντομία {x 1 x 2 …x n | R(x 1, x 2, …, x n ) αντί του {x 1, x 2, …, x n | R(x 1, x 2, …, x n )

Βάσεις Δεδομένων Ευαγγελία Πιτουρά28 Σχεσιακός Λογισμός Πεδίων Κάθε τύπος κατασκευάζεται από ένα ή περισσότερα άτομα

Βάσεις Δεδομένων Ευαγγελία Πιτουρά29 Σχεσιακός Λογισμός Πεδίου Παράδειγμα: Το όνομα και η διεύθυνση όλων των ηθοποιών που έπαιξαν στη ταινία «Νύφες» του 2004 {ο, d | Ηθοποιός(odes) and ((  q) (  r) (  s) ( Ταινία(qrs) and r = ‘Νύφες’ and s = 2004 and q = ο))} {t.Όνομα, t.Διεύθυνση | Ηθοποιός(t) and ((  d) ( Παίζει(d) and d.Τίτλος = ‘Νύφες’ and d.Έτος = 2004 and d. Όνομα-Ηθοποιού = t. Όνομα))} πλειάδων πεδίου

Βάσεις Δεδομένων Ευαγγελία Πιτουρά30 Ανακεφαλαίωση Είδαμε διάφορες τυπικές γλώσσες ερωτήσεων για το σχεσιακό μοντέλο Τυπικές γλώσσες Σχεσιακή Άλγεβρα Σχεσιακό Λογισμός (πλειάδων και πεδίου) Στα επόμενα μαθήματα SQL (Πλήρης γλώσσα: ορισμό δεδομένων, ενημερώσεις και ερωτήσεις) QBE