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

Σχετικά έγγραφα
Βάσεις Δεδομένων (Databases)

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

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

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

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

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

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

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

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

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

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

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL

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


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

Σχεδιασμός Βάσεων Δεδομένων

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL

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

SQL Data Manipulation Language

Ηλεκτρονικοί Υπολογιστές II

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

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

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

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

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

DELETE, UPDATE, INSERT.

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

Lecture 21: Functional Dependencies and Normalization

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

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

DELETE, UPDATE, INSERT

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

ΕΠΛ 342 Βάσεις εδοµένων

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο. Εργαστηριακή Άσκηση 4 7/02/2012

Ηλεκτρονικοί Υπολογιστές II

Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML.

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

SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ342: Βάσεις Δεδομένων. Χειμερινό Εξάμηνο Φροντιστήριο 10 ΛΥΣΕΙΣ. Επερωτήσεις SQL

Τελεστής Προβολής - Παράδειγμα. Π Πόλη, Εξάμηνο (Φοιτητές)

Αρχεία και Βάσεις Δεδομένων

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

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

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

Εισαγωγή στην πληροφορική

Lecture 14: SQL DML I

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

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

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

Εργαστήριο Βάσεων Δεδομένων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Ενότητα 3:

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

Βάσεις Δεδομένων (Ε) Εισαγωγή στην υλοποίηση σχεσιακών βάσεων δεδομένων

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

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ.Ε.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 9β: SQL (Διαχείριση εγγραφών, Όψεις, Περιορισμοί, Εναύσματα) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής

Εργαστήριο Βάσεων Δεδομένων. Δικαιώματα Χρηστών Προβολές

SQL: Αιτήματα. Κεφάλαιο 5. Database Management Systems, R. Ramakrishnan and J. Gehrke

Τμήμα Διοίκησης Επιχειρήσεων

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι

Η SQL ως γλώσσα τροποποίησης Δεδομένων


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

Βάσεις Περιβαλλοντικών Δεδομένων

Εξεταστική Περίοδος Ιουνίου 2004

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

Διάλεξη 16: SQL DML IV, SQL DCL, SQL TCL. Διδάσκων: Παναγιώτης Ανδρέου

Τμήμα Πληροφορικής ΑΠΘ

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 8: SQL (Πρακτική Εξάσκηση 2) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.

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

Εργαστήριο βάσεων δεδομένων. Εισαγωγή στη MySQL (2)

( Boats)) ( Tempsids, bid. sname. Boats. Boats. Boats. (Reserves)/ > Reserves. Interlake' Sailors) ...

Αρχεία και Βάσεις Δεδομένων


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

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

Βάσεις Δεδομένων. Βασίλειος Βεσκούκης Εισαγωγή στη γλώσσα SQL (Structured Query Language) Η γλώσσα SQL

Ενεργές ΒΔ. Παύλος Εφραιμίδης pefraimi <at> ee.duth.gr. Βάσεις Δεδομένων Ενεργές ΒΔ 1

Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY.

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

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

Ηλεκτρονικοί Υπολογιστές II


SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

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

Εργαστήριο βάσεων δεδομένων. Εισαγωγή στη MySQL (2)

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

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

Transcript:

Βάσεις Δεδομένων (Databases) ΕΠΛ 342 Χειμερινό Εξάμηνο 2011 Διδάσκοντες Καθηγητές Γιώργος Σαμάρας (ΧΩΔ01 109)

Έλεγχος Μέλους Συνόλου (Set Membership) Οι IN και NOT IN τελεστές ελέγχουν για μονό membership Q1: Εμφάνισε το SSN κάθε προϊσταμένου βιβλιοθηκάριου, μαζί με το όνομα του τμήματος τους τους, εκτός από αυτούς των τμημάτων Science και Art. SELECT HeadSSN, Name FROM SECTION WHERE Name NOT IN ('Science', 'Art ); 2

Έλεγχος Μέλους Συνόλου (Set Membership) Q2:.? SELECT L.Name FROM LIBRARIAN AS L WHERE L.SSN IN (SELECT LIBSSN FROM DEPENDENT D WHERE D.LIBSSN = L.SSN AND D.Gender = L.Gender); 3

Quantified Set Comparisons Έλεγχος μέλους με άλλους τελεστές σύγκρισης: ( =, <>, >, >=, <, <= ) Μπορούν να γίνουν ποσοτικοί με την χρήση του ANY (π.χ., SOME) ή ALL. Q: Εμφάνισε τα ονόματα & το SSN όλων των head librarians των οποίων ο μισθός είναι χαμηλότερος από κάθε librarian που δεν είναι head librarian. SELECT Name, SSN FROM LIBRARIAN, SECTION WHERE SSN = HeadSSN AND Salary < ANY (SELECT Salary FROM LIBRARIAN L WHERE L.SSN NOT IN ( SELECT HeadSSN FROM SECTION )); 4

Συνθήκες Συνόλων (Set Comparisons): Κενό Σύνολο Ο EXISTS (μη κενό) και ο NOT EXISTS (κενό) τελεστής ελέγχει την κενότητα του αποτελέσματος Q:? SELECT L.SSN, L.Name FROM LIBRARIAN L WHERE NOT EXISTS (SELECT * FROM SECTION WHERE L.SSN = HeadSSN); 5

Συνθήκες Συνόλων (Set Comparisons): Κανονικό Σύνολο Ο UNIQUE και ο NOT UNIQUE τελεστής ελέγχει για διπλές πλειάδες σε ένα αποτέλεσμα (π.χ, ελέγχει για set και bag, αντιστοίχως) Q: Εμφάνισε όλα τα ονόματα και τα SSNs όλων των librarians που έχουν πάνω από ένα εξαρτώμενο. SELECT Name, SSN FROM LIBRARIAN WHERE NOT UNIQUE (SELECT * FROM DEPENDENT WHERE LIBSSN = SSN); 6

Δομημένη Γλώσσα Ερωτήσεων SQL DML Update Τελεστές

2 Συμβολισμοί για τις πλειάδες Σύνολο από χαρακτηριστικά Σχεσιακό σχήμα R συμβολίζετε με R = {A 1 :D 1, A 2 :D 2,..., A n :D n } or R = {A 1, A 2,, A n } Μια πλειάδα t του r(r) συμβολίζετε με t ={A 1 :v 1, A 2 :v 2,..., A n :v n }, v i D i, 1 i n ή t = <(A 1 :v 1 ), (A 2 :v 2 ),..., (A n :v n )>, v i D i, 1 i n Λίστα με χαρακτηριστικά Σχεσιακό σχήμα R συμβολίζετε με R = (A 1 :D 1, A 2 :D 2,..., A n :D n ) ή R = (A 1, A 2,, A n ) Μια πλειάδα t του r(r) συμβολίζετε με t =(v 1, v 2,..., v n ), v i D i, 1 i n 8

Εισαγωγή STUDENT(SID,Name,Major); Δυο είδη: Έμμεσο (Implicit) και Άμεσο (Explicit) Έμμεσο (λίστα): INSERT INTO STUDENT VALUES (165, Susan, CS ); Άμεσο (σύνολο): INSERT INTO STUDENT (SID, Name) VALUES (165, Susan Jones ); INSERT INTO STUDENT (Name, SID) VALUES ( Susan Jones, 165); Values-clause μπορεί να είναι λίστα από πλειάδες σε κάποια συστήματα 9

Παραγόμενες Πλειάδες/Τιμές Εισαγωγής Χρήσιμο για να γεμίσουμε πίνακες σε μια βάση από δεδομένα που ήδη υπάρχουν στην βάση Οι πλειάδες παρέχονται με την χρήση του SELECT INSERT INTO Dept_Info (Dept_Name, Num_Students) SELECT Major, Count(*) FROM STUDENT GROUP BY Major; 10

Ενημέρωση πλειάδων Η ενημέρωση μπορεί να γίνει μόνο σε μια σχέση Ενημερώνει όλες τις επιλεγμένες πλειάδες που ικανοποιούν το WHERE-clause Παράδειγμα: UPDATE STUDENT UPDATE STUDENT SET Name = Kathy Jones SET Major = CS WHERE SID = 165; WHERE DNO IN ( SELECT DNUM FROM DEPT WHERE Dname = CS ); 11

Διαγραφή Πλειάδων Η διαγραφή αφαιρεί όλες τις επιλεγμένες πλειάδες που ικανοποιούν το WHERE-clause Παραδείγματα: DELETE FROM STUDENT WHERE SID = 165; DELETE FROM STUDENT WHERE DNO IN DELETE FROM STUDENT ( SELECT DNUM WHERE Name = John ; FROM DEPT WHERE Dname = CS ); 12