Η Γλώσσα Βάσεων εδοµένων SQL

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Η Γλώσσα Βάσεων εδοµένων SQL"

Transcript

1 Η Γλώσσα Βάσεων εδοµένων SQL 1

2 Η γλώσσα SQL Η SQL (Structured Query Language - οµηµένη Γλώσσα Ερωτηµάτων) είναι η καθιερωµένη σχεσιακή γλώσσα βάσεων δεδοµένων. Υλοποιήθηκε από την IBM στα πλαίσια του ερευνητικού της προγράµµατος System R. Αρχικά ονοµαζόταν SEQUEL (Structured English QUery Language) Τα δύο πρώτα εµπορικά ΣΣ Β που βασίζονταν στην SQL ήταν το ORACLE από την Relational Software Inc. (σήµερα ORACLE Corporation) το 1979 και το SQL/DS από την IBM το

3 Η γλώσσα SQL Η SQL έγινε και επίσηµο πρότυπο. Το 1982 το Αµερικάνικο Εθνικό Ινστιτούτο Τυποποίησης (American National Standards Institute - ANSI) και ο ιεθνής Οργανισµός Προτύπων (International Standards Organization -ISO) ανέθεσαν στη µόνιµη επιτροπή του X3H2 να συντάξει µία πρόταση για µία πρότυπη σχεσιακή γλώσσα. Η πρόταση της επιτροπής βασίστηκε στην έκδοση της SQL και επικυρώθηκε από το ANSI το 1986 οδηγώντας σε µια τυποποιηµένη έκδοση της SQL (ANSI 1986), που λέγεται SQL-86 ή SQL. Το 1992 αναπτύχθηκε ένα αναθεωρηµένο και πολύ πιο εκτεταµένο πρότυπο µε το όνοµα SQL2 (αναφέρεται και ως SQL-92) και το 1999 η SQL3, που αποτελεί µια περαιτέρω επέκταση της SQL µε αντικειµενοστρεφή χαρακτηριστικά. Εδώ θα ακολουθήσουµε το πρότυπο της SQL2. 3

4 Η γλώσσα SQL Η SQL είναι ανεξάρτητη από την δοµή της βάσης δεδοµένων. Η ροή των πληροφοριών µεταξύ του χρήστη και της βάσης δεδοµένων είναι όµοια µε την παρακάτω εικόνα Το DBMS έχει τον έλεγχο της διαχείρισης της βάσης δεδοµένων. Οι αιτήσεις στέλνονται στο DBMS όπου επεξεργάζονται και αλλάζουν σε εντολές ανάγνωσης/εγγραφής προς το διαχειριστή των αρχείων της βάσης. 4

5 Η γλώσσα SQL Η SQL µπορεί να ελέγχει όλες τις λειτουργίες για: Ορισµό δεδοµένων Ανάκτηση δεδοµένων Χειρισµό δεδοµένων Ορισµό όψεων (views) Έλεγχο πρόσβασης (Εξουσιοδότηση) Ακεραιότητα δεδοµένων Κοινή χρήση και Έλεγχο Συναλλαγών Τα κύρια πλεονεκτήµατα της SQL είναι: Ανεξαρτησία κατασκευαστή. Αλλάζοντας ΣΣ Β συνήθως δεν χρειάζεται να ξαναγραφεί ο κώδικας SQL. Υψηλού-επιπέδου γλωσσική δοµή (English like), που κάνει εύκολη τη χρήση της γλώσσας. Τυποποίηση. Η τυποποίηση επικυρώθηκε από το ANSI και τον ISO. 5

6 Η γλώσσα SQL Γλώσσα Ορισµού εδοµένων (DDL) Γλώσσα Χειρισµού εδοµένων (DML) Ορισµός Όψεων Εξουσιοδότησ η (authentication ) CREATE DROP ALTER TABLE (base table) CREATE DROP ALTER VIEW (virtual table) CREATE DROP ALTER INDEX (index table) CREATE TABLE SUPPLIERS ( S_No NUMBER(4) NOT NULL, S_Name CHAR(25), S_City CHAR(20) ); CREATE INDEX Supplier_Name ON SUPPLIERS(S_Name); SELECT αναζήτηση SELECT * FROM SUPPLIERS WHERE S_City='Athens'; INSERT εισαγωγή εγγραφής INSERT INTO SUPPLIERS VALUES ( 043, 'John', 'Athens'); DELETE διαγραφή εγγραφής DELETE FROM SUPPLIERS WHERE S_No=043; UPDATE τροποποίηση εγγραφής UPDATE SUPPLIERS SET S_City='Patra' WHERE S_No=043; CREATE VIEW ATHENS_SUPPLIERS AS SELECT S_No, S_Name, S_City FROM SUPPLIERS WHERE S_City="ATHENS"; CREATE DROP ALTER User CREATE USER John IDENTIFIED BY Johns-password; GRANT CONNECT TO John; GRANT SELECT, UPDATE ON SUPPLIERS TO John; REVOKE SELECT ON SUPPLIERS FROM John; Ακεραιότητα Έλεγχο Συναλλαγών CREATE DOMAIN S_No AS INTEGER CONSTRAINT Έλεγχος-Αριθµού-Προµηθευτή CHECK (S_No >0); CREATE ASSERTION <Όνοµα-δήλωσης> CHECK <Κατηγόρηµα>; DEFINE TRIGGER <όνοµα> ON UPDATE OF SUPPLIERS ( ) SQL> SET TRANSACTION; INSERT INTO CUSTOMERS VALUES ('SMITH', 'JOHN'); SQL> COMMIT; 6

7 Βασική οµή Η γλώσσα ερωτήσεων της SQL βασίζεται σε πράξεις συνόλου και σχέσεων. Μια χαρακτηριστική ερώτηση σε SQL έχει την εξής µορφή: ονόµατα γνωρισµάτων select Α 1, Α 2,.., Α n from R 1, R 2, R m where P ονόµατα σχέσεων συνθήκη A i : αναπαριστά ονόµατα γνωρισµάτων r i : αναπαριστά σχέσεις P: είναι το κατηγόρηµα (οι συνθήκες) Αυτό το ερώτηµα είναι ισοδύναµο µε την έκφραση της σχεσιακής άλγεβρας Π Α1, Α2,, Αn (σ P (R 1 x R 2 x R m )) Το αποτέλεσµα µιας ερώτησης SQL είναι µια άλλη σχέση. 7

8 Βασική οµή Π Α1, Α2,, Αn (σ P (R 1 x R 2 x R m )) select Α1, Α2,.., Αn from R 1, R 2, R m where P select αντιστοιχεί στην πράξη της προβολής της σχεσιακής άλγεβρας. Ποια γνωρίσµατα να υπάρχουν στο αποτέλεσµα from αντιστοιχεί στην πράξη του καρτεσιανού γινοµένου της σχεσιακής άλγεβρας. Ποιες σχέσεις θα χρησιµοποιηθούν για τον υπολογισµό του αποτελέσµατος. where αντιστοιχεί στη συνθήκη της πράξης της επιλογής στη σχεσιακή άλγεβρα. Το κατηγόρηµα P έχει γνωρίσµατα των σχέσεων που εµφανίζονται στο from. Όταν δεν υπάρχει το where, το P θεωρείται ότι ισχύει. 8

9 Βασική οµή Παράδειγµα Βάσης δεδοµένων (βιβλίο του Ullman) Ταινία (Τίτλος, Έτος, ιάρκεια, Είδος) Παίζει(Όνοµα, Τίτλος, Έτος) Ηθοποιός(Όνοµα, ιεύθυνση, Έτος-Γέννησης, Σύζυγος-Ηθοποιού) Ταινία Τίτλος Έτος ιάρκεια Είδος Παίζει Όνοµα Τίτλος Έτος Ηθοποιός Όνοµα ιεύθυνση Έτος-Γέννησης Σύζυγος-Ηθοποιού Σηµείωση: Η SQL δεν επιτρέπει τον χαρακτήρα του πλην '-' στα ονόµατα, εποµένως στην πραγµατικότητα θα πρέπει να χρησιµοποιείται η κάτω παύλα. Σηµείωση: Τα ονόµατα στην SQL µπορούν να γραφούν είτε µε µικρά είτε µε κεφαλαία (case insensitive) 9

10 Η Πρόταση Select Παράδειγµα: Ονόµατα όλων των ηθοποιών που έχουν παίξει σε ταινίες select Όνοµα from Παίζει Στην απλή σχεσιακή άλγεβρα, το ερώτηµα θα ήταν: Π όνοµα (Παίζει) Η SQL επιτρέπει πολλαπλές εµφανίσεις (διπλότυπα) της ίδιας συστοιχίας (σειράς) τόσο στις σχέσεις όσο και στα αποτελέσµατα των ερωτήσεων. Μια σχέση στην SQL είναι ένα πολυσύνολο. Για να πραγµατοποιηθεί η διαγραφή των διπλοτύπων, εισάγεται τη λέξη κλειδί distinct µετά τη select. Απαλοιφή διπλών εµφανίσεων select distinct Όνοµα from Παίζει 10

11 Η Πρόταση Select Ένας αστερίσκος στην πρόταση select δηλώνει επιλογή όλων των γνωρισµάτων select * from Παίζει Η πρόταση select µπορεί να περιέχει αριθµητικές εκφράσεις που σχετίζονται µε τις αριθµητικές πράξεις (+, -, *, /) και λειτουργούν ανάµεσα σε σταθερές ή γνωρίσµατα πλειάδων Η ερώτηση select Τίτλος, Έτος, ιάρκεια / 60, Είδος from Ταινία Επιστρέφει µια σχέση ίδια µε τη σχέση Ταινία µόνο που το γνώρισµα διάρκεια µας δίνει τις ώρες (έχει διαιρεθεί µε το 60) 11

12 Η Πρόταση Where Η πρόταση where αντιστοιχεί στο κατηγόρηµα επιλογής της σχεσιακής άλγεβρας. Αποτελείται από ένα κατηγόρηµα που περιλαµβάνει γνωρίσµατα των σχέσεων που εµφανίζονται στην πρόταση from. Παράδειγµα: Τον τίτλο όλων των ταινιών που γυρίστηκαν µετά το 1995 και είναι ασπρόµαυρες select Τίτλος from Ταινία where Έτος > 1995 and Είδος =''Ασπρόµαυρη'' συνθήκη του where Λογικοί τελεστές: NOT AND OR Τελεστές σύγκρισης: <, <=, >, >=, =, <>, between, not between ανάµεσα σε αριθµητικές εκφράσεις, συµβολοσειρές (strings), και ειδικούς τύπους. 12

13 Η Πρόταση Where Η SQL περιλαµβάνει µια πράξη σύγκρισης between προκειµένου να απλοποιηθούν οι συνθήκες επιλογής στην πρόταση where που καθορίζουν ότι µια τιµή είναι µικρότερη ή ίση προς κάποια τιµή και µεγαλύτερη ή ίση από κάποια άλλη τιµή. Παράδειγµα χρήσης του between : select Τίτλος from Ταινία where Έτος between 1990 and 1995 αντί του select Τίτλος from Ταινία where Έτος >= 1990 and Έτος <=

14 Η Πρόταση from Η πρόταση from αντιστοιχεί στην πράξη του καρτεσιανού γινοµένου της σχεσιακής άλγεβρας. ίνει τη λίστα των σχέσεων που πρέπει να σαρωθούν κατά την αξιολόγηση της έκφρασης. Όταν το ίδιο γνώρισµα εµφανίζεται στο σχήµα περισσότερων από µια σχέσεων, τότε γίνεται διάκριση βάση του συµβολισµού: <όνοµα-σχέσης>.<όνοµα-γνωρίσµατος> Το καρτεσιανό γινόµενο µαζί µε τις συνθήκες σύζευξης αντιστοιχούν στην πράξη της σύζευξης Παράδειγµα σύζευξης (ή συνένωσης): Τους ηθοποιούς που παίζουν σε ασπρόµαυρες ταινίες select distinct Όνοµα from Παίζει, Ταινία where Παίζει.Τίτλος = Ταινία.Τίτλος and Παίζει.Έτος = Ταινία.Έτος and Είδος = Ασπρόµαυρη 14

15 Πράξεις Συµβολοσειρών Για την εύρεση συγκεκριµένων αλφαριθµητικών ή συµβολοσειρών χρησιµοποιούνται οι χαρακτήρες µπαλαντέρ : % (Ποσοστό) ταιριάζει οποιαδήποτε συµβολοσειρά _ (κάτω παύλα) ταιριάζει οποιοδήποτε χαρακτήρα. Στις συγκρίσεις γίνεται διάκριση ανάµεσα σε κεφαλαία και µικρά. Η σύγκριση γίνεται χρησιµοποιώντας το like, not like Π.χ.: Βρείτε τους τίτλους όλων των ταινιών που περιέχουν τη λέξη Θάλασσα select distinct Τίτλος from Ταινία where Τίτλος like %Θάλασσα% Η SQL υποστηρίζει µια ποικιλία τελεστών αλφαριθµητικών όπως: σύνδεση (concatenation) (χρησιµοποιώντας ή + ή &), µετατροπή από κεφαλαία σε µικρά γράµµατα (και αντιστρόφως), εύρεση του µήκους του αλφαριθµητικού, εξαγωγή του µέρους του αλφαριθµητικού κ.ό.κ. 15

16 ιάταξη των Πλειάδων Στην SQL χρησιµοποιείται η πρόταση order by ώστε οι πλειάδες στο αποτέλεσµα να είναι ταξινοµηµένες (π.χ. µε αλφαβητική σειρά) µε βάση τo αντίστοιχο γνώρισµα select distinct Ταινία, Έτος from Παίζει where Όνοµα = Robert De Niro order by Έτος Η προεπιλογή είναι η αύξουσα διάταξη, αλλά και άµεσα χρησιµοποιώντας το asc (αύξουσα) ή το desc (φθίνουσα). Επίσης, µπορεί να γίνει ταξινόµηση µε βάση πολλά γνωρίσµατα. Παράδειγµα: select * from Ταινία order by Έτος desc, Τίτλος asc Η ταξινόµηση είναι δαπανηρή λειτουργία. 16

17 Αλλαγή Ονόµατος Τα ονόµατα των γνωρισµάτων στο αποτέλεσµα είναι αυτά των σχέσεων στην ερώτηση. Η SQL επιτρέπει τη µετονοµασία σχέσεων και γνωρισµάτων χρησιµοποιώντας την πρόταση as: <παλιό-όνοµα> as <νέο-όνοµα> To as µπορεί να εµφανίζεται στο select ή στο from Για παράδειγµα: select Τίτλος, Έτος, ιάρκεια / 60 as ιάρκεια-ώρες from Ταινία Χρήσιµο όταν (α) όταν έχουµε αριθµητικές εκφράσεις στο select και δεν έχουν όνοµα, (β) όταν θέλουµε να αλλάξουµε το όνοµα του γνωρίσµατος στο αποτέλεσµα, (γ) δυο σχέσεις του from έχουν γνωρίσµατα µε το ίδιο όνοµα 17

18 Μεταβλητές Πλειάδων Μια µεταβλητή πλειάδας µπορεί να οριστεί στο from χρησιµοποιώντας το as: select distinct Όνοµα from Παίζει as Π, Ταινία as Τ where Π.Τίτλος = Τ.Τίτλος and Π.Έτος = Τ.Έτος and Είδος = Ασπρόµαυρη Οι µεταβλητές πλειάδων είναι ιδιαίτερα χρήσιµες όταν θέλουµε να συγκρίνουµε δυο πλειάδες της ίδιας σχέσης. Παράδειγµα: Τα ονόµατα όλων των ταινιών που έχουν διάρκεια µεγαλύτερη από µία τουλάχιστον ταινία που γυρίστηκε το 1995 select distinct Τ.Τίτλος from Ταινία as S, Ταινία as T where T. ιάρκεια > S. ιάρκεια and S.Έτος =

19 Πράξεις Συνόλων Οι τελεστές συνόλων ένωση (union), τοµή (intersection) και διαφορά (except) στις σχέσεις αντιστοιχούν στους τελεστές της σχεσιακής άλγεβρας,, -. Καθένας από τους παραπάνω τελεστές αυτόµατα διαγράφει τα διπλότυπα. union intersection except ένωση τοµή διαφορά εφαρµόζονται σε συµβατές σχέσεις. Γενική Σύνταξη: ( select from where ) union/intersect/except ( select from where) 19

20 Πράξεις Συνόλων Παράδειγµα Τραπέζης Υποκατάστηµα Λογαριασµός Καταθέτης Πελάτης όνοµαυποκαταστήµατος πόλη ενεργητικό αριθµόςλογαριασµού όνοµαυποκαταστήµατος υπόλοιπο όνοµα-πελάτη αριθµόςλογαριασµού όνοµα-πελάτη οδός πόλη άνειο ανειζόµενος αριθµός-δανείου όνοµαυποκαταστήµατος ποσό όνοµα-πελάτη αριθµός-δανείου Υποκατάστηµα (Όνοµα-Υποκαταστήµατος, Πόλη, Ενεργητικό) Λογαριασµός (Αριθµός-λογαριασµού, Όνοµα-Υποκαταστήµατος, Υπόλοιπο) άνειο (Αριθµός- ανείου, Όνοµα-Υποκαταστήµατος, Ποσό) ανειζόµενος (Όνοµα-Πελάτη, Αριθµός- ανείου) Πελάτης (Όνοµα-Πελάτη, Οδός, Πόλη) Καταθέτης (Όνοµα-Πελάτη, Αριθµός-Λογαριασµού) 20

21 Πράξεις Συνόλων Παράδειγµα union: Τα ονόµατα όλων των πελατών που έχουν καταθέσεις ή έχουν πάρει δάνειο ή και τα δύο ( select Όνοµα-Πελάτη from Καταθέτης ) union ( select Όνοµα-Πελάτη from ανειζόµενος ) Γίνεται Επιλογή µοναδικών σειρών -χωρίς διπλότυπα. Με διπλότυπα χρησιµοποιείται το union all Απαλοιφή διπλών εµφανίσεων, εκτός αν χρησιµοποιηθεί το union all 21

22 Πράξεις Συνόλων Παράδειγµα intersect: Τα ονόµατα όλων των πελατών που έχουν καταθέσεις και έχουν πάρει δάνειο ( select Όνοµα-Πελάτη from Καταθέτης ) intersect ( select Όνοµα-Πελάτη from ανειζόµενος ) Αντίστοιχα υπάρχει το intersect all για να εµφανίζονται και τα διπλότυπα (ίδιες σειρές) 22

23 Πράξεις Συνόλων Παράδειγµα except: Τα ονόµατα όλων των πελατών που έχουν καταθέσεις και δεν έχουν πάρει δάνειο ( select Όνοµα-Πελάτη from Καταθέτης ) except ( select Όνοµα-Πελάτη from ανειζόµενος ) Αντίστοιχα υπάρχει το except all 23

24 Η τιµή null Χρήση της λέξης κλειδί is null (is not null) σε µια συνθήκη για να ελέγξουµε αν µια τιµή είναι null. select Αριθµός- ανείου from άνειο where Ποσό is null Εµφάνιση null Σε αριθµητικές πράξεις: το αποτέλεσµα είναι null όταν οποιαδήποτε τιµή είναι null Σε συγκρίσεις: σύγκριση µε null συνήθως δίνει αποτέλεσµα false Σε συναθροιστικές συναρτήσεις: αγνοείται πλην από το count(*) Παράδειγµα: select sum(ποσό) from άνειο 24

25 Συναθροιστικές Συναρτήσεις Η SQL έχει 5 ενσωµατωµένες συναθροιστικές συναρτήσεις. Οι ακόλουθες συναρτήσεις εφαρµόζονται στο σύνολο µιας στήλης µιας σχέσης, και επιστρέφουν µία τιµή: Μέσος όρος: avg(a) (µόνο σε αριθµούς) A γνώρισµα Ελάχιστο: min(a) Μέγιστο: max(a) Άθροισµα: sum(a) (µόνο σε αριθµούς) Πλήθος: count(a) 25

26 Συναθροιστικές Συναρτήσεις Π.χ. Υπολογίστε τη µέση τιµή του υπολοίπου των λογαριασµών στο υποκατάστηµα Κρήνης. select avg(υπόλοιπο) from λογαριασµός where όνοµα-υποκαταστήµατος= Κρήνης Π.χ. Υπολογίστε τον αριθµό (πλήθος) των πλειάδων στη σχέση «πελάτης» select count(*) from πελάτης Αν θέλουµε να απαλείψουµε διπλές εµφανίσεις χρησιµοποιούµε τη λέξη-κλειδί distinct στην αντίστοιχη έκφραση. Π.χ. Υπολογίστε τον αριθµό των καταθετών στην τράπεζα select count(distinct όνοµα-πελάτη) from καταθέτης 26

27 Συναθροιστικές Συναρτήσεις Το κάθε αποτέλεσµα είναι µια σχέση µε ένα γνώρισµα και µια γραµµή, µπορούµε να δώσουµε όνοµα στο γνώρισµα χρησιµοποιώντας το as Π.χ. Υπολογίστε τη µέση τιµή, ελάχιστη τιµή, µέγιστη τιµή και το άθροισµα του υπολοίπου των λογαριασµών select avg(υπόλοιπο) as µέσό_υπόλοιπο, min(υπόλοιπο) as Ελάχιστο_υπόλοιπο, max(υπόλοιπο) as µέγιστο_υπόλοιπο, sum(υπόλοιπο) as συνολικό_υπόλοιπο from λογαριασµός 27

28 Συναθροιστικές Συναρτήσεις - Οµαδοποίηση Μπορούµε να εφαρµόσουµε τις συναρτήσεις όχι µόνο σε ένα σύνολο από πλειάδες, αλλά σε οµάδες από σύνολα πλειάδων. Οι οµάδες προσδιορίζονται χρησιµοποιώντας το group by Π.χ.: Υπολογίστε τον αριθµό των καταθετών σε κάθε υποκατάστηµα. select Όνοµα-Υποκαταστήµατος, count (distinct όνοµα-πελάτη) from Καταθέτης, Λογαριασµός where Καταθέτης.αριθµός-λογαριασµού = Λογαριασµός.αριθµός-λογαριασµού group by Όνοµα-Υποκαταστήµατος Π.χ.: Υπολογίστε το Μέσο ποσό των λογαριασµών σε κάθε υποκατάστηµα select Όνοµα-Υποκαταστήµατος, from Λογαριασµός group by Όνοµα-Υποκαταστήµατος avg(ποσό) 28

29 Συναθροιστικές Συναρτήσεις - Οµαδοποίηση Η οµαδοποίηση µπορεί να γίνει ως προς περισσότερα του ενός πεδία. Π.χ. Υπολογίστε το Μέσο όρο καταθέσεων ανά πελάτη και ανά υποκατάστηµα select Όνοµα-Υποκαταστήµατος, Όνοµα-Πελάτη, avg(υπόλοιπο) from Καταθέτης as K, Λογαριασµός as Λ where Κ.Αριθµός-Λογαριασµού = Λ.Αριθµός- Λογαριασµού group by Όνοµα-Υποκαταστήµατος, Όνοµα-Πελάτη Η Οµαδοποίηση γίνεται πρώτα ως προς το Υποκατάστηµα. Στην συνέχεια δηµιουργούνται υποoµάδες ως προς το Όνοµα-Πελάτη Σηµείωση: Αν στην πρόταση Select υπάρχει συναθροιστική συνάρτηση τότε δεν επιτρέπονται γνωρίσµατα παρά µόνο συναθροιστικές συναρτήσεις εκτός αν υπάρχει ο όρος group by 29

30 Συναθροιστικές Συναρτήσεις - Πρόταση Having Μπορούµε να εφαρµόσουµε µια συνθήκη σε µια συγκεκριµένη οµάδα από πλειάδες χρησιµοποιώντας το having Η συνθήκη στην πρόταση having εφαρµόζεται αφού σχηµατιστούν οι οµάδες (group by) και υπολογιστούν οι συναθροιστικές συναρτήσεις. Π.χ. Θεωρήστε τη σχέση Λογαριασµός(Όνοµα- Υποκαταστήµατος, Αριθµός-λογαριασµού, Υπόλοιπο) και βρείτε τα ονόµατα υποκαταστηµάτων µε µέσο υπόλοιπο καταθέσεων µεγαλύτερο των 1200 (οµαδοποίηση κατά Όνοµα-Υποκαταστήµατος) select Όνοµα-Υποκαταστήµατος, avg(υπόλοιπο) as µέσο-υπόλοιπο from Λογαριασµός group by Όνοµα-Υποκαταστήµατος having avg(υπόλοιπο) >

31 Συναθροιστικές Συναρτήσεις - Πρόταση Having Η πρόταση having περιορίζει τις γραµµές που επιστρέφονται από µία πρόταση group by µε τον ίδιο τρόπο που η πρόταση where περιορίζει τις γραµµές που επιστέφονται από την πρόταση select. Όταν εµφανίζονται και το where και το having: η συνθήκη του where εφαρµόζεται πρώτα, οι πλειάδες που ικανοποιούν αυτή τη συνθήκη τοποθετούνται σε οµάδες µε βάση το group by και µετά αν υπάρχει συνθήκη στο having εφαρµόζεται στις οµάδες. Π.χ.: Το Μέσο ποσό για κάθε πελάτη που ζει στα Ιωάννινα και έχει τουλάχιστον τρεις λογαριασµούς 3 select Καταθέτης.Όνοµα-Πελάτη, avg(ποσό) from Καταθέτης, Λογαριασµός, Πελάτης 1 where Καταθέτης.Αριθµός-Λογαριασµού = Λογαριασµός. Αριθµός-Λογαριασµού and Καταθέτης. Όνοµα-Πελάτη = Πελάτης. Όνοµα-Πελάτη and Πόλη = Ιωάννινα 2 group by Καταθέτης. Όνοµα-Πελάτη 4 having count (distinct Καταθέτης.Αριθµός- Λογαριασµού) >= 3 31

32 αριθµός-δανείου ποσό Συναθροιστικές Συναρτήσεις Τα προηγούµενα παραδείγµατα δείχνουν πώς µπορούν να χρησιµοποιηθούν οι συναρτήσεις για την ανάκτηση "συνοπτικών" τιµών από τη βάση δεδοµένων. Τι γίνεται όταν θέλουµε να εµφανίσουµε και τα στοιχεία των κατόχων αυτών των τιµών Τότε χρησιµοποιούµε τη συναθροιστική συνάρτηση σαν τιµή σύγκρισης σε εµφωλιασµένο υποερώτηµα δάνειο όνοµα-υποκαταστήµατος ανειζόµενος όνοµα-πελάτη αριθµός-δανείου όνοµα-πελάτη οδός πόλη πελάτης Π.χ. Βρείτε τα στοιχεία του πελάτη µε το µεγαλύτερο ποσό δανείου select Πελάτης.* from where πελάτης, ανειζόµενος, δάνειο πελάτης.όνοµα-πελάτη= ανειζόµενος.όνοµα-πελάτη and ανειζόµενος.αριθµός-δανείου= δάνειο.αριθµός-δανείου Συνθήκες σύζευξης and ποσό = (select max(ποσό) from άνειο) ; εµφωλιασµένο υποερώτηµα 32

33 Null Τιµές (κενά) Είναι πιθανό για τις πλειάδες να έχουν τιµή null, δηλωµένη ως null, σε κάποιο από τα γνωρίσµατα. Το null (κενά) δηλώνει µια άγνωστη τιµή ή τιµή που δεν υπάρχει Το κατηγόρηµα is null µπορεί να χρησιµοποιηθεί για τον έλεγχο των null τιµών. Π.χ. Βρείτε όλους τους αριθµούς δανείων από τη σχέση δάνειο που δεν έχουν τιµή στο γνώρισµα ποσό. select αριθµός-δανείου from δάνειο where ποσό is null Το αποτέλεσµα οποιασδήποτε αριθµητικής έκφρασης που περιλαµβάνει την τιµή null είναι null. Π.χ. 5+null επιστρέφει null Οι συναθροιστικές συναρτήσεις ωστόσο αγνοούν τις τιµές null. 33

34 Τιµές Null και Λογική Τριών Τιµών Οποιαδήποτε σύγκριση µε το null επιστρέφει unknown. Π.χ. 5<null, null<>null ή null= Smith Η λογική τριών-τιµών χρησιµοποιώντας την τιµή αλήθειας unknown: OR: (unknown or true) = true, (unknown or false) = unknown (unknown or unknown) = unknown AND: (true and unknown) = unknown, (false and unknown) = false, (unknown and unknown) = unknown NOT: (not unknown) = unknown Η σύγκριση P is unknown επιστέφει τιµή true αν το κατηγόρηµα P επιστρέφει τιµή unknown Το αποτέλεσµα του κατηγορήµατος της πρότασης where θεωρείται ως false αν επιστρέφει τιµή unknown. 34

35 Τιµές Null και Συναθροίσεις Βρείτε το σύνολο όλων των ποσών των δανείων select sum(ποσό) from δάνειο Η παραπάνω έκφραση δεν λαµβάνει υπόψη τα κενά στο γνώρισµα ποσό. Όλες οι συναθροιστικές συναρτήσεις εκτός του count(*) αγνοούν τις πλειάδες µε null τιµές στα συναθροισµένα γνωρίσµατα. 35

36 Εµφωλιασµένες Υποερωτήσεις Η SQL επιτρέπει τον εµφωλιασµό υποερωτήσεων. Τα εµφωλιασµένα υποερωτήµατα χρησιµοποιούνται σε προτάσεις where ή having. Ένα υποερώτηµα είναι µια έκφραση select-fromwhere που είναι εµφωλιασµένη (ένθετη) µέσα σε ένα άλλο ερώτηµα. select-from-where..(select-from-where ) Τότε το πρώτο ονοµάζεται εξωτερικό ερώτηµα και το δεύτερο εσωτερικό ερώτηµα. Συνήθως υπολογίζεται πρώτα το εσωτερικό ερώτηµα και κατόπιν το εξωτερικό εφαρµόζοντας σε αυτό το αποτέλεσµα του εσωτερικού ερωτήµατος. Εξαίρεση αποτελεί η περίπτωση των συσχετιζόµενων υποερωτηµάτων όπου το εσωτερικό ερώτηµα θα υπολογιστεί για κάθε γραµµή (ή τιµή µεταβλητής) του εξωτερικού ερωτήµατος. 36

37 Εµφωλιασµένες Υποερωτήσεις Μια συνήθης χρήση των εµφωλιασµένων υποερωτηµάτων είναι η εκτέλεση ελέγχων και συγκρίσεων για: τη συµµετοχή σε κάποιο σύνολο (set membership) τη σύγκριση συνόλων (set comparisons) το µέγεθος συνόλων (set cardinality) Οι τελεστές που χρησιµοποιούνται για τους ελέγχους προηγούνται ενός υποερωτήµατος και χρησιµοποιούνται όταν το υποερώτηµα είναι πιθανό να έχει ως αποτέλεσµα την επιστροφή δύο ή περισσοτέρων τιµών. Οι τελεστές είναι: in/not in (συµµετοχή σε σύνολο) (>, <, =, κλπ) some/any/all (σύγκριση συνόλων) exists/not exists (έλεγχος για κενά σύνολα) unique/not unique (έλεγχος για διπλότυπα) 37

38 Εµφωλιασµένες Υποερωτήσεις Η συνήθης σύνταξη των εµφωλιασµένων υποερωτηµάτων είναι η select * from table1 where table1.somecolumn <σύγκριση> (select someothercolumn from table2 where someothercolumn = somevalue) 38

39 Εµφωλιασµένες Υποερωτήσεις τελεστής in (not in) Συµµετοχή σε σύνολο µε το in Ο τελεστής in, not in ελέγχει αν µια πλειάδα ανήκει (ή όχι) σε ένα σύνολο ή σε µία άλλη σχέση που έχει προκύψει από µια έκφραση υποερωτήµατος select-from-where. Π.χ. Βρείτε τα ονόµατα όλων των πελατών που έχουν και λογαριασµό όσο και δάνειο στην τράπεζα. select distinct όνοµα-πελάτη from ανειζόµενος where όνοµα-πελάτη in (select όνοµα-πελάτη from καταθέτης) Π.χ. Βρείτε τα ονόµατα όλων των πελατών που έχουν δάνειο στην τράπεζα αλλά όχι λογαριασµό select distinct όνοµα-πελάτη from ανειζόµενος where όνοµα-πελάτη not in (select όνοµα-πελάτη from καταθέτης) 39

40 Εµφωλιασµένες Υποερωτήσεις τελεστής in (not in) Συµµετοχή σε σύνολο µε το in Ο τελεστής in, not in µπορεί να χρησιµοποιηθεί και µε διατεταγµένα (ή όχι) σύνολα Π.χ. Βρείτε τα ονόµατα όλων των πελατών που έχουν πάρει δάνειο και δε λέγονται "Παπάς" ή "Πέτρου". select distinct Όνοµα-Πελάτη from ανειζόµενος where Όνοµα-Πελάτη not in ( Παπάς, Πέτρου ) 40

41 Εµφωλιασµένες Υποερωτήσεις τελεστής in (not in) Συµµετοχή σε σύνολο µε το in Μπορούµε επίσης µε το in (not in) να ελέγξουµε ταυτόχρονα παραπάνω από ένα γνώρισµα Π.χ. Βρείτε τα ονόµατα όλων των πελατών που έχουν πάρει δάνειο και έχουν και λογαριασµό στο υποκατάστηµα Βενιζέλου (δύο γνωρίσµατα). select distinct όνοµα-πελάτη from ανειζόµενος, άνειο where ανειζόµενος.αριθµός-δανείου = δάνειο.αριθµός-δανείου and όνοµα-υποκαταστήµατος = "Βενιζέλου" and (Όνοµα-Υποκαταστήµατος, Όνοµα-πελάτη) in (select Όνοµα-Υποκαταστήµατος, Όνοµα-πελάτη from καταθέτης, λογαριασµός where καταθέτης.αριθµός-λογαριασµού = λογαριασµός.αριθµός-λογαριασµού) Σηµείωση: το ερώτηµα µπορεί να γραφεί µε πιο απλό τρόπο (η σχεσιακή πράξη της τοµής -intersect-). Για τα ονόµατα των πελατών που έχουν πάρει δάνειο αλλά δεν έχουν και λογαριασµό (η σχεσιακή πράξη της διαφοράς) µπορούµε να χρησιµοποιήσουµε το not in. 41

42 Εµφωλιασµένες Υποερωτήσεις τελεστής some (any) σύγκριση συνόλων µε το some (τουλάχιστον ένα). Ο τελεστής some (any) χρησιµοποιείται για τη σύγκριση συνόλων. Ο τελεστής some (any) έχει τη σηµασία του τουλάχιστον ένα από ένα σύνολο (5< some ) = true (δηλαδή,5 < some πλειάδα στη σχέση) (5< some (5 = some ) = false ) = true 0 (5 some 5 ) = true (εφόσον 0 5) Επίσης ισχύει (= some) ισοδύναµο. του in Ωστόσο ( some) όχι ισοδύναµο τουnot in 42

43 Εµφωλιασµένες Υποερωτήσεις τελεστής some (any) σύγκριση συνόλων µε το some (τουλάχιστον ένα). Π.χ. Θεωρήστε τη σχέση Ηθοποιός (Όνοµα, ιεύθυνση, Πόλη, Έτος-Γέννησης) και βρείτε τα Ονόµατα των Ηθοποιών µε Έτος-Γέννησης µικρότερο από το Έτος-Γέννησης ενός τουλάχιστον ηθοποιού της πόλης της Αθήνας select Όνοµα from Ηθοποιός where Έτος-Γέννησης <some (select Έτος-Γέννησης from Ηθοποιός where Πόλη='Αθήνα'); Π.χ. Θεωρήστε τη σχέση Υποκατάστηµα (Όνοµα- Υποκαταστήµατος, Πόλη, Ενεργητικό) και βρείτε τα ονόµατα υποκαταστηµάτων µε Ενεργητικό µικρότερο από το Ενεργητικό ενός τουλάχιστον υποκαταστήµατος της πόλης των Σερρών. select Όνοµα-Υποκαταστήµατος from Υποκατάστηµα where Ενεργητικό <some (select Ενεργητικό from Υποκατάστηµα where Πόλη='Σέρρες'); 43

44 Εµφωλιασµένες Υποερωτήσεις τελεστής some (any) σύγκριση συνόλων µε το some (τουλάχιστον ένα). Π.χ. Θεωρήστε τη σχέση Υποκατάστηµα (Όνοµα- Υποκαταστήµατος, Πόλη, Ενεργητικό) και βρείτε τα υποκαταστήµατα που έχουν ενεργητικό µεγαλύτερο από κάποιο (τουλάχιστον ένα) Υποκατάστηµα που βρίσκεται στην Αθήνα. select όνοµα-υποκαταστήµατος from Υποκατάστηµα where ενεργητικό > some (select ενεργητικό from Υποκατάστηµα where πόλη ='Αθήνα') Η ίδια ερώτηση δίχως τον τελεστή some select distinct Τ.όνοµα-Υποκαταστήµατος from Υποκατάστηµα as Τ, Υποκατάστηµα as S where Τ.ενεργητικό>S.ενεργητικό and S.πόλη ='Αθήνα' 44

45 Εµφωλιασµένες Υποερωτήσεις τελεστής all σύγκριση συνόλων µε το all (από όλα). Ο τελεστής all χρησιµοποιείται για τη σύγκριση συνόλων. Ο τελεστής all έχει τη σηµασία από όλα τα στοιχεία ενός συνόλου. Π.χ. Θεωρήστε τη σχέση Υποκατάστηµα (Όνοµα- Υποκαταστήµατος, Πόλη, Ενεργητικό) και βρείτε τα ονόµατα όλων των υποκαταστηµάτων που έχουν ενεργητικό µεγαλύτερο από το ενεργητικό όλων των υποκαταστηµάτων της πόλης των Σερρών. select distinct όνοµα-υποκαταστήµατος from Υποκατάστηµα where ενεργητικό > all(select ενεργητικό from Υποκατάστηµα where πόλη = "Σέρρες") 45

46 Εµφωλιασµένες Υποερωτήσεις τελεστής all σύγκριση συνόλων µε το all (από όλα) (5< all ) = false (5< all (5 = all ) = true ) = false 4 (5 all 6 ) = true (εφόσον 5 4 και 5 6) Επίσης το ( all) είναι ισοδύναµο του not in. Από την άλλη το (= all) ελέγχει αν το υποερώτηµα έχει µόνο µία τιµή άρα δεν είναι ισοδύναµο του in. 46

47 Εµφωλιασµένες Υποερωτήσεις τελεστής all σύγκριση συνόλων µε το all (από όλα). Π.χ. Θεωρήστε τη σχέση Λογαριασµός (Αριθµόςλογαριασµού, Όνοµα-Υποκαταστήµατος, Υπόλοιπο) και βρείτε το Υποκατάστηµα µε το µεγαλύτερο µέσο υπόλοιπο καταθέσεων. select distinct Όνοµα-Υποκαταστήµατος from Λογαριασµός group by Όνοµα-Υποκαταστήµατος having avg(υπόλοιπο) > = all (select avg(υπόλοιπο) from Λογαριασµός group by Όνοµα- Υποκαταστήµατος) 47

48 Εµφωλιασµένες Υποερωτήσεις τελεστής exists έλεγχος για µη κενά σύνολα µε το exists Ο τελεστής exists χρησιµοποιείται στον έλεγχο για µη κενά σύνολα (κενές σχέσεις). Ο τελεστής exists επιστρέφει true αν η υποερώτηση δεν είναι κενή exists r r Ø not exists r r = Ø Π.χ. Βρείτε τους πελάτες που έχουν καταθέσεις και έχουν πάρει δάνειο (δηλαδή Καταθέτης που είναι και ανειζόµενος- αντιστοιχεί στην πράξη της τοµής). select Όνοµα-Πελάτη from ανειζόµενος where exists (select * from Καταθέτης where Καταθέτης.Όνοµα-Πελάτη = ανειζόµενος.όνοµα-πελάτη) Είναι συσχετιζόµενο υποερώτηµα. Θα υπολογιστεί για κάθε τιµή της µεταβλητής ανειζόµενος.όνοµα-πελάτη που παίρνει από το εξωτερικό ερώτηµα. 48

49 Εµφωλιασµένες Υποερωτήσεις τελεστής not exists έλεγχος για κενά σύνολα µε το not exists Ο τελεστής not exists: επιστρέφει true αν η υποερώτηση είναι κενή Π.χ. Θεωρήστε τις σχέσεις ανειζόµενος (Όνοµα- Πελάτη, Αριθµός- ανείου) και Καταθέτης (Όνοµα- Πελάτη, Αριθµός-Λογαριασµού) και βρείτε τα ονόµατα των πελατών που έχουν πάρει δάνειο και δεν έχουν καταθέσεις (δηλαδή ανειζόµενος που δεν είναι Καταθέτης) select Όνοµα-Πελάτη from ανειζόµενος where not exists ( select * from Καταθέτης where Καταθέτης.Όνοµα-Πελάτη = ανειζόµενος.όνοµα-πελάτη ) Είναι και αυτό συσχετιζόµενο υποερώτηµα. Το συγκεκριµένο αντιστοιχεί στην πράξη της διαφοράς της σχεσιακής άλγεβρας (except) 49

50 Εµφωλιασµένες Υποερωτήσεις τελεστής not exists έλεγχος για κενά σύνολα µε το not exists Ο τελεστής not exists µπορεί να χρησιµοποιηθεί για έλεγχο αν η σχέση A περιέχει όλη τη σχέση B Άρα B except A --> null Τότε not exists (Β except Α) --> true A B Χρησιµοποιείται στη σχεσιακή πράξη της διαίρεσης Συνήθως αναγνωρίζουµε ότι πρόκειται για διαίρεση από τη λέξη όλα, ή για όλα στην ερώτηση. 50

51 Εµφωλιασµένες Υποερωτήσεις τελεστής not exists Παίζει (Όνοµα, Τίτλος, Έτος) Π.χ. Βρείτε τα ονόµατα των ηθοποιών που έχουν παίξει σε όλες τις ταινίες της Βουγιουκλάκη select distinct S.Όνοµα from Παίζει as S where not exists ( (select Τίτλος, Έτος Συσχετιζόµενος ιαιρετέος uπολογισµός για κάθε S from Παίζει where Όνοµα = "Βουγιουκλάκη") except (select Τίτλος, Έτος from Παίζει as R Ο ιαιρετέος ο ιαιρέτης where R.Όνοµα = S.Όνοµα) ) Προσέξτε ότι είναι συσχετιζόµενο υποερώτηµα. Θα υπολογιστεί για κάθε τιµή της µεταβλητής S.Όνοµα που παίρνει από το εξωτερικό ερώτηµα. 51

52 Εµφωλιασµένες Υποερωτήσεις τελεστής unique (not unique) Έλεγχος για Απουσία ιπλότυπων (το πολύ) Ο τελεστής unique (not unique) ελέγχει αν ένα υποερώτηµα περιέχει διπλότυπες πλειάδες στο αποτέλεσµά του (έλεγχος για διπλότυπα). Ο τελεστής unique: επιστρέφει true αν η υποερώτηση δεν έχει διπλότυπες πλειάδες. Π.χ. Θεωρήστε τη σχέση Παίζει(Όνοµα, Τίτλος, Έτος) και βρείτε τα ονόµατα ηθοποιών που έχουν παίξει το πολύ σε µια ταινία select Όνοµα from Παίζει ας T where unique (select Τ.Όνοµα αντί του from Παίζει ας R where T.Όνοµα = R.Όνοµα) select Όνοµα from Παίζει group by Όνοµα having count(*) < = 1 52

53 Εµφωλιασµένες Υποερωτήσεις τελεστής unique (not unique) Έλεγχος για διπλότυπα (τουλάχιστον δύο) Ο τελεστής not unique: επιστρέφει true αν η υποερώτηση έχει διπλότυπα. Παράδειγµα: Οι πελάτες που έχουν τουλάχιστον δύο καταθέσεις στο υποκατάστηµα Κρήνης" select T.Όνοµα-Πελάτη from Καταθέτης as Τ where not unique (select R.Όνοµα-Πελάτη from Λογαριασµός, Καταθέτης as R where T.Όνοµα-Πελάτη =R.Όνοµα-Πελάτη and R. Αριθµός-Λογαριασµού = Λογαριασµός. Αριθµός- Λογαριασµού and Λογαριασµός.Όνοµα-Υποκαταστήµατος = "Κρήνης ") 53

Βάσεις εδοµένων 2002-2003 Ευαγγελία Πιτουρά 2

Βάσεις εδοµένων 2002-2003 Ευαγγελία Πιτουρά 2 Η Γλώσσα SQL Βάσεις εδοµένων 2002-2003 Ευαγγελία Πιτουρά 1 Η γλώσσα SQL What men or gods are these? What maidens loth? What mad pursuit? What struggle to escape? What pipes and timbrels? What wild ectasy?

Διαβάστε περισσότερα

SQL. Πριν μια σύντομη επανάληψη της σχεσιακής άλγεβρας. H SQL έχει διάφορα τμήματα: Γλώσσα Ορισμού εδομένων (ΓΟ ) Γλώσσα Χειρισμού εδομένων (ΓΧ )

SQL. Πριν μια σύντομη επανάληψη της σχεσιακής άλγεβρας. H SQL έχει διάφορα τμήματα: Γλώσσα Ορισμού εδομένων (ΓΟ ) Γλώσσα Χειρισμού εδομένων (ΓΧ ) Εισαγωγή Πως θα υλοποιήσουμε (προγραμματίσουμε) την εφαρμογή μας χρησιμοποιώντας ένα σχεσιακό Σ Β : SQL Γλώσσα Ορισμού (του σχήματος) Γλώσσα Χειρισμού εδομένων Γλώσσα Τροποποίησης (εισαγωγή, διαγραφή πλειάδων)

Διαβάστε περισσότερα

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής. ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2012 SQL Structured Query Language Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Πράξεις της σχεσιακής άλγεβρας ΠΡΑΞΗ ΣΚΟΠΟΣ

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΤΕΤΑΡΤΟ Insert, Update, Delete, Ένωση πινάκων Γιώργος Μαρκοµανώλης Περιεχόµενα Group By... 1 Having...1 Οrder By... 2 Εντολή Insert...

Διαβάστε περισσότερα

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

Τμήμα Πληροφορικής ΑΠΘ 2013-2014 Βάσεις Δεδομένων Εργαστήριο V Τμήμα Πληροφορικής ΑΠΘ 2013-2014 2 Σκοπός του 5 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: η μελέτη ερωτημάτων τροποποίησης δομής / δεδομένων η μελέτη σύνθετων ερωτημάτων

Διαβάστε περισσότερα

SQL Data Manipulation Language

SQL Data Manipulation Language SQL Data Manipulation Language Τελεστής union συνδυάζει subselects τα οποία παράγουν συμβατές σχέσεις γενική μορφή: subselect {union [all] subselect} περιορισμός: τα subselects δεν μπορούν να περιέχουν

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Τμήμα Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων «Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα» «Σημειώσεις για την SQL» ΕΞΑΜΗΝΟ: ΣΤ Δρ. Κωνσταντίνος Χ. Γιωτόπουλος Πάτρα, Νοέμβριος 2010 SQL Create Table Η CREATE TABLE

Διαβάστε περισσότερα

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ Η συνθήκη WHERE βάζει περιορισμούς στις εγγραφές που επιστρέφονται. Ο όρος ORDER BY ταξινομεί τις εγγραφές που επιστρέφονται. Παράδειγμα: SELECT * FROM table_name ORDER

Διαβάστε περισσότερα

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

2 ο Σύνολο Ασκήσεων. Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 2 ο Σύνολο Ασκήσεων Οι βαθμοί θα ανακοινωθούν αύριο μαζί με τους βαθμούς της προγραμματιστικής άσκησης Τα αστεράκια δείχνουν τον εκτιμώμενο βαθμό δυσκολίας (*) εύκολο (**) μέτριο (***) δύσκολο Βάσεις Δεδομένων

Διαβάστε περισσότερα

Βάσεις Δεδομένων 2010-2011 Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

Βάσεις Δεδομένων 2010-2011 Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Σχεσιακή Άλγεβρα Βάσεις Δεδομένων 2010-2011 Ευαγγελία Πιτουρά 1 Εισαγωγή Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός Σχεδιασμός

Διαβάστε περισσότερα

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

Σχεσιακή Άλγεβρα. Προγράμματα που απαντούν σε επερωτήσεις για τον τρέχον στιγμιότυπο της βάσης δεδομένων (querying) Εισαγωγή Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Σχεσιακού Μοντέλου) Μετατροπή

Διαβάστε περισσότερα

Κεφάλαιο 3. Ερωτήματα SQL

Κεφάλαιο 3. Ερωτήματα SQL Κεφάλαιο 3. Ερωτήματα SQL Σύνοψη Σ αυτό το κεφάλαιο θα παρουσιάσουμε βασικά και σύνθετα ερωτήματα της SQL. Τα ερωτήματα θα υποβληθούν στην βάση δεδομένων DVDclub που δημιουργήθηκε στο προηγούμενο κεφάλαιο.

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΘΕΜΑΤΑ. Θέμα 1 ο Σύμφωνα με τους παραπάνω πίνακες και τη θέση που έχουν τα ξένα κλειδιά βρείτε τους

ΘΕΜΑΤΑ. Θέμα 1 ο Σύμφωνα με τους παραπάνω πίνακες και τη θέση που έχουν τα ξένα κλειδιά βρείτε τους ΘΕΜΑΤΑ A Οι παρακάτω πίνακες αποτελούνται από τα εξής πεδία : ΕΡΓΑΖΟΜΕΝΟΣ : ΑΦΜ, ΕΠΙΘΕΤΟ, ΟΝΟΜΑ, ΤΗΛ, ΟΔΟΣ, ΠΟΛΗ,ΜΙΣΘΟΣ, ΚΤ ΤΜΗΜΑ : ΚΤ, ΑΦΜ, ΤΙΤΛΟΣ_ΤΜΗΜΑΤΟΣ, ΤΗΛ ΕΡΓΑ : ΚΕΡ, ΠΕΡΙΓΡΑΦΗ, ΤΟΠΟΘΕΣΙΑ, ΠΡΟΫΠΟΛΟΓΙΣΜΟΣ

Διαβάστε περισσότερα

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε.

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Παραδοτέα 1. Το αρχείο.mdb της βάσης δεδομένων σας σε ACCESS 2. Ένα CD που θα αναγράφει το ονοματεπώνυμο του σπουδαστή και το ΑΕΜ και θα περιέχει το αρχείο.mdb της βάσης δεδομένων καθώς και το εγχειρίδιο

Διαβάστε περισσότερα

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

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο SQL Examples Ξένου Ρουμπίνη 1 SQL-DDL Data Definition/Description Language (DDL): προσδιορίζουν τη δομή ή το σχήμα των δεδομένων.

Διαβάστε περισσότερα

Certified Data Base Designer (CDBD)

Certified Data Base Designer (CDBD) Certified Data Base Designer (CDBD) Εξεταστέα Ύλη (Syllabus) Πνευµατικά ικαιώµατα Το παρόν είναι πνευµατική ιδιοκτησία της ACTA Α.Ε. και προστατεύεται από την Ελληνική και Ευρωπαϊκή νοµοθεσία που αφορά

Διαβάστε περισσότερα

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

Η αναλυτική περιγραφή της γλώσσας SQL αποτελεί αντικείµενο των σελίδων που ακολουθούν. Η ΓΛΩΣΣΑ ΟΡΙΣΜΟΥ Ε ΟΜΕΝΩΝ Κεφάλαιο 6 SQL Στο κεφάλαιο αυτό παρουσιάζεται η δοµηµένη γλώσσα ερωτοαποκρίσεων (Structured Query Language, SQL) που χρησιµοποιείται για τη διαχείριση των δεδοµένων της βάσης. Η διαχείριση αυτή περιλαµβάνει

Διαβάστε περισσότερα

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

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/

Διαβάστε περισσότερα

Πληροφοριακά Συστήµατα

Πληροφοριακά Συστήµατα Nell Dale John Lewis Chapter 12 Πληροφοριακά Συστήµατα Στόχοι Ενότητας Η κατανόηση της έννοιας «Πληροφοριακό Σύστηµα» Επεξήγηση της οργάνωσης λογιστικών φύλλων (spreadsheets) Επεξήγηση της ανάλυσης δεδοµένων

Διαβάστε περισσότερα

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

Εργαστήριο Βάσεων Δεδομένων Εργαστήριο Βάσεων Δεδομένων Φροντιστήριο 4/2/2009 Δικαιώματα χρηστών - Προβολές (Views) ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ MYSQL queries results mysql host DB server queries results Client host Β Δ Ηχρήσητηςmysql βασίζεται

Διαβάστε περισσότερα

Βάσεις Δεδομένων. Εργαστήριο ΙV. Τμήμα Πληροφορικής ΑΠΘ 2014-2015

Βάσεις Δεδομένων. Εργαστήριο ΙV. Τμήμα Πληροφορικής ΑΠΘ 2014-2015 Βάσεις Δεδομένων Εργαστήριο ΙV Τμήμα Πληροφορικής ΑΠΘ 2014-2015 2 Σκοπός του 4 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: η μελέτη ερωτημάτων σύνδεσης η μελέτη ερωτημάτων συνάθροισης 3 Εκφράσεις

Διαβάστε περισσότερα

ΘΕΜΑΤΑ. Ερώτηση 1 Κατά τη Φυσική Αποθήκευση (Physical storage) μιας ΒΔ αποθηκεύονται στον δίσκο τα:

ΘΕΜΑΤΑ. Ερώτηση 1 Κατά τη Φυσική Αποθήκευση (Physical storage) μιας ΒΔ αποθηκεύονται στον δίσκο τα: ΘΕΜΑΤΑ Θέμα 1 ο Σε μία βάση δεδομένων χρηματιστηριακών συναλλαγών υπάρχουν οι παρακάτω πίνακες που αποτελούνται από τα εξής πεδία : : ΚΣ, ΗΜΝΙΑ, ΩΡΑ, ΚΜ, ΤΙΜΗ ΜΕΤΟΧΗ : ΚΜ, ΟΝΟΜΑ, ΕΤΟΣ_ΙΔΡΥΣΗΣ, ΚΚ, ΚΑΤΗΓΟΡΙΑ

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΕΥΤΕΡΟ ηµιουργία Βάσης, Πίνακα, Domain Γιώργος Μαρκοµανώλης Περιεχόµενα ηµιουργία Βάσης... 1 ηµιουργία µιας shadow βάσης... 2 ιαγραφή

Διαβάστε περισσότερα

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

Το σχεσιακό μοντέλο βάσεων δεδομένων ΕΣΔ232 Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας Το σχεσιακό μοντέλο βάσεων δεδομένων Περιεχόμενα Περιεχόμενα - Βιβλιογραφία Ενότητας Εισαγωγή στο σχεσιακό μοντέλο Σχεσιακές γλώσσες ερωτημάτων Περιορισμοί

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Β. Μεγαλοοικονόμου, Δ. Χριστοδουλάκης Σχεσιακό Μοντέλο ΙΙΙ Ακ.Έτος 2008-09 (μεβάσητιςσημειώσειςτωνsilberchatz, Korth και Sudarshan και του C. Faloutsos CMU)

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Triggers, Stored procedures Γιώργος Μαρκοµανώλης Περιεχόµενα Triggers-Ενηµέρωση δεδοµένων άλλων πινάκων... 1 Ασφάλεια...

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εργαστήριο Βάσεων Δεδομένων. Δικαιώματα Χρηστών Προβολές Εργαστήριο Βάσεων Δεδομένων Δικαιώματα Χρηστών Προβολές Επικοινωνία με MySQL mysql host DB server queries results Client host Β Δ Η χρήση της mysql βασίζεται στο μοντέλο client server Remote access to

Διαβάστε περισσότερα

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πράξεις στο Σχεσιακό Μοντέλο ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2013 Πράξεις Διαχείρισης Δεδομένων Σχεσιακή Άλγεβρα Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Πράξεις στο Σχεσιακό

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων. Ενότητα 7.2: Structured Query Language - 2 ο Μέρος. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Βάσεις Δεδομένων Ενότητα 7.2: Structured Query Language - 2 ο Μέρος Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων Άδειες Χρήσης

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Βάσεις Δεδομένων. Εισαγωγή για το Εργαστήριο. Δρ. Τιάκας Ελευθέριος. Τμήμα Πληροφορικής ΑΠΘ 2015-2016

Βάσεις Δεδομένων. Εισαγωγή για το Εργαστήριο. Δρ. Τιάκας Ελευθέριος. Τμήμα Πληροφορικής ΑΠΘ 2015-2016 Βάσεις Δεδομένων Εισαγωγή για το Εργαστήριο Δρ. Τιάκας Ελευθέριος Τμήμα Πληροφορικής ΑΠΘ 2015-2016 2 Βασικοί στόχοι Μερικοί βασικοί στόχοι του εργαστηρίου είναι: Η ικανότητα ανάλυσης των απαιτήσεων, κατασκευής

Διαβάστε περισσότερα

Βάσεις δεδομένων. (10 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr

Βάσεις δεδομένων. (10 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Βάσεις δεδομένων (10 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα Ευρετήρια Σκανδάλες PL/SQL Δείκτες/Δρομείς 2 Αποθήκευση δεδομένων Πρωτεύουσα αποθήκευση Κύρια μνήμη (main memory) ή κρυφή μνήμη

Διαβάστε περισσότερα

Εργαστήριο Σημασιολογικού Ιστού

Εργαστήριο Σημασιολογικού Ιστού Εργαστήριο Σημασιολογικού Ιστού Ενότητα 8: Εισαγωγή στη SPARQL Βασική Χρήση Μ.Στεφανιδάκης 3-5-2015. Η γλώσσα ερωτημάτων SPARQL Ερωτήσεις (και ενημερώσεις) σε σετ δεδομένων RDF Και σε δεδομένα άλλης μορφής

Διαβάστε περισσότερα

Σύβακας Σταύρος ΠΕ19,MSc. IT ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ

Σύβακας Σταύρος ΠΕ19,MSc. IT ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ Σύβακας Σταύρος ΠΕ19,MSc. IT Εισαγωγή Τα ερωτήματα (queries) είναι μία από τις πιο σημαντικές δυνατότητες που προφέρει ένα Σ%Β% αφού επιτρέπουν: Ανάκτηση και ανάλυση των δεδομένων στην επιθυμητή μορφή

Διαβάστε περισσότερα

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

S Q Q L L -- SQL (Structured Query Language) select insert update delete 2.47 Κεφάλαιο 4 Η Γλώσσα SQL και Σχεσιακός Λογισµός Ι.Β. Σχεσιακός Λογισµός και η Γλώσσα SQL Σελίδα 2.46 SQL -ΕΙΣΑΓΩΓΗ SQL (Structured Query Language) είναι η τυποποιηµένη standard γλώσσα στις Σχεσιακές Βάσεις.

Διαβάστε περισσότερα

Βάςεισ Δεδομζνων Ι. Ενότητα 7: Ειςαγωγή ςτην γλώςςα_sql. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικϊν Πλθροφορικισ ΣΕ

Βάςεισ Δεδομζνων Ι. Ενότητα 7: Ειςαγωγή ςτην γλώςςα_sql. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικϊν Πλθροφορικισ ΣΕ Βάςεισ Δεδομζνων Ι Ενότητα 7: Ειςαγωγή ςτην γλώςςα_sql Δρ. Σςιμπίρθσ Αλκιβιάδθσ Άδειεσ Χρήςησ Σο παρόν εκπαιδευτικό υλικό υπόκειται ςε άδειεσ χριςθσ Creative Commons. Για εκπαιδευτικό υλικό, όπωσ εικόνεσ,

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα 7: Βάσεις Δεδομένων (Θεωρία) Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών Σπουδών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 3) Ουρανία Σμυρνάκη

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 3) Ουρανία Σμυρνάκη ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 3) Ουρανία Σμυρνάκη 1 3 η ενότητα: Εισαγωγή στις Βάσεις Δεδομένων και στην MySQL

Διαβάστε περισσότερα

SQL Τύποι Δεδομένων Δημιουργία Πίνακα Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1)

SQL Τύποι Δεδομένων Δημιουργία Πίνακα Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (1) Εργαστήριο Βάσεων Δεδομένων Εισαγωγή στη My (1) Η (Structured Query Language) είναι μια πλήρης γλώσσα Βάσεων Δεδομενων Είναι δομημένη σε βάσεις που περιέχουν πίνακες Οι πίνακες αποτελούνται από γραμμές

Διαβάστε περισσότερα

Λογικός Σχεδιασμός Σχεσιακών Σχημάτων: Αποσύνθεση

Λογικός Σχεδιασμός Σχεσιακών Σχημάτων: Αποσύνθεση Λογικός Σχεδιασμός Σχεσιακών Σχημάτων: Αποσύνθεση Βάσεις Δεδομένων 2010-2011 Ευαγγελία Πιτουρά 1 Εισαγωγή Θα εξετάσουμε πότε ένα σχεσιακό σχήμα για μια βάση δεδομένων είναι «καλό» Γενικές Οδηγίες Η Μέθοδος

Διαβάστε περισσότερα

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

Το Σχεσιακό Μοντέλο. Βάσεις Δεδομένων 2014-2015. Ευαγγελία Πιτουρά 1 Το Σχεσιακό Μοντέλο Ευαγγελία Πιτουρά 1 Μοντελοποίηση Σχήμα (database schema): η περιγραφή της δομής της πληροφορίας που είναι αποθηκευμένη στη βδ με τη χρήση ενός μοντέλου δεδομένων Μοντέλο Δεδομένων:

Διαβάστε περισσότερα

Ανάκτηση Δεδομένων (Information Retrieval)

Ανάκτηση Δεδομένων (Information Retrieval) Ανάκτηση Δεδομένων (Information Retrieval) Παύλος Εφραιμίδης Βάσεις Δεδομένων Ανάκτηση Δεδομένων 1 Information Retrieval (1) Βάσεις Δεδομένων: Περιέχουν δομημένη πληροφορία: Πίνακες Ανάκτηση Πληροφορίας

Διαβάστε περισσότερα

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

Εισαγωγή στην πληροφορική Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 6: Εισαγωγή στις βάσεις δεδομένων (Μέρος Α) Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης

Διαβάστε περισσότερα

Βάσεις Δεδομένων Ι - 06. Ευρετήρια/Indexes. (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών

Βάσεις Δεδομένων Ι - 06. Ευρετήρια/Indexes. (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών Βάσεις Δεδομένων Ι - 06 Ευρετήρια/Indexes (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών ΤΕΙ Λάρισας Τι είναι τα ευρετήρια; Ευρετήριο/Index:

Διαβάστε περισσότερα

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

Διαβάστε περισσότερα

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

Διάλεξη 10: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) ΙI Διάλεξη 10: Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός (Relational Algebra/Calculus) ΙI Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Σχεσιακή Άλγεβρα Τελεστές Συνένωσης

Διαβάστε περισσότερα

ECDL Module 5 Χρήση Βάσεων εδοµένων Εξεταστέα Ύλη, έκδοση 5.0 (Syllabus Version 5.0)

ECDL Module 5 Χρήση Βάσεων εδοµένων Εξεταστέα Ύλη, έκδοση 5.0 (Syllabus Version 5.0) ECDL Module 5 Χρήση Βάσεων εδοµένων Εξεταστέα Ύλη, έκδοση 5.0 (Syllabus Version 5.0) (Module 5 Using Databases) Συνολική ιάρκεια: Προτεινόµενο * Χρονοδιάγραµµα Εκπαίδευσης 10-16 (δέκα έως δεκαέξι) ώρες

Διαβάστε περισσότερα

o AND o IF o SUMPRODUCT

o AND o IF o SUMPRODUCT Πληροφοριακά Εργαστήριο Management 1 Information Συστήματα Systems Διοίκησης ΤΕΙ Τμήμα Ελεγκτικής Ηπείρου Χρηματοοικονομικής (Παράρτημα Πρέβεζας) και Αντικείµενο: Μοντελοποίηση προβλήµατος Θέµατα που καλύπτονται:

Διαβάστε περισσότερα

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

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005 ΛΥΣΕΙΣ Ι. Βασιλείου -----------------------------------------------------------------------------------------------------

Διαβάστε περισσότερα

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Η ΓΛΩΣΣΑ PASCAL ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Απλοί ή στοιχειώδης Τ.Δ. Ακέραιος τύπος Πραγματικός τύπος Λογικός τύπος Χαρακτήρας Σύνθετοι Τ.Δ. Αλφαριθμητικός 1. Ακέραιος (integer) Εύρος: -32768 έως 32767 Δήλωση

Διαβάστε περισσότερα

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

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: http://medisp.bme.teiath.gr/eclass/courses/tio103/ https://eclass.teiath.gr/courses/tio100/

Διαβάστε περισσότερα

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2013 - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Αρχιτεκτονική

Διαβάστε περισσότερα

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

Το Σχεσιακό μοντέλο και η γλώσσα SQL Το Σχεσιακό μοντέλο και η γλώσσα SQL Μανόλης Γεργατσούλης (manolis@ionio.gr) Αναπληρωτής Καθηγητής Ομάδα Βάσεων Δεδομένων και Πληροφοριακών Συστημάτων, Τμήμα Αρχειονομίας Βιβλιοθηκονομίας, Ιόνιο Πανεπιστήμιο

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Αριθμός πελάτη ΑΡΠΕΛ Αυτόματη αρίθμηση Όνομα πελάτη ΟΝΟΜΑ Κείμενο Τηλέφωνο ΤΗΛ Κείμενο Διεύθυνση ΔΙΕΥΘΥΝΣΗ Κείμενο ΠΑΡΑΓΓΕΛΙΕΣ ΠΕΔΙΩΝ)

Αριθμός πελάτη ΑΡΠΕΛ Αυτόματη αρίθμηση Όνομα πελάτη ΟΝΟΜΑ Κείμενο Τηλέφωνο ΤΗΛ Κείμενο Διεύθυνση ΔΙΕΥΘΥΝΣΗ Κείμενο ΠΑΡΑΓΓΕΛΙΕΣ ΠΕΔΙΩΝ) ΑΣΚΗΣΗ 1 α. Με τη βοήθεια της Microsoft Access, να δημιουργήσετε βάση δεδομένων με όνομα ΕΠΩΝΥΜΟ_ΟΝΟΜΑ_ΑΜ.accdb. Να δημιουργήσετε δύο πίνακες, έναν για πελάτες (με όνομα ΠΕΛΑΤΕΣ) και έναν για παραγγελίες

Διαβάστε περισσότερα

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ 2015-2016

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ 2015-2016 Βάσεις Δεδομέμωμ Εξγαζηήξην V Τκήκα Πιεξνθνξηθήο ΑΠΘ 2015-2016 2 Σκοπός του 5 ου εργαστηρίου Σθνπόο απηνύ ηνπ εξγαζηεξίνπ είλαη: ε κειέηε ζύλζεησλ εξσηεκάησλ ζύλδεζεο ζε δύν ή πεξηζζόηεξεο ζρέζεηο ε κειέηε

Διαβάστε περισσότερα

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού

Διαβάστε περισσότερα

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub Σύνοψη Σ αυτό το κεφάλαιο θα περιγράψουμε τη δημιουργία φορμών, προκειμένου να εισάγουμε δεδομένα και να εμφανίζουμε στοιχεία από τους πίνακες

Διαβάστε περισσότερα

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions)

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αυγερινός Αραμπατζής avi@ee.duth.gr www.aviarampatzis.com Βάσεις Δεδομένων Stored Procedures 1 Stored Routines (1/2) Τμήματα κώδικα τα

Διαβάστε περισσότερα

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων ΕΣΔ516 Τεχνολογίες Διαδικτύου Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων Περιεχόμενα - Βιβλιογραφία Ενότητας Περιεχόμενα Ορισμοί Συστατικά στοιχεία εννοιολογικής σχεδίασης Συστατικά

Διαβάστε περισσότερα

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 2 ο Τύποι Δεδοµένων Δήλωση Μεταβλητών Έξοδος Δεδοµένων Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Μνήµη και Μεταβλητές Σχέση Μνήµης Υπολογιστή και Μεταβλητών Η µνήµη (RAM) ενός

Διαβάστε περισσότερα

a = 10; a = k; int a,b,c; a = b = c = 10;

a = 10; a = k; int a,b,c; a = b = c = 10; C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 4 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

Διαβάστε περισσότερα

Διαχείριση χρηστών και δικαιωμάτων

Διαχείριση χρηστών και δικαιωμάτων ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας Διαχείριση χρηστών και δικαιωμάτων Χρήστες και διακομιστές Περιεχόμενα Περιεχόμενα Χρήστες και δικαιώματα Δημιουργία νέων χρηστών Χρήστες και διακομιστές

Διαβάστε περισσότερα

Συναρτησιακές Εξαρτήσεις

Συναρτησιακές Εξαρτήσεις Συναρτησιακές Εξαρτήσεις Βάσεις Δεδομένων 2009-2010 Ευαγγελία Πιτουρά 1 Εισαγωγή Θεωρία για το πότε ένας σχεδιασμός είναι «καλός» Η θεωρία βασίζεται στις Συναρτησιακές Εξαρτήσεις (Functional Dependencies)

Διαβάστε περισσότερα

Εξεταστέα Ύλη (Syllabus) Έκδοση 5.0

Εξεταστέα Ύλη (Syllabus) Έκδοση 5.0 Εξεταστέα Ύλη (Syllabus) Έκδοση 5.0 Πνευματικά Δικαιώματα 2007 Ίδρυμα ECDL (ECDL Foundation www.ecdl.org) Όλα τα δικαιώματα είναι κατοχυρωμένα. Κανένα μέρος αυτού του εγγράφου δεν μπορεί να αναπαραχθεί

Διαβάστε περισσότερα

9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers. Αποθηκευμένες Διαδικασίες (Stored Procedures):

9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers. Αποθηκευμένες Διαδικασίες (Stored Procedures): 9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers Σκοπός της παρούσας εργαστηριακής άσκησης, είναι η εξοικείωση του σπουδαστή με τη δημιουργία αποθηκευμένων διαδικασιών (Stored Procedures) και σκανδάλης

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Εφαρμογές της Πληροφορικής

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Εφαρμογές της Πληροφορικής ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Εφαρμογές της Πληροφορικής Υπολογιστικά συστήματα: Στρώματα 1 επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό δεδομένα Εφαρμογές

Διαβάστε περισσότερα

FROM TESTOTA.REGISTRY

FROM TESTOTA.REGISTRY ΟΤΑ Επιχειρησιακή Νοηµοσύνη Ενότητα: Βc1.1.3 Επιχειρησιακή Νοηµοσύνη και Τεχνολογίες της Πληροφορικής και των Επικοινωνιών (BI & IT) Πρακτική Άσκηση (επίπεδο 1): Στόχος της άσκησης είναι η εµβάθυνση στην

Διαβάστε περισσότερα

ΧΡΗΣΗ Η/Υ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ

ΧΡΗΣΗ Η/Υ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ ΧΡΗΣΗ Η/Υ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ 1. ΠΕΡΙΒΑΛΛΟΝ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ 1.1. Βασικές Λειτουργίες και Ρυθµίσεις 1.1.1 Εκκίνηση, Τερµατισµός, Επανεκκίνηση του Η/Υ ακολουθώντας τις κατάλληλες διαδικασίες 1.1.2

Διαβάστε περισσότερα

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 5 ο Έλεγχος Προγράµµατος Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Η εντολή if (Ι) Η εντολή if είναι µία από τις βασικότερες δοµές ελέγχου ροής στη C, αλλά και στις περισσότερες

Διαβάστε περισσότερα

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

Μάθημα Βάσεις Δεδομένων Ι - Ασκήσεις Επανάληψης Μάθημα Βάσεις Δεδομένων Ι - Ασκήσεις Επανάληψης 01 Εκφώνηση Θεωρήστε τον πίνακα R = {A, B, C, D, E, F, G} και τις παρακάτω FDs: A, B -> G A -> C B -> D C -> E D -> F Ποιο είναι το κλειδί του R; Κανονικοποιήστε

Διαβάστε περισσότερα

Κεφάλαιο 4ο: Εντολές επιλογής

Κεφάλαιο 4ο: Εντολές επιλογής Χρήστος Τσαγγάρης ΕΕ ΙΠ Τµήµατος Μαθηµατικών, Πανεπιστηµίου Αιγαίου Κεφάλαιο 4ο: Εντολές επιλογής Μέχρι τώρα παρατηρήσαµε ότι τα προβλήµατα που αντιµετωπίσαµε είχαν σειριακή κίνηση, δηλαδή η µία εντολή

Διαβάστε περισσότερα

Πρόλογος. if (παράσταση) εντολή1 else εντολή2. Από εδώ και πέρα θα αναφέρεται ως K&R.

Πρόλογος. if (παράσταση) εντολή1 else εντολή2. Από εδώ και πέρα θα αναφέρεται ως K&R. Περιεχόμενα Πρόλογος v ΚΕΦΑΛΑΙΟ 1 Προπαρασκευαστική εισαγωγή 1 ΚΕΦΑΛΑΙΟ 2 Τύποι, τελεστές, και παραστάσεις 43 ΚΕΦΑΛΑΙΟ 3 Η ροή του ελέγχου 59 ΚΕΦΑΛΑΙΟ 4 Συναρτήσεις και δομή του προγράμματος 69 ΚΕΦΑΛΑΙΟ

Διαβάστε περισσότερα

PHPMyAdmin: Σύντομος οδηγός για αρχάριους

PHPMyAdmin: Σύντομος οδηγός για αρχάριους 2014 PHPMyAdmin: Σύντομος οδηγός για αρχάριους Καρούσος Νικόλαος Επιστημονικός Συνεργάτης Παρασκευά Σταυρούλα Φοιτήτρια, Εργαστηριακή Βοηθός, τμήμα ΕΠΔΟ Μεσολογγίου 33 Έκδοση 1.1 Πρόλογος... - 2-1. Είσοδος

Διαβάστε περισσότερα

Εισαγωγή «Singular M.I.S I».

Εισαγωγή «Singular M.I.S I». Εισαγωγή Είναι γεγονός ότι µια από τις πιο σηµαντικές ανάγκες που αντιµετωπίζει µια επιχείρηση, κατά την εγκατάσταση ενός λογισµικού «πακέτου» (Οικονοµικής & Εµπορικής ιαχείρισης), είναι ο τρόπος µε τον

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις 1) Ερωτήσεις Σωστού/Λάθους (ΣΛ) Το πακέτο λογισμικού Excel της Microsoft είναι λογισμικό διαχείρισης ΒΔ (ΣΛ) Το πακέτο λογισμικού Access της Microsoft είναι λογισμικό

Διαβάστε περισσότερα

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

Κεφάλαιο 11 Ερωτήµατα Κεφάλαιο 11 Ερωτήµατα Στο κεφάλαιο αυτό περιγράφεται ο τρόπος δηµιουργίας και διαχείρισης ερωτηµάτων µέσα από το περιβάλλον της Microsoft Access. Όπως έχει ήδη αναφερθεί σε προηγούµενο κεφάλαιο, ένας από

Διαβάστε περισσότερα

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη

Επιλογή και επανάληψη. Λογική έκφραση ή συνθήκη Επιλογή και επανάληψη Η ύλη που αναπτύσσεται σε αυτό το κεφάλαιο είναι συναφής µε την ύλη που αναπτύσσεται στο 2 ο κεφάλαιο. Όπου υπάρχουν διαφορές αναφέρονται ρητά. Προσέξτε ιδιαίτερα, πάντως, ότι στο

Διαβάστε περισσότερα

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ. Σκοπός - Περιεχόµενο µαθήµατος Η µελέτη του θεωρητικού υποβάθρου και των εργαλείων που απαιτούνται για τα συστήµατα βάσεων δεδοµένων

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ. Σκοπός - Περιεχόµενο µαθήµατος Η µελέτη του θεωρητικού υποβάθρου και των εργαλείων που απαιτούνται για τα συστήµατα βάσεων δεδοµένων ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ Ι 1 ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ Ι Σκοπός - Περιεχόµενο µαθήµατος Η µελέτη του θεωρητικού υποβάθρου και των εργαλείων που απαιτούνται για τα συστήµατα βάσεων δεδοµένων Εισαγωγή- ιστορία-παραδείγµατα,

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς, Τμήμα Πληροφορικής

Πανεπιστήμιο Πειραιώς, Τμήμα Πληροφορικής Πανεπιστήμιο Πειραιώς, Τμήμα Πληροφορικής Ακαδημαϊκό έτος 2009-10 ΣΥΓΦΡΟΝΑ ΘΔΜΑΤΑ ΒΑΣΔΩΝ ΓΔΓΟΜΔΝΩΝ 1 η ΔΡΓΑΣΙΑ ΔΞΑΜΗΝΟΥ ομάδες των 2-3 ατόμων Εισαγωγή Έστω η βάση δεδομένων μιας επιχείρησης (θα μπορούσε

Διαβάστε περισσότερα

4.4 Ερωτήσεις διάταξης. Στις ερωτήσεις διάταξης δίνονται:

4.4 Ερωτήσεις διάταξης. Στις ερωτήσεις διάταξης δίνονται: 4.4 Ερωτήσεις διάταξης Στις ερωτήσεις διάταξης δίνονται:! µία σειρά από διάφορα στοιχεία και! µία πρόταση / κανόνας ή οδηγία και ζητείται να διαταχθούν τα στοιχεία µε βάση την πρόταση αυτή. Οι ερωτήσεις

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Οργάνωση εδομένων Κεφάλαιο 11ο ομές εδομένων

Εισαγωγή στην επιστήμη των υπολογιστών. Οργάνωση εδομένων Κεφάλαιο 11ο ομές εδομένων Εισαγωγή στην επιστήμη των υπολογιστών Οργάνωση εδομένων Κεφάλαιο 11ο ομές εδομένων 1 ομή εδομένων Μια δομή δεδομένων (data structure) χρησιμοποιεί μια συλλογή από σχετικές μεταξύ τους μεταβλητές, οι οποίες

Διαβάστε περισσότερα

Μοντέλο Οντοτήτων-Συσχετίσεων

Μοντέλο Οντοτήτων-Συσχετίσεων Μοντέλο Οντοτήτων-Συσχετίσεων 1 Εισαγωγή Σχεδιασμός μιας εφαρμογής ΒΔ: Βήματα 1. Συλλογή και Ανάλυση Απαιτήσεων (requirement analysis) Τι δεδομένα θα αποθηκευτούν, ποιες εφαρμογές θα κτιστούν πάνω στα

Διαβάστε περισσότερα

SQL Server 2005 Tutorial Αςκήςεισ. Γεράσιμος Μαρκέτος InfoLab, Τμήμα Ρληροφορικήσ, Ρανεπιςτήμιο Ρειραιϊσ (http://infolab.cs.unipi.

SQL Server 2005 Tutorial Αςκήςεισ. Γεράσιμος Μαρκέτος InfoLab, Τμήμα Ρληροφορικήσ, Ρανεπιςτήμιο Ρειραιϊσ (http://infolab.cs.unipi. SQL Server 2005 Tutorial Αςκήςεισ Γεράσιμος Μαρκέτος InfoLab, Τμήμα Ρληροφορικήσ, Ρανεπιςτήμιο Ρειραιϊσ (http://infolab.cs.unipi.gr/) Εργαςτηριακή Άςκηςη Σχεδιάςτε ςτον SQL Server 2005 μια βάςη δεδομζνων

Διαβάστε περισσότερα

MySQL + Γλώσσα Προγραμματισμού. Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1

MySQL + Γλώσσα Προγραμματισμού. Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 MySQL + Γλώσσα Προγραμματισμού Ευαγγελία Πιτουρά 1 Database drivers Για να χρησιμοποιήσουμε μια βάση δεδομένων από μια γλώσσα προγραμματισμού χρειαζόμαστε έναν driver. JDBC είναι το API για τη Java και

Διαβάστε περισσότερα

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

Διαβάστε περισσότερα

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

Σχεσιακός Λογισµός. Εισαγωγή. Σχεσιακό Μοντέλο. Τυπικές Γλώσσες Ερωτήσεων Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός Πλειάδων Σχεσιακός Λογισμός Πεδίου Σχεσιακός Λογισµός Βάσεις εδοµένων 2012-2013 Ευαγγελία Πιτουρά 1 Εισαγωγή Σχεσιακό Μοντέλο Τυπικές Γλώσσες Ερωτήσεων Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός Πλειάδων Σχεσιακός Λογισμός Πεδίου Θα δούμε μόνο

Διαβάστε περισσότερα

1. ΑΝΟΙΞΤΕ ΤΟΝ ΠΙΝΑΚΑ CUSTOMER ΚΑΙ ΣΤΟ ΜΕΝΟΥ ΕΠΙΛΕΞΤΕ

1. ΑΝΟΙΞΤΕ ΤΟΝ ΠΙΝΑΚΑ CUSTOMER ΚΑΙ ΣΤΟ ΜΕΝΟΥ ΕΠΙΛΕΞΤΕ ΜΑΘΗΜΑ 6 ο ΤΑΞΙΝΟΜΗΣΗ / ΦΙΛΤΡΑΡΙΣΜΑ ΠΛΗΡΟΦΟΡΙΩΝ Α. ΤΑΞΙΝΟΜΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ 1. ΑΝΟΙΞΤΕ ΤΗ ΒΑΣΗ Ε ΟΜΕΝΩΝ ΠΟΥ ΕΧΕΤΕ ΦΤΙΑΞΕΙ ΣΤΟ ΠΡΟΗΓΟΥΜΕΝΟ ΜΑΘΗΜΑ (ΑΠΟ ΕΧΘΕΙΤΕ ΑΝ ΧΡΕΙΑΖΕΤΑΙ ΤΗΝ ΠΡΟΕΙ ΟΠΟΙΗΣΗ ΑΣΦΑΛΕΙΑΣ) 2.

Διαβάστε περισσότερα

ΕΠΛ 002: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗς ΠΛΗΡΟΦΟΡΙΚΗΣ. Εφαρμογές της Πληροφορικής

ΕΠΛ 002: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗς ΠΛΗΡΟΦΟΡΙΚΗΣ. Εφαρμογές της Πληροφορικής ΕΠΛ 002: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗς ΠΛΗΡΟΦΟΡΙΚΗΣ Εφαρμογές της Πληροφορικής Υπολογιστικά συστήματα: Στρώματα 1 επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό δεδομένα Εφαρμογές στη Βιομηχανία

Διαβάστε περισσότερα

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

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

. Εργαστήριο Βάσεων Δεδομένων. Triggers Εργαστήριο Βάσεων Δεδομένων Triggers Triggers: Βασικές Έννοιες Ένας trigger είναι ένα κομμάτι κώδικα, μια ρουτίνα Συνδέεται με ένα συγκεκριμένο πίνακα Καλείται όταν συμβεί ένα γεγονός στον πίνακα Συχνές

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

-----------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------- ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ BΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΜΑΡΤΙΟΥ 2006 - ΛΥΣΕΙΣ Ι. Βασιλείου -----------------------------------------------------------------------------------------------------

Διαβάστε περισσότερα

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ.Χατζόπουλος 2 Δένδρο αναζήτησης είναι ένας ειδικός τύπος δένδρου που χρησιμοποιείται για να καθοδηγήσει την αναζήτηση μιας

Διαβάστε περισσότερα

Το Σχεσιακό Μοντέλο-Σχεσιακή Άλγεβρα, Σχεσιακός Λογισμός. 06/06/2009 Μ.Χατζόπουλος 1

Το Σχεσιακό Μοντέλο-Σχεσιακή Άλγεβρα, Σχεσιακός Λογισμός. 06/06/2009 Μ.Χατζόπουλος 1 Το Σχεσιακό Μοντέλο-Σχεσιακή Άλγεβρα, Σχεσιακός Λογισμός 06/06/2009 Μ.Χατζόπουλος 1 Αρχιτεκτονική Τριών Σχημάτων ΕΞΩΤΕΡΙΚΟ ΕΠΙΠΕΔΟ Τελικοί Χρήστες Εξωτερική Όψη 1 Εξωτερική Όψη n ΕΝΝΟΙΟΛΟΓΙΚΟ ΕΠΙΠΕΔΟ ΕΝΝΟΙΟΛΟΓΙΚΟ

Διαβάστε περισσότερα