Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακός Λογισμός
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2 Σχεσιακός Λογισμός Στη σχεσιακή άλγεβρα έχουμε μια ακολουθία πράξεων ενώ στον σχεσιακό λογισμό έχουμε δηλωτικές εκφράσεις (μη διαδικαστικός τρόπος)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 3 Σχεσιακός Λογισμός Ισοδυναμία = ίδια εκφραστική δύναμη όποια ανάκτηση μπορεί να προσδιοριστεί σε σχεσιακή άλγεβρα μπορεί και σε σχεσιακό λογισμό και αντιστρόφως σχεσιακά πλήρης γλώσσα
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 4 Σχεσιακός Λογισμός Δυο προσαρμογές (από παίρνουν τιμές οι μεταβλητές): -- σχεσιακός λογισμός πλειάδων -- σχεσιακός λογισμός πεδίου
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 5 Σχεσιακός Λογισμός Πλειάδων Ο σχεσιακός λογισμός πλειάδων βασίζεται στον προσδιορισμό ενός πλήθους τιμών πλειάδων Κάθε μεταβλητή έχει πεδίο τιμών μια σχέση μιας βδ
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 6 Σχεσιακός Λογισμός Πλειάδων {t | COND(t)} (όπου t μεταβλητή πλειάδων) t είναι μια μεταβλητή πλειάδων (σχέση) και COND(t) είναι ένας τύπος (formula) που περιγράφει την t Αποτέλεσμα είναι το σύνολο όλων των πλιεάδων t για τις οποίες η συνθήκη COND(t) είναι TRUE
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 7 Παράδειγμα ΤαινίαΤίτλος Έτος Διάρκεια Είδος Παίζει Όνομα-Ηθοποιού Τίτλος Έτος Όνομα Διεύθυνση Έτος-Γέννησης Σύζυγος-Ηθοποιού Ηθοποιός
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 8 Σχεσιακός Λογισμός Πλειάδων πχ. οι έγχρωμες ταινίες {t | Ταινία(t) and t.Είδος = «Έγχρωμη»} μόνο ο τίτλος και το έτος {t.Τίτλος, t.Έτος | Ταινία(t) and t.Είδος = «Έγχρωμη»}
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 9 Σχεσιακός Λογισμός Πλειάδων {t | COND(t)} (όπου t μεταβλητή πλειάδων) πχ. οι ταινίες με διάρκεια πάνω από 100 λεπτά {t | Ταινία(t) and t.Διάρκεια > 100} μόνο ο τίτλος και το έτος {t.Τίτλος, t.Έτος | Ταινία(t) and t.Διάρκεια > 100}
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 10 Σχεσιακός Λογισμός Πλειάδων {t.Τίτλος, t.Έτος | Ταινία(t) and t.Διάρκεια > 100} ποια γνωρίσματα (project) Ποια σχέση Ποια συνθήκη
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 11 Σχεσιακός Λογισμός Πλειάδων Τυπικός Ορισμός {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 μια συνθήκη ή τύπος του σχεσιακού λογισμού πλειάδων
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 12 Σχεσιακός Λογισμός Πλειάδων Ένας τύπος του σχεσιακού λογισμού πλειάδων αποτελείται από άτομα Άτομα του σχεσιακού λογισμού πλειάδων: R(t i ): R όνομα σχέσης, t i μεταβλητή πλειάδων, προσδιορίζει ότι το πεδίο τιμών της πλειάδας είναι η σχέση R t i.A opt t j.B t i.A opt c ή c opt t i.A
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 13 Σχεσιακός Λογισμός Πλειάδων Κάθε άτομο αποτιμάται σε true ή false (τιμή αληθείας) του ατόμου Κάθε τύπος κατασκευάζεται από ένα ή περισσότερα άτομα Κάθε άτομο είναι ένας τύπος (F1 or F2) (F1 and F2) not(F1)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 14 Σχεσιακός Λογισμός Πλειάδων Επίσης: ( τ) (Φ) ( τ) (Φ) Ελεύθερη και δεσμευμένη μεταβλητή Απλά, δεσμευμένη αν ποσοδεικτείται
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 15 Παράδειγμα ΤαινίαΤίτλος Έτος Διάρκεια Είδος Παίζει Όνομα-Ηθοποιού Τίτλος Έτος Όνομα Διεύθυνση Έτος-Γέννησης Σύζυγος-Ηθοποιού Ηθοποιός
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 16 Σχεσιακός Λογισμός Πλειάδων Παράδειγμα: Το όνομα και η διεύθυνση όλων των ηθοποιών που έπαιξαν στη ταινία «ΑΙ» του 2001 {t.Όνομα, t.διεύθυνση | Ηθοποιός(t) and (( d) ( Παίζει(d) and d.Τίτλος = ‘ΑΙ’ and d.Έτος = 2001 and d. Όνομα-Ηθοποιού = t. Όνομα))}
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 17 Παράδειγμα Για κάθε ηθοποιό το όνομα και τον τίτλο-έτος για όλες τις έγχρωμες ταινίες στις οποίες παίζει μαζί με τον σύζυγο του/της
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 18 Σχεσιακός Λογισμός Πλειάδων Ασφαλείς Εκφράσεις Πρέπει να αποτιμάται σε πεπερασμένο αριθμό πλειάδων Πεδίο ορισμού μιας έκφρασης Ρ: σύνολο τιμών που αναφέρονται στο Ρ, δηλαδή οι τιμές που εμφανίζονται άμεσα στο Ρ (ως σταθερές) και οι τιμές πλειάδων σχέσεων που εμφανίζονται στο Ρ Ασφαλής: τιμές στο αποτέλεσμα από το πεδίο ορισμού Παράδειγμα μη ασφαλούς: {t | not(Ηθοποιός(t)}
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 19 Σχεσιακός Λογισμός Πεδίων Διαφορά από το σχεσιακό λογισμό πλειάδων: οι μεταβλητές είναι απλές τιμές του πεδίου ορισμού των γνωρισμάτων {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 μια συνθήκη ή τύπος του σχεσιακού λογισμού πεδίων
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 20 Σχεσιακός Λογισμός Πεδίων Άτομα του σχεσιακού λογισμού πεδίου 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 )
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 21 Σχεσιακός Λογισμός Πεδίων Κάθε τύπος κατασκευάζεται από ένα ή περισσότερα άτομα
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 22 Σχεσιακός Λογισμός Πεδίων Παράδειγμα: Ο αριθμός λογαριασμού, το ποσό και το υποκατάστημα για όλους τους λογαριασμούς στην Πάτρα {ο, d | Ηθοποιός(odes) and (( q) ( r) ( s) ( Ταινία(qrs) and r = ‘ΑΙ’ and s = 2001 and q = ο))} {t.Όνομα, t.Διεύθυνση | Ηθοποιός(t) and (( d) ( Παίζει(d) and d.Τίτλος = ‘ΑΙ’ and d.Έτος = 2001 and d. Όνομα-Ηθοποιού = t. Όνομα))} πλειάδων τιμών