ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (Relational Model) Μαθ. #10

Σχετικά έγγραφα
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ. Relational Model Μαθ. #9

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model. SQL Μαθ. #11

Εισαγωγή στις Βάσεις Δεδομζνων II

Κεφάλαιο 3 Σχεσιακό Μοντέλο

Εισαγωγή στις Βάσεις Δεδομζνων II

Βάσεις Δεδομένων (Databases)

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language)

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1)

Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων (Databases)

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα

Εισαγωγή στη Σχεσιακή Άλγεβρα

Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων Σύνθετα SQL queries

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη

Βάσεις Δεδομένων Σύνθετα SQL queries. Ψευδώνυμα (Aliases) (2) Ψευδώνυμα (Aliases) (1) Ασάφεια και Πλήρη Ονόματα. Ερώτημα χωρίς τον όρο WHERE (1)

#5. Σχεσιακό Μοντέλο

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 8: RM II. Relational Model. (Chapter )

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός

Lecture 14: SQL DML I

Διάλεξη 08: Αντιστοίχηση Εννοιολογικού σε Σχεσιακό Μοντέλο (ER/EER to Relational) Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων (Databases)

Κεφάλαιο 3 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ. I.B. Το Σχεσιακό Μοντέλο Σελίδα 2.1

Εισαγωγή στις Βάσεις Δεδομζνων II

Βάσεις Δεδομένων. Σχεσιακό Μοντέλο Δεδομένων. Βασίλειος Βεσκούκης Ορισμός Βάσης Δεδομένων Δομή Περιορισμοί


Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL

Βάσεις δεδομένων. (8 ο μάθημα) Ηρακλής Βαρλάμης

Περιεχόμενα. Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL. Συνένωση Σχέσεων στην SQL2 (3) Συνένωση Σχέσεων στην SQL2. (Join Relations Feature in SQL)

Lecture 8: RM I + RA I

Entity-Relationship Model (Chen) Οντολογικό Σχεσιακό Μοντέλο

Βάσεις Δεδομένων (Databases)

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη

S Q Q L L -- SQL (Structured Query Language) select insert update delete 2.47

Κλειδιά (keys) Λογικά, σκεφτόµαστε για «κλειδιά» σαν τα δεδοµένα (τα πεδία) εκείνα τα οποία µας επιτρέπουν να ξεχωρίσουµε τις διάφορες εγγραφές

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Η αναλυτική περιγραφή της γλώσσας SQL αποτελεί αντικείµενο των σελίδων που ακολουθούν. Η ΓΛΩΣΣΑ ΟΡΙΣΜΟΥ Ε ΟΜΕΝΩΝ

Βάσεις δεδομένων. (7 ο μάθημα) Ηρακλής Βαρλάμης

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005

Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Διάλεξη 10: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) ΙI

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Σχεσιακός Ορισµός. Μαθ. #12

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΟΝΟΜΑΤΕΠΩΝΥΜΟ ΑΡΙΘΜΟΣ ΜΗΤΡΩΟΥ

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Ασκήσεις -Επανάληψη. Βάσεις Δεδομένων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πράξεις στο Σχεσιακό Μοντέλο

Διάλεξη 13: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) I. Διδάσκων: Παναγιώτης Ανδρέου

Κεφάλαιο 5 Σχεσιακή Άλγεβρα

Βάσεις Δεδομένων. Ενότητα 7.2: Structured Query Language - 2 ο Μέρος. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 10: RA IΙ. RA Advanced + Examples

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ. Relational Model Μαθ. #8

Lecture 16: SQL DML III

Κεφάλαιο 4. Η Γλώσσα SQL και Σχεσιακός Λογισµός. Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.46

Βάσεις εδοµένων. Συνολοθεωρητικές Πράξεις. Ειδικές Πράξεις. Εκφράσεις. Θεµελίωση της Σχεσιακού Μοντέλου εδοµένων. Σχεσιακή Άλγεβρα Σχεσιακός Λογισµός

Κεφάλαιο 5. Ορισµός Βάσεων εδοµένων µε SQL DDL - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. Σχεσιακές Γλώσσες Εµφύτευση / DDL Σελίδα 2.

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής.

(Μέρος 3:Γλώσσα Ορισµού, Γλώσσα Τροποποίησης, Ενσωµατωµένη SQL) Βάσεις εδοµένων Ευαγγελία Πιτουρά 2

Διάλεξη 14: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) II. Διδάσκων: Παναγιώτης Ανδρέου

Βάσεις Δεδομένων (Databases)

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

Βάσεις Δεδομένων (Databases)

Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Διάλεξη 12: SQL Data Definition Language. Διδάσκων: Παναγιώτης Ανδρέου

Query-by-Example (QBE)

Το σχεσιακό μοντέλο βάσεων δεδομένων

Βάσεις Δεδομένων Ενότητα 6

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα


Βάσεις δεδομένων. (4 ο μάθημα) Ηρακλής Βαρλάμης

2 ο Σύνολο Ασκήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Κεφάλαιο 11 Ερωτήµατα

Το Σχεσιακό μοντέλο και η γλώσσα SQL

SQL Data Definition. REFERENCES (foreign key), CHECKκαι PRIMARY KEY (key)

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Διαχείριση Πολιτισμικών Δεδομένων

Εισαγωγή Mια από τις βασικές λειτουργίες ενός σχεσιακού συστήµατος διαχείρισης βάσεων δεδοµένων είναι η διαχείριση του πληροφοριακού περιεχοµένου που

Βάσεις Δεδομένων (Databases)

Σχεσιακή Άλγεβρα. Παύλος Εφραιμίδης. Βάσεις Δεδομένων Σχεσιακή Άλγεβρα 1

DELETE, UPDATE, INSERT.

Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων

Σχεσιακή Άλγεβρα. Προγράµµατα που απαντούν σε ερωτήσεις για τον παρόν στιγµιότυπο της βάσης δεδοµένων (quering)

Κεφάλαιο 5. Ορισµός Βάσεων εδοµένων µε SQL DDL - Άλλες Γλώσσες Σχεσιακών Βάσεων (QBE) Ι.Β. Σχεσιακές Γλώσσες Εµφύτευση / DDL Σελίδα 2.

ΗΥ360 Αρχεία και Βάσεις Δεδομένων. Φροντιστήριο στην Σχεσιακή Άλγεβρα.

Κεφάλαιο 9 Συσχετίσεις

DELETE, UPDATE, INSERT

Βάσεις δεδομένων. Ηρακλής Βαρλάμης

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 3ο Μάθημα: Εισαγωγή στην SQL. Δρ. Κωνσταντίνος Χ.

Βάσεις Δεδομένων Ι SQL Μέρος 3 ο. (Constraints & Joins) Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ

Κεφάλαιο 8. ΣΧΕ ΙΑΣΜΟΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΚΑΙ ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ (Normalization) Ι.Β Σχεδιασµός Σχεσιακών Β και Κανονικοποίηση Σελίδα 4.1

Σχεσιακή Άλγεβρα. Σχεσιακή Άλγεβρα

Διάλεξη 15: Γλώσσα Επεξεργασίας Δεδομένων/ Data Manipulation Language (SQL DML) III. Διδάσκων: Παναγιώτης Ανδρέου

Τεχνολογία Πολιτισμικού Λογισμικού


Lecture 21: Functional Dependencies and Normalization

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

Φροντιστήριο Σχεσιακή Άλγεβρα (μέρος 2 ο ) - Σχεσιακός Λογισμός Δημητράκη Κατερίνα

Βάσεις Δεδομένων (Databases)

ΗΓλώσσαSQL. Εισαγωγή Βασικές Έννοιες Τύποι Δεδομένων Ορισμός Δεδομένων Χειρισμός Δεδομένων

Lecture 15: SQL DML II

Transcript:

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ (Relational Model) Μαθ. #10

Πράξεις Αλλαγής εδοµένων INSERT (εισαγωγή) Αυτός ο τελεστής παρέχει µια λίστα από πεδία τιµών για µια καινούργια πλειάδα η οποία θα εισαχθεί σε µια σχέση R Μπορεί να καταπατήσει οποιοδήποτε περιορισµό ακεραιότητας Π.χ. Insert < Cecilia, F, Kolonsky, 677678989, 05-APR-50, 6357 Windy Lane, Katy, TX, F, 28000, null, 4> into EMPLOYEE

Πράξεις Αλλαγής εδοµένων DELETE (διαγραφή) Για να ορισθεί µια διαγραφή, µια συνθήκη πάνω στα πεδία ορισµού της σχέσης καθορίζει τις πλειάδες που θα διαγραφούν Μπορεί να καταπατήσει µόνο «αναφορική ακεραιότητα» Π.χ. Delete the WORKS_ON πλειάδα µε ESSN = 999887777 και PNO = 10 Αυτή η διαγραφή είναι OK! Π.χ. Delete the EMPLOYEE tuple with SSN = 999887777 Όχι, γιατί 2 πλειάδες στην WORKS_ON αναφέρονται σ αυτήν την πλειάδα

DECLARE RELATION EMPLOYEE FOR SCHEMA COMPANY ATTRIBUTES FNAME DOMAIN PERSON_NAME MINIT DOMAIN PERSON_INTIALS LNAME DOMAIN PERSON_NAME SSN DOMAIN PERSON_SSN BDATE DOMAIN DATES ADDRESS DOMAIN ADDRESS SEX DOMAIN PERSON_SEX SALARY DOMAIN PERSON_SALARIES SUPERSSN DOMAIN PERSON_SSSN DNO DOMAIN DEPT_NUMBER CONSTRAINTS PRIMARY KEY(SSN) FOREIGN_KEY(SUPERSSN) REFERENCES EMPLOYEE FOREIGN_KEY(DNO) REFERENCES DEPARTMENT

DECLARE RELATION DEPARTMENT FOR SCHEMA COMPANY ATTRIBUTES DNAME DOMAIN DEPT_NAME DNUMBER DOMAIN DEPT_NUMBER MGRSSN DOMAIN PERSON_SSN MGRSTARTDATE DOMAIN DATES CONSTRAINTS PRIMARY_KEY(DNUMBER), KEY (DNAME), FOREINGN KEY(MGRSSN) REFERENCES EMPLOYEE

Σχεσιακό Μοντέλο Σχεσιακή Άλγεβρα Η κεντρική ιδέα είναι Μια λογική παράσταση (έκφραση) δέχεται σαν δεδοµένα σχέσεις και παράγει σαν αποτέλεσµα σχέση f : R1 x R2 x x Rn R Εποµένως, εµφώλευση είναι δυνατή f1(f2(f3( ))) Στησχεσιακήάλγεβραµέσο σχεσιακών τελεστών Στη SQL µέσο εµφωλευτικής where όρο (clause)

Ο Codd όρισε δυο σύνολα από υψηλού επιπέδου τελεστές Παραδοσιακό σύνολο Ένωση (union) Ελάχιστο σύνολο Τοµή (intersection) ιαφορά (difference) Καρτεσιανό Γινόµενο (Cartesian product) Ελαφρώς αλλαγµένο για να λαµβάνει υπόψη το γεγονός ότι ο τελεστής (όρος) είναι σχέση και όχι ένα τυχών σύνολο

Ο Codd όρισε δυο σύνολα από υψηλού επιπέδου τελεστές Ειδικούς σχεσιακούς τελεστές Select Project Natural join Divide (quotient) Join Semi-join Ελάχιστο σύνολο

Σχεσιακό Μοντέλο Union (U) Κτίζει µια σχέση η οποία αποτελείται από όλες τις πλειάδες που εµφανίζονται σε µια ή και τις δυο καθορισµένες σχέσεις t R U S εάν t R ή t S R και S πρέπει να είναι συµβατά Ιδίου βαθµού Τα αντίστοιχα πεδία τιµών να είναι τα ίδια Γενικά η συµβατότητα του R και S µπορεί να αποφασιστεί απλά από το σχήµατους

Σχεσιακό Μοντέλο Union (U)

Σχεσιακό Μοντέλο ιαφορά ( - ) ηµιουργεί µια σχέση που αποτελείται από όλες τις πλειάδες που εµφανίζονται στην πρώτη και όχι στην δεύτερη από δυο ορισµένες σχέσεις t R - S εάν t R και t S R και S πρέπει να είναι συµβατά

Σχεσιακό Μοντέλο Τοµή ( ) ηµιουργεί µια σχέση που αποτελείται από όλες τις πλειάδες που εµφανίζονται και στις δυο σχέσεις t R S εάν t R και t S R και S πρέπει να είναι συµβατά R S = R (R S)

Σχεσιακό Μοντέλο Καρτεσιανό Γινόµενο (Χ) ηµιουργεί µια σχέση από δυο ορισµένες σχέσεις που αποτελείται από όλους τους δυνατούς συνδυασµούς πλειάδων, µια από κάθε σχέση t R Χ S εάν Τα πρώτα Κ1 στοιχεία του t αποτελούν µια πλειάδα στο R Τα υπόλοιπα Κ2 στοιχεία του t αποτελούν µια πλειάδα στο S Όπου Κ1 είναι ο βαθµός του R και Κ2 είναι ο βαθµός του Σ

Σχεσιακό Μοντέλο Καρτεσιανό Γινόµενο (Χ)

Σχεσιακό Μοντέλο Selection (σ) Επιλέγει ειδικές πλειάδες από µια σχέση. ηλαδή περιορίζει τη σχέση σε αυτές τις πλειάδες που ικανοποιούν µια συνθήκη F t σ F (R) εάν t R και F(t) Όπου F είναι µια λογική παράσταση αποτελούµενη από Τελεστές, σταθερές, ονόµατα στηλών, σειρά όρου Αριθµητικοί τελεστές συγκρίσεως =<> Λογικοί τελεστές v ^

Παράδειγµα επιλογής

Θεωρείστε τη σχέση Παραδείγµατα SUPPLIES (SNAME, INAME, PRICE) Query 1 Βρες όλους τους suppliers που προµηθεύουν φασολάκι Π SNAME ( σ INAME= φασολάκι (SUPPLIES) Query 2 Βρεςόλαταπροϊόνταπουοπροµηθευτής «Ψαθάς» πωλεί για λιγότερο από $4.5 Π ΙΝΑΜΕ, PRICE ( σ SNAME= Ψαθάς ^ PRICE < $4.5 (SUPPLIES))

Σχεσιακό Μοντέλο Βελτιστοποιήσεις & Υλοποιήσεις Ένωση, ιαφορά (συγχώνευση, merging) Οι σχέσεις πρέπει να τοποθετηθούν σε σειρά (sorted) Καρτεσιανό Γινόµενο Ένα είναι δυνατό να αποφευχθεί (οι πλειάδες) Αντικατάστασης µε JOINs όπου SORT/MERGE µπορεί να χρησιµοποιηθεί Βελτιστοποίησης της σειράς υπολογισµού της λογικής παράστασης

Σχεσιακό Μοντέλο Βελτιστοποιήσεις & Υλοποιήσεις Projection Βελτιστοποίησης µετηµετακίνηση ιδίων πλειάδων µεχρήσηsorting Selection Βελτιστοποίησης της σειράς υπολογισµού της λογικής παράστασης Χρήση «µονοπατιών πρόσβασης» (indexing)

Σχεσιακό Μοντέλο Περιορισµοί της Σχεσιακής Άλγεβρας Κάποιου είδους ερωτήσεις δεν µπορούν να απαντηθούν: Είναι βασισµένη στη λογική πρώτης τάξης, εποµένως Ανεπαρκές για αναδροµικές ερωτήσεις Βρες όλους τους υπαλλήλους που διευθύνονται από τη «Σοφία» Ποσοδεικτικές ερωτήσεις Πόσες πλειάδες υπάρχουν στη σχέση R Λύσεις: Host Γλώσσες (π.χ. C, Fortran) Ειδικές κατασκευές (π.χ. Count(*)) Καινούργιες πιο ισχυρές γλώσσες υπερωτήσεων

Σχεσιακό Μοντέλο Περιορισµοί της Σχεσιακής Άλγεβρας Πεπερασµένες σχέσεις µόνο Άπειρα φαινόµενα δεν µπορούν να αντιπροσωπευθούν (deductions) Λύση: αναγωγικοί κανόνες (Prolog, KDBMS) Πεδία τιµών µε βασικά στοιχεία Ανεπαρκείς για µησυµβατές εφαρµογές Λύση: εµφωλευτηκές σχέσεις (NON-1NF) Πολύπλοκα αντικείµενα (Complex Objects: OODBMS)

Fig 6.8

Fig 6.11

Fig 6.17

Fig 6.18

Fig 6.19

Fig 6.21

Fig 6.22

Table 6.1

Table 6.2

Fig 6.3