Κεφ 4: Προχωρημένες Εντολές SQL

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

Download "Κεφ 4: Προχωρημένες Εντολές SQL"

Transcript

1 Κεφ 4: Προχωρημένες Εντολές SQL Database System Concepts, 6 th Ed. See for conditions on re-use

2 Σύνδεση σχέσεων (join) Οι λειτουργίες Join παίρνουν ως είσοδο δυο σχέσεις και επιστρέφουν ως αποτέλεσμα μια άλλη σχέση. Αυτές οι πράξεις χρησιμοποιούνται συνήθως ως εκφράσεις υποερωτημάτων στο τμήμα from. Συνθήκη Join: καθορίζει ποιες πλειάδες στις δυο σχέσεις ταιριάζουν και ποια γνωρίσματα εμφανίζονται στο αποτέλεσμα του join. Τύπος Join: καθορίζει πώς επεξεργαζόμαστε τις πλειάδες κάθε σχέσης, οι οποίες δε ταιριάζουν με κάποια πλειάδα της άλλης σχέσης (βάσει της συνθήκης του join). Τύποι συνδέσμου inner join left outer join right outer join full outer join Συνθήκες Συνδέσμου natural on <predicate> using (A 1, A 2,..., A n ) 4.2

3 Συνδέσεις Συνθήκες Συνδέσμου: on P (Ρ είναι κατηγόρημα) using (A 1, A 2,..., A n ): γνωρίσματα που πρέπει να ταιριάζουν στη συνένωση είναι τα A i. Τα A i πρέπει να είναι γνωρίσματα κοινά και στις δυο σχέσεις και εμφανίζονται στο αποτέλεσμα μόνο μια φορά. Για την εσωτερική συνένωση η συνθήκη δεν είναι υποχρεωτική, όταν λείπει ισοδυναμεί με καρτεσιανό γινόμενο. 4.3

4 Συνενώσεις Συνόλων Οι λέξεις κλειδιά inner και outer είναι προαιρετικές. natural: φυσική συνένωση, τα γνωρίσματα εμφανίζονται στο αποτέλεσμα με την εξής διάταξη: πρώτα αυτά με τα οποία έγινε η συνένωση (δηλ., αυτά που είναι κοινά και στις δύο σχέσεις), μετά τα υπόλοιπα της πρώτης σχέσης, και τέλος τα υπόλοιπα της δεύτερης σχέσης. Παράδειγμα: Τα ονόματα των πελατών που είτε έχουν καταθέσεις είτε έχουν πάρει δάνεια (αλλά όχι και τα δυο) select Όνομα-Πελάτη from Καταθέτης natural full outer join Δανειζόμενος where Αριθμός-Λογαριασμού is null or Αριθμός-Δανείου is null 4.4

5 Join παράδειγμα Σχέση course Σχέση prereq Παρατηρείστε ότι πληροφορία prereq λείπει για το CS-315 και πληροφορία course λείπει για το CS

6 Outer Join Επέκταση του join που αποφεύγει την απώλεια πληροφορίας. Υπολογίζει το join και μετά προσθέτει πλειάδες από μια σχέση που ΔΕΝ ταιριάζουν με πλειάδες της άλλης στο αποτέλεσμα Χρησιμοποιεί null τιμές. 4.6

7 Left Outer Join course natural left outer join prereq 4.7

8 Right Outer Join course natural right outer join prereq 4.8

9 Full Outer Join course natural full outer join prereq 4.9

10 Συνδεδεμένες Σχέσεις Παραδείγματα course inner join prereq on course.course_id = prereq.course_id Ποια η διαφορά του παραπάνω με ένα natural join? course left outer join prereq on course.course_id = prereq.course_id 4.10

11 Συνδεδεμένες Σχέσεις Παραδείγματα course natural right outer join prereq course full outer join prereq using (course_id) 4.11

12 Views (Προβολές ή Όψεις) Σε ορισμένες περιπτώσεις, δεν είναι επιθυμητό όλοι οι χρήστες να βλέπουν ολόκληρο το λογικό μοντέλο (δηλαδή όλες τις πραγματικές σχέσεις που είναι αποθηκευμένες στη βάση δεδομένων). Π.χ. Έστω ότι χρειάζεται κάποιος να ξέρει το όνομα ενός instructor και το department του, αλλά όχι τον μισθό του (salary). Αυτό το άτομο πρέπει να δει μια σχέση που με SQL περιγράφεται ως: select ID, name, dept_name from instructor Μια προβολή παρέχει το μηχανισμό για να αποκρύψουμε δεδομένα από κάποιους χρήστες Οποιαδήποτε σχέση δεν βρίσκεται στο σχήμα αλλά είναι ορατή σε ένα χρήστη ονομάζεται προβολή (ή όψη). 4.12

13 Ορισμός Όψεων Μπορούμε να ορίσουμε μια όψη χρησιμοποιώντας την εντολή: view definition create view <όνομα--όψης> as <select-from-where ερώτηση> Επίσης, μπορούν να προσδιοριστούν τα ονόματα των γνωρισμάτων άμεσα create view <όνομα--όψης> (<λίστα ονομάτων-γνωρισμάτων>) as <select-from-where ερώτηση> 4.13

14 Ορισμός Όψεων Παράδειγμα: Μια όψη που περιλαμβάνει τα ονόματα όλων των υποκαταστημάτων και το άθροισμα του ποσού των δανείων που έχουν γίνει από αυτά create view Υποκατάστημα-Σύνολο-Δανείων (Όνομα- Υποκαταστήματος, Σύνολο-Δανείων) as select Όνομα-Υποκαταστήματος, sum(ποσό) from Δάνειο group by Όνομα-Υποκαταστήματος 4.14

15 Ορισμός Όψεων Τα ονόματα όψεων μπορεί να χρησιμοποιηθούν οπουδήποτε μπορεί να χρησιμοποιηθεί το όνομα μιας σχέσης. Ο ορισμός της προβολής δεν είναι ο ίδιος με τη δημιουργία μιας νέας σχέσης Αντίθετα, ένας ορισμός προβολής προκαλεί την αποθήκευση μιας έκφρασης. Η έκφραση αντικαθίσταται στα ερωτήματα χρησιμοποιώντας την προβολή. Ο ορισμός της όψης παραμένει στην βάση δεδομένων, εκτός αν σβηστεί: drop view <όνομα-όψης> 4.15

16 Παραδείγματα instructors χωρίς salary: create view faculty as select ID, name, dept_name from instructor Όλοι οι instructors στο τμήμα Biology: select name from faculty where dept_name = Biology Μια προβολή από σύνολα department - salary: create view departments_total_salary(dept_name, total_salary) as select dept_name, sum (salary) from instructor group by dept_name; 4.16

17 Προβολές μέσω άλλων προβολών create view physics_fall_2009 as select course.course_id, sec_id, building, room_number from course, section where course.course_id = section.course_id and course.dept_name = Physics and section.semester = Fall and section.year = 2009 ; create view physics_fall_2009_watson as select course_id, room_number from physics_fall_2009 where building= Watson ; 4.17

18 Ενημέρωση Προβολής Προσθέτουμε μια νέα πλειάδα στην προβολή faculty που ορίσαμε προηγουμένως: insert into faculty values ( 30765, Green, Music ); Αυτή η εισαγωγή πρέπει να αντιπροσωπεύεται από την εισαγωγή της πλειάδας στη σχέση instructor ( 30765, Green, Music, null) Όμως γιατί να προσθέσουμε το null και να μην απορρίψουμε την εισαγωγή; 4.18

19 Ορισμένες ενημερώσεις δεν μπορούν να μεταφραστούν Μοναδικά create view instructor_info as select ID, name, building from instructor, department where instructor.dept_name= department.dept_name; insert into instructor_info values ( 69987, White, Taylor ); Ποιο department αν ο Taylor είναι σε πολλαπλά? Αν δεν είναι σε κανένα? Οι πιο πολλές υλοποιήσεις SQL επιτρέπουν ενημερώσεις μόνο σε «απλές» όψεις Το from περιέχει μόνο μια σχέση Το select περιέχει μόνο στήλες της σχέσης και δεν περιέχει εκφράσεις, συναθροίσεις ή distinct. Ό,τι στήλη δεν υπάρχει στο select μπορεί να τεθεί σε null Tο ερώτημα δεν περιέχει group by ή having. 4.19

20 Και κάποιο άλλο πρόβλημα create view history_instructors as select * from instructor where dept_name= History ; Αν θέλουμε να εισάγουμε το ( 25566, Brown, Biology, ) στην history_instructors τι θα γίνει; 4.20

21 Materialized (αντικειμενικές) Views Materializing a view: δημιουργία ενός φυσικού πίνακα που περιέχει όλες τις πλειάδες στο αποτέλεσμα του ερωτήματος που καθορίζει την προβολή Εάν οι σχέσεις που χρησιμοποιούνται στο ερώτημα ενημερώνονται, το αποτέλεσμα της αντικειμενικής προβολής καθίσταται ξεπερασμένο Πρέπει να διατηρηθεί η όψη, ενημερώνοντάς την όποτε ενημερώνονται οι υποκείμενες σχέσεις. 4.21

22 Transactions (Συναλλαγές) Μια σειρά ερωτημάτων ή/και ενημερώσεων Ατομική συναλλαγή είτε εκτελείται πλήρως είτε αναιρείται σαν να μην συνέβη ποτέ Απομόνωση από ταυτόχρονες συναλλαγές Οι συναλλαγές ξεκινούν σιωπηρά Τελειώνουν με commit work ή rollback work Στις πιο πολλές ΒΔ: κάθε εντολή SQL κάνει commit αυτόματα Μπορεί να αλλάξει (π.χ. Με χρήση του API) Στην SQL:1999, χρησιμοποιούμε: begin atomic. end 4.22

23 Περιορισμοί Ακεραιότητας Οι περιορισμοί ακεραιότητας προστατεύουν από την τυχαία ζημία τη βάση δεδομένων, διασφαλίζοντας ότι οι εγκεκριμένες αλλαγές στη βάση δεδομένων δεν οδηγούν σε απώλεια της συνέπειας των δεδομένων. Ένας λογαριασμός πρέπει να έχει υπόλοιπο > $10, Μισθός υπαλλήλου τουλάχιστον $4.00/ hour Πελάτης δεν πρέπει να έχει τηλ.αριθμό null 4.23

24 περιορισμοί ακεραιότητας σε μια μόνο σχέση not null primary key unique check (P), P κατηγόρημα 4.24

25 Not Null και Unique not null Τα name και budget να είναι not null name varchar(20) not null budget numeric(12,2) not null unique ( A 1, A 2,, A m ) Η προδιαγραφή unique ορίζει ότι οι ιδιότητες A1, A2, Am σχηματίζουν ένα υποψήφιο κλειδί. Τα υποψήφια κλειδιά μπορούν να είναι null (σε αντίθεση με τα πρωτεύοντα κλειδιά). 4.25

26 Ο όρος check check (P), P κατηγόρημα Π.χ.: να βεβαιωθούμε ότι το semester είναι είτε fall, winter, spring ή summer: create table section ( course_id varchar (8), sec_id varchar (8), semester varchar (6), year numeric (4,0), building varchar (15), room_number varchar (7), time slot id varchar (4), primary key (course_id, sec_id, semester, year), check (semester in ( Fall, Winter, Spring, Summer )) ); 4.26

27 Referential Integrity (ακεραιότητα αναφορών) Εξασφαλίζει ότι μια τιμή που εμφανίζεται σε μία σχέση για ένα δεδομένο σύνολο ιδιοτήτων εμφανίζεται επίσης για ένα ορισμένο σύνολο ιδιοτήτων σε άλλη σχέση. Π.χ.: Εάν η "Βιολογία" είναι ένα όνομα τμήματος που εμφανίζεται σε μία από τις πλειάδες στη σχέση εκπαιδευτή, τότε υπάρχει μια πλειάδα στη σχέση τμήματος για τη "Βιολογία". Έστω A ένα σύνολο από ιδιότητες. Έστω R και S δύο σχέσεις που περιέχουν τις ιδιότητες A και το A είναι πρωτεύον κλειδί της S. Το A είναι foreign key(ξένο κλειδί) της R αν για όλες τις τιμές του Α που εμφανίζονται στην R αυτές υπάρχουν και στην S. 4.27

28 Διαδοχικές Δράσεις ακεραιότητας αναφορών create table course ( course_id char(5) primary key, title varchar(20), dept_name varchar(20) references department ) create table course ( dept_name varchar(20), foreign key (dept_name) references department on delete cascade on update cascade,... ) Εναλλακτικές δράσεις: set null, set default 4.28

29 Παραβίαση ακεραιότητας κατά τις συναλλαγές Π.χ. create table person ( ID char(10), name char(40), mother char(10), father char(10), primary key ID, foreign key father references person, foreign key mother references person) Πώς να κάνουμε εισαγωγή χωρίς να παραβιάσουμε τη συνθήκη; Εισαγωγή πατέρα και μητέρας πριν το άτομο Η, θέτουμε father και mother σε null αρχικά, update αφού εισάγουμε όλα τα άτομα (δεν γίνεται αν οι ιδιότητες αυτές είναι not null) Ή καθυστερούμε τον έλεγχο 4.29

30 Περίπλοκες συνθήκες Ελέγχου check (time_slot_id in (select time_slot_id from time_slot)) Γιατί όχι με ξένο κλειδί? Κάθε section έχει τουλάχιστον έναν instructor. Πώς το εκφράζουμε αυτό? Δυστυχώς: στο check δεν υποστηρίζονται υπο ερωτήματα εναλλακτικά: triggers create assertion <assertion-name> check <predicate>; Επίσης δεν υποστηρίζονται 4.30

31 Ενσωματωμένοι τύποι δεδομένων στην SQL date: ημερομηνίες, με 4-ψήφιο χρόνο, μήνα και ημέρα Example: date time: Example: time 09:00:30 time 09:00:30.75 timestamp: Example: timestamp :00:30.75 interval: περίοδος χρόνου Π.χ.: interval 1 day Αφαιρώντας μια τιμή date/time/timestamp από μια άλλη επιστρέφει interval Τιμές interval μπορούν να προστεθούν σε τιμές date/time/timestamp 4.31

32 Δημιουργία Ευρετηρίων create table student (ID varchar (5), name varchar (20) not null, dept_name varchar (20), tot_cred numeric (3,0) default 0, primary key (ID)) create index studentname_index on student(name) Τα ευρετήρια είναι δομές δεδομένων που χρησιμοποιούνται για την επιτάχυνση της πρόσβασης σε αρχεία με καθορισμένες τιμές για τα χαρακτηριστικά ευρετηρίου e.g. select * from student where name like TS% Μπορεί να εκτελεστεί με χρήση του ευρετηρίου για να βρούμε τις απαραίτητες γραμμές, χωρίς να προσπελάσουμε όλες τις εγγραφές της σχέσης student 4.32

33 Τύποι Μεγάλων Αντικειμένων Μεγάλα αντικείμενα (photos, videos, αρχεία CAD files, κλπ) αποθηκεύονται σαν τύπος large object: blob: binary large object -- είναι μια μεγάλη συλλογή μη ερμηνευμένων δυαδικών δεδομένων (η ερμηνεία των οποίων αφήνεται σε εφαρμογή εκτός του συστήματος βάσης δεδομένων) clob: character large object -- είναι μια μεγάλη συλλογή δεδομένων χαρακτήρα Όταν ένα ερώτημα επιστρέφει ένα μεγάλο αντικείμενο, επιστρέφεται ένας δείκτης αντί του ίδιου του μεγάλου αντικειμένου. 4.33

34 Εξουσιοδότηση Τύποι εξουσιοδότησης σε μέρη της βάσης: Read επιτρέπει ανάγνωση αλλά όχι αλλαγή στα δεδομένα Insert επιτρέπει εισαγωγή νέων δεδομένων αλλά όχι αλλαγή στα υπάρχοντα δεδομένα Update - επιτρέπει αλλαγή αλλά όχι διαγραφή δεδομένων Delete επιτρέπει διαγραφή δεδομένων. Τύποι εξουσιοδότησης στο σχήμα της βάσης: Index επιτρέπει δημιουργία και διαγραφή ευρετηρίων. Resources - επιτρέπει δημιουργία νέων σχέσεων. Alteration επιτρέπει πρoσθήκη και διαγραφή στηλών από σχέση Drop επιτρέπει διαγραφή σχέσης. 4.34

35 Εξουσιοδοτήσεις στην SQL Η εντολή grant μεταφέρει την εξουσιοδότηση: grant <privilege list> on <relation name or view name> to <user list> Το <user list> είναι: ένα user-id public, που δίνει σε όλους τους χρήστες το προνόμιο της εντολής Ένας ρόλος (role) Η παροχή ενός προνομίου σε μια όψη δεν συνεπάγεται τη χορήγηση οποιωνδήποτε προνομίων στις υποκείμενες σχέσεις Ο παραχωρητής του προνομίου πρέπει να έχει ήδη το προνόμιο στο συγκεκριμένο στοιχείο (ή να είναι ο διαχειριστής της βάσης δεδομένων). 4.35

36 Προνόμια (Privileges) στην SQL select: επιτρέπει προσπέλαση για διάβασμα σε μία σχέση Παράδειγμα: δίνουμε στους χρήστες U 1, U 2, and U 3 select προνόμιο στη σχέση branch: grant select on branch to U 1, U 2, U 3 insert: Δυνατότητα για εισαγωγή εγγραφών update: Δυνατότητα για ενημέρωση χρησιμοποιώντας SQL update εντολές delete: Δυνατότητα για διαγραφή εγγραφών all privileges: Δυνατότητα όλων των επιτρεπτών προνομίων 4.36

37 Ανακαλώντας προνόμια στην SQL Η εντολή revoke χρησιμοποιείται για να ανακαλέσει προνόμια. revoke <privilege list> on <relation name or view name> from <user list> Παράδειγμα: revoke select on branch from U 1, U 2, U 3 <privilege-list> μπορεί να είναι η δεσμευμένη λέξη all. Αν το ίδιο προνόμιο έχει δοθεί εις διπλούν στον ίδιο user από διαφορετικούς grantees, ο χρήστης διατηρεί το προνόμιο μετά την ανάκληση. Όλα τα προνόμια που παράγονται από το ανακληθέν προνόμιο, ανακαλούνται και αυτά επίσης. 4.37

38 Ρόλοι create role instructor; grant instructor to Amit; Τα προνόμια μπορούν να χορηγηθούν σε ρόλους: grant select on takes to instructor; Ρόλοι χορηγούνται σε χρήστες αλλά και σε άλλους ρόλους create role teaching_assistant grant teaching_assistant to instructor; Ο ρόλος Instructor κληρονομεί όλα τα προνόμια του teaching_assistant Αλυσσίδα ρόλων create role dean; grant instructor to dean; grant dean to Satoshi; 4.38

39 Εξουσιοδοτήσεις σε Προβολές create view geo_instructor as (select * from instructor where dept_name = Geology ); grant select on geo_instructor to geo_staff Έστω ότι ένα μέλος του geo_staff τρέχει την ακόλουθη εντολή select * from geo_instructor; Τι θα συμβέι εάν Ο geo_staff δεν έχει δικαιώματα στην instructor? Ο δημιουργός της όψης δεν έιχε κάποια δικαιώματα στη σχέση instructor? 4.39

40 End of Chapter 4 Database System Concepts, 6 th Ed. See for conditions on re-use

41 Σύνδεση σχέσεων Σύνολα δεδομένων για τα παραδείγματα Σχέση loan loan-number L-170 L-230 L-260 Σχέση borrower customer-name branch-name Downtown Redwood Perryridge loan-number amount Jones Smith Hayes L-170 L-230 L-155 Σημείωση: Λείπει πληροφορία στη σχέση borrower για το L-260 και στη σχέση loan για το L-155 ΒΔ Ι : SQL 41

42 Σύνδεση σχέσεων Παραδείγματα (1) loan inner join borrower on loan.loan-number = borrower.loan-number loan-number branch-name amount customer-name loan-number L-170 Downtown 3000 Jones L-170 L-230 Redwood 4000 Smith L-230 loan left inner join borrower on loan.loan-number = borrower.loan-number loan-number branch-name amount customer-name loan-number L-170 Downtown 3000 Jones L-170 L-230 Redwood 4000 Smith L-230 L-260 Perryridge 1700 null null ΒΔ Ι : SQL 42

43 Σύνδεση σχέσεων Παραδείγματα (2) loan natural inner join borrower loan-number branch-name amount customer-name L-170 Downtown 3000 Jones L-230 Redwood 4000 Smith loan natural right outer join borrower loan-number branch-name amount customer-name L-170 Downtown 3000 Jones L-230 Redwood 4000 Smith L-155 null null Hayes ΒΔ Ι : SQL 43

44 Σύνδεση σχέσεων Παραδείγματα (3) loan full outer join borrower using (loan-number) loan-number branch-name amount customer-name L-170 Downtown 3000 Jones L-230 Redwood 4000 Smith L-260 L-155 Perryridge null 1700 null null Hayes Παράδειγμα:Βρείτε όλους τους πελάτες που είτε έχουν ένα λογαριασμό είτε έχουν πάρει ένα δάνειο (αλλά όχι και τα δυο) στην / από την τράπεζα. select customer-name from (depositor natural full outer join borrower) where account-number is null or loan-number is null ΒΔ Ι : SQL 44

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

Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων Ακεραιότητα και Ασφάλεια Μέρος 1 Σχεδιασμός Βάσεων Δεδομένων με βάση slides από A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5 th edition Περιορισμοί πεδίου τιμών Περιορισμοί ακεραιότητας

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

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

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων Η γλώσσα SQL H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων H SQL έχει διάφορα τμήματα: Γλώσσα Ορισμού Δεδομένων (ΓΟΔ) Γλώσσα Χειρισμού Δεδομένων (ΓΧΔ) Ενσωματωμένη

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

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

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα Database System Concepts, 6 th Ed. Silberschatz, Korth and Sudarshan See www.db-book.com for conditions on re-use Παράδειγμα Σχέσης attributes

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

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

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

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

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

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

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

Οψεις (VIEWS) στην SQL Η εντολή CREATE VIEW Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 55 Περιεχόμενα 1 Εισαγωγικά για τις όψεις 2 Οψεις και συζεύξεις 3 Επιπλέον χρήση των όψεων

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

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

Βάσεις Δεδομένων. Σχεσιακό Μοντέλο Δεδομένων. Βασίλειος Βεσκούκης Ορισμός Βάσης Δεδομένων Δομή Περιορισμοί Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Βάσεις Δεδομένων Βασίλειος Βεσκούκης v.vescoukis@cs.ntua.gr Βασικές πράξεις της Σχεσιακής Αλγεβρας Σχεσιακό Μοντέλο Δεδομένων Ορισμός Βάσης

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις Δεδομένων 2009-2010 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με

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

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

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

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

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

Ηλεκτρονικοί Υπολογιστές II ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II Όψεις (views) στην SQL Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

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

Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY. Η γλώσσα ορισμού δεδομένων της SQL Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 Περιεχόμενα 1 Δημιουργία πινάκων με την

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

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

Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY. Η γλώσσα ορισμού δεδομένων της SQL Οι εντολές CREATE TABLE, ALTER TABLE, CREATE KEY, ALTER KEY Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr astavrak@uoi.gr @AStavrakoudis Άνοιξη 2016 1 / 85 Περιεχόμενα

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις εδοµένων 2011-2012 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούµενα µαθήµατα: Εννοιολογικός Σχεδιασµός Βάσεων Δεδοµένων (µε

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

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

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

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

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

Εργαστήριο Βάσεων Δεδομένων. Triggers Εργαστήριο Βάσεων Δεδομένων Triggers CREATE TRIGGER Δήλωση δημιουργίας Trigger: CREATE [DEFINER = { user CURRENT_USER }] TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ηλεκτρονικοί Υπολογιστές II ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II Εντολές ορισμού δεδομένων (DDL) στην SQL Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language) Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language) Παύλος Εφραιμίδης Βάσεις Δεδομένων Η Γλώσσα SQL - Μέρος Πρώτο 1 SQL - Structured Query Language (1) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης

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

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

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

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

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

Σχεδιασμός Βάσεων Δεδομένων Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Σχεδιασμός Βάσεων Δεδομένων Εργαστήριο 4 Δρ. Βασιλική Κούφη Περιεχόμενα Υλοποίηση Βάσεως Δεδομένων Εκτέλεση ερωτημάτων SQL στην Βάση Δεδομένων BHMA 1. Σχεδιασμός

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

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

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

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

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

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

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

SQL: Συναρτήσεις Συνάθροισης

SQL: Συναρτήσεις Συνάθροισης SQL: Συναρτήσεις Συνάθροισης Συναρτήσεις Συνάθροισης (Aggregate Functions) Εφαρμόζονται πάνω σε σύνολα τιμών γνωρισμάτων. count, max, min, avg, sum Περιορισμοί: η συνάρτηση count μπορεί να εφαρμοστεί σε

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

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

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

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

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

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

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

DELETE, UPDATE, INSERT.

DELETE, UPDATE, INSERT. Ενημέρωση βάσης δεδομένων με SQL DELETE, UPDATE, INSERT Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 88 Περιεχόμενα 1 Γενικά για την αποθήκευση δεδομένων και την ενημέρωση της

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

DELETE, UPDATE, INSERT

DELETE, UPDATE, INSERT Ενημέρωση βάσης δεδομένων με SQL DELETE, UPDATE, INSERT Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr astavrak@uoi.gr @AStavrakoudis Άνοιξη 2016 1 / 103 Περιεχόμενα 1 Γενικά για την αποθήκευση

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

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

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1) Βάσεις Δεδομένων Η γλώσσα SQL Structured Query Language) Παύλος Εφραιμίδης SQL - Structured Query Language 1) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης των Σχεσιακών ΒΔ Εξασφαλίζει μεταφερσιμότητα

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

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

Η SQL αποτελείται από δύο υποσύνολα, τη DDL και τη DML. Κεφάλαιο 5 Η γλώσσα SQL 5.1 Εισαγωγή Η γλώσσα SQL (Structured Query Language) είναι η πιο διαδεδομένη διαλογική γλώσσα ερωταπαντήσεων που χρησιμοποιείται για την επικοινωνία του χρήστη με σχεσιακές ΒΔ.

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

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

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

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

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

Ενεργές ΒΔ. Παύλος Εφραιμίδης pefraimi <at> ee.duth.gr. Βάσεις Δεδομένων Ενεργές ΒΔ 1 Ενεργές ΒΔ Παύλος Εφραιμίδης pefraimi ee.duth.gr Βάσεις Δεδομένων Ενεργές ΒΔ 1 Active Databases Υποστηρίζουν την αυτόματη εκτέλεση ενεργειών όταν συμβούν συγκεκριμένα γεγονότα Ένας διαδεδομένος μηχανισμός

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

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

Τελεστής Προβολής - Παράδειγμα. Π Πόλη, Εξάμηνο (Φοιτητές) Σχεσιακή Άλγεβρα Προβολή, Επιλογή, Καρτεσιανό Γινόμενο, Ένωση, Διαφορά, Σύνθεση Τελεστών, Μετονομασία, Παραδείγματα Ερωτήσεων, Τομή Συνόλων, Φυσική Σύζευξη 1 Σχεσιακή Άλγεβρα Η σχεσιακή άλγεβρα (relational

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

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

Εργαστήριο βάσεων δεδομένων. Εισαγωγή στη MySQL (2) Εργαστήριο βάσεων δεδομένων Εισαγωγή στη MySQL (2) Παράδειγμα - ER Παράδειγμα-Σχεσιακό Παράδειγμα Δημιουργία Πινάκων CREATE TABLE student( name VARCHAR(25) DEFAULT 'unknown' NOT NULL, lastnamevarchar(25)

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

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

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL ΗΥ360 - ΑΡΧΕΙΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL ΛΙΛΙΤΣΗΣ ΠΡΟΔΡΟΜΟΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ SQL - STRUCTURED QUERY LANGUAGE 2 Μια γλώσσα επερωτήσεων για τη διαχείριση Σχεσιακών Βάσεων

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

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

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ Πίνακας Πεδίο Τύπος Κύριο κλειδί Αναφορική ακεραιότητα οντοτήτων Ξένο κλειδί Αναφορική ακεραιότητα δεδομένων Δρ. Κεραμόπουλος Ευκλείδης 2 ΚΥΡΙΟ ΚΛΕΙΔΙ ΦΟΙΤΗΤΗΣ ΑΜ CHAR(5) ΟΝΟΜΑ VARCHAR(20)

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

Σχεδιασμός Πληροφοριακών Συστημάτων. Σημειώσεις

Σχεδιασμός Πληροφοριακών Συστημάτων. Σημειώσεις Σχεδιασμός Πληροφοριακών Συστημάτων Σημειώσεις Συμπλήρωμα για τις Εκδόσεις 4 (4.1) και 4.2 των Σημειώσεων Έκδοση 19/2/2011 Μάριος Μάντακας mmantak@gmail.com Διαφορά από την προηγούμενη Έκδοση: Προσθήκη

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

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

ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL ΓΙΑΝΝΗΣ ΑΓΑΘΑΓΓΕΛΟΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΗΥ360 - ΑΡΧΕΙΑ ΚΑΙ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΦΡΟΝΤΙΣΤΗΡΙΟ ΣΤΗ ΓΛΩΣΣΑ SQL SQL SQL - STRUCTURED QUERY LANGUAGE 2 Μια γλώσσα επερωτήσεων για τη διαχείριση Σχεσιακών

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

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

Εργαστήριο βάσεων δεδομένων. Εισαγωγή στη MySQL (2) Εργαστήριο βάσεων δεδομένων Εισαγωγή στη MySQL (2) Παράδειγμα -ER Παράδειγμα-Σχεσιακό Παράδειγμα Δημιουργία Πινάκων CREATE TABLE student( name VARCHAR(25) DEFAULT 'unknown' NOT NULL, lastname VARCHAR(25)

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

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

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

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

Δυναμικός Κατακερματισμός

Δυναμικός Κατακερματισμός Δυναμικός Κατακερματισμός Καλό για βάση δεδομένων που μεγαλώνει και συρρικνώνεται σε μέγεθος Επιτρέπει τη δυναμική τροποποίηση της συνάρτησης κατακερματισμού Επεκτάσιμος κατακερματισμός μια μορφή δυναμικού

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

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

Διάλεξη 16: SQL DML IV, SQL DCL, SQL TCL. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 16: SQL DML IV, SQL DCL, SQL TCL Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Ενημέρωση Βάσης Δεδομένων (INSERT, UPDATE, DELETE) SQL DCL (GRANT, DENY, REVOKE)

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

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

Εργαστήριο Βάσεων Δεδομένων Εργαστήριο Βάσεων Δεδομένων Φροντιστήριο 3 ο (26/11/2008) Εισαγωγή στην Mysql SQL Η SQL (Structured Query Language) είναι μια πλήρης γλώσσα Βάσεων Δεδομένων. Είναι δομημένη σε βάσεις που περιέχουν πίνακες.

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

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

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

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

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

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

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

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

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

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

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

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός 7 Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός Σχεσιακή Άλγεβρα H Σχεσιακή Άλγεβρα (relational algebra) ορίζει ένα σύνολο πράξεων που εφαρμόζονται σε μία ή περισσότερες σχέσεις

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

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

Department of Computer Science University of Cyprus. EPL342 Databases. Lecture 8: RM II. Relational Model. (Chapter ) Department of Computer Science University of Cyprus EPL342 Databases Lecture 8: RM II Relational Model (Chapter 5.2-5.3) ιδάσκων: Παναγιώτης Ανδρέου http://www.cs.ucy.ac.cy/courses/epl342 8-1 Περιεχόμενο

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

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

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

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

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

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

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

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

Ηλεκτρονικοί Υπολογιστές II ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ηλεκτρονικοί Υπολογιστές II Ενημέρωση βάσης δεδομένων με τις εντολές INSERT, DELETE, UPDATE Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης Άδειες

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #6

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #6 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #6 Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Φεβρουάριος 2008 Περιεχόμενα JOIN συνέχεια

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

H Γλώσσα SQL Σχεδιασμός Βάσεων Δεδομένων

H Γλώσσα SQL Σχεδιασμός Βάσεων Δεδομένων H Γλώσσα SQL Σχεδιασμός Βάσεων Δεδομένων Πηγή διαφανειών Ε. Πιτουρά «Βάσεις Δεδομένων», A. Silberschatz, H. Korth, S. Sudarshan, Database System Concepts, 5th edition Η γλώσσα SQL SQL αποτελείται από:

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Stored procedures, Exceptions, ιακιώµατα Γιώργος Μαρκοµανώλης Περιεχόµενα Stored Procedures... 1 Exceptions... 1 Εντολή

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

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

Βάσεις Δεδομένων. Βασίλειος Βεσκούκης Εισαγωγή στη γλώσσα SQL (Structured Query Language) Η γλώσσα SQL Εθνικό Μετσόβιο ολυτεχνείο Σχολή Αγρονόμων Τοπογράφων Μηχανικών Βάσεις Δεδομένων Βασίλειος Βεσκούκης v.vescoukis@cs.ntua.gr Εισαγωγή στη γλώσσα SQL (Structured Query Language) Η γλώσσα SQL Η γλώσσα SQL

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

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

ΕΠΛ 342 Βάσεις εδοµένων ΕΠΛ 342 Βάσεις εδοµένων Εργαστήριο 3 ο SQL - DML Ιωάννα Συρίµη syrimi@ucy.ac.cy Data Manipulation Language Εισαγωγή νέων Εγγραφών Insert Into ιαγραφή Εγγραφών Delete Αλλαγή υφιστάµενων Εγγραφών Update

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

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

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

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

Ασφάλεια δεδομένων και SQL Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 Περιεχόμενα 1 Χρήστες και συνθηματικό πρόσβασης 2 Εκχώρηση και αναίρεση δικαιωμάτων 3 Κρυπτογράφηση 2 / 82

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

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

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

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

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI B. Μεγαλοοικονόμου Αντικειμενοστρεφή και αντικειμενο-σχεσιακά ΣΔΒΔ (παρουσίαση βασισμένη εν μέρη σε σημειώσεις των Silberchatz, Korth και Sudarshan και του

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

Σχεδίαση Βάσεων Δεδομένων

Σχεδίαση Βάσεων Δεδομένων Σχεδίαση Βάσεων Δεδομένων Εισαγωγή στις Έννοιες των Σχεσιακών Βάσεων Δεδομένων Introduction to Relational Database Concepts 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved. Στόχοι Το

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

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

Η SQL ως γλώσσα τροποποίησης Δεδομένων Η SQL ως γλώσσα τροποποίησης Δεδομένων Τροποποίηση Βάσης Δεδομένων: Γλώσσα Χειρισμού Δεδομένων (ΓXΔ) Τροποποιήσεις 1. Διαγραφή 2. Εισαγωγή 3. Ενημέρωση Οι εντολές αυτές ΤΡΟΠΟΠΟΙΟΥΝ το στιγμιότυπο της βάσης

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

Παράδειγμα Insert Update Delete Alter.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (2)

Παράδειγμα Insert Update Delete Alter.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (2) Εργαστήριο Βάσεων Δεδομένων Εισαγωγή στη MySQL (2) ER Σχεσιακό Create Tables 1/4 CREATE TABLE student( name VARCHAR(25) DEFAULT 'unknown' NOT NULL, lastname VARCHAR(25) DEFAULT 'unknown' NOT NULL, AM INT(5)

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

Βάσεις Δεδομένων. Ενότητα 6: Γλώσσα Structured Query Language -SQL. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

Βάσεις Δεδομένων. Ενότητα 6: Γλώσσα Structured Query Language -SQL. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών Βάσεις Δεδομένων Ενότητα 6: Γλώσσα Structured Query Language -SQL Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

Βάσεις Δεδομένων 2η εργαστηριακή άσκηση

Βάσεις Δεδομένων 2η εργαστηριακή άσκηση Βάσεις Δεδομένων 2η εργαστηριακή άσκηση Εισαγωγή στο περιβάλλον της oracle Δημιουργία πινάκων Δρ. Εύη Φαλιάγκα 1. Login Χρησιμοποιώντας έναν web explorer, μπαίνετε στο http://10.0.0.6:8080/apex και συμπληρώνετε

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

Η Γλώσσα SQL. Παράδειγμα ΒΔ (Τράπεζα)

Η Γλώσσα SQL. Παράδειγμα ΒΔ (Τράπεζα) Η Γλώσσα SQL Βασική δομή Συνήθεις τύποι ερωτημάτων Συνδέσεις (joins) Θεωρήσεις (views) και παραγόμενες σχέσεις Τροποποίηση της βάσης δεδομένων Η SQL ως γλώσσα ορισμού δεδομένων Ακεραιότητα δεδομένων Βασική

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

Θεωρία Κανονικοποίησης

Θεωρία Κανονικοποίησης Θεωρία Κανονικοποίησης Πρώτη Κανονική Μορφή (1NF) Αποσύνθεση Συναρτησιακές Εξαρτήσεις Δεύτερη (2NF) και Τρίτη Κανονική Μορφή (3NF) Boyce Codd Κανονική Μορφή (BCNF) Καθολική Διαδικασία Σχεδίασης ΒΔ Βασική

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

Φυσική Σχεδίαση Υλοποίηση βάσης

Φυσική Σχεδίαση Υλοποίηση βάσης ΕΣΔ330 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας Φυσική Σχεδίαση Υλοποίηση βάσης Περιεχόμενα Περιεχόμενα Εισαγωγή Μετασχηματισμός οντοτήτων Μετασχηματισμός συσχετίσεων Ακεραιότητα δεδομένων Παραδείγματα

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

Βάσεις Δεδομένων 5η εργαστηριακή άσκηση

Βάσεις Δεδομένων 5η εργαστηριακή άσκηση Βάσεις Δεδομένων 5η εργαστηριακή άσκηση SQL Δρ. Μαρία Ευθυμιοπούλου Εντολές sql Για να γράψετε ή να επικολλήσετε εντολές sql πηγαίνετε από το μενού SQL Workshop και επιλέγετε το SQL Commands 1. Δημιουργία

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

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

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις εδοµένων 2012-2013 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων Δεδομένων (με

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΤΡΙΤΟ Foreign key, Index, DML Ερωτήµατα Γιώργος Μαρκοµανώλης Περιεχόµενα Foreign Key... 1 Index... 4 DML Ερωτήµατα... 6 INSERT...

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

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

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

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

Υποερωτήματα στην SQL Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr 1 / 31 Η ανάγκη για υποερώτημα Ποιος υπάλληλος παίρνει το μεγαλύτερο μισθό; Αν ξέραμε το μεγαλύτερο μισθό, πχ 2000, θα γράφαμε:

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

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

Σύνολα Ασκήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σύνολα Ασκήσεων Βάσεις Δεδομένων 2018-2019 Ευαγγελία Πιτουρά 1 2 ο Σύνολο Ασκήσεων Άσκηση 3 Οι λύσεις είναι ενδεικτικές υπάρχουν και άλλες σωστές SQL ερωτήσεις για τα ερωτήματα της άσκησης. 2 (γ)(i) Τους

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

Κεφ.11: Ευρετήρια και Κατακερματισμός

Κεφ.11: Ευρετήρια και Κατακερματισμός Κεφ.11: Ευρετήρια και Κατακερματισμός Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Κεφ. 11: Ευρετήρια-Βασική θεωρία Μηχανισμοί ευρετηρίου χρησιμοποιούνται για την επιτάχυνση

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

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

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

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

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

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο SQL Examples ΙΙ Ξένου Ρουμπίνη 1 SQL(DML) - Query Example 1 Query:1 Βρείτε τα ονόματα των έργων που δεν αφορούν το τμήμα research

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

10 η Διάλεξη Python Βάσεις δεδομένων στη python

10 η Διάλεξη Python Βάσεις δεδομένων στη python 10 η Διάλεξη Python Βάσεις δεδομένων στη python ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Η standard διεπαφη της python για βάσεις δεδομένων βασίζεται στο DB-API Python Database API υποστηρίζει ένα ευρύ φάσμα βάσεων δεδομένων

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

Παράδειγμα Select Introduction Group By Join Aliases.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (3)

Παράδειγμα Select Introduction Group By Join Aliases.. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγή στη MySQL (3) Εργαστήριο Βάσεων Δεδομένων Εισαγωγή στη MySQL (3) ER Σχεσιακό Create Tables 1/4 CREATE TABLE student( name VARCHAR(25) DEFAULT 'unknown' NOT NULL, lastname VARCHAR(25) DEFAULT 'unknown' NOT NULL, AM INT(5)

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

Σχεδίαση Βάσεων Δεδομένων

Σχεδίαση Βάσεων Δεδομένων Οδηγίες Μέρος 1: Απαντήστε κάθε ερώτηση. 1. Ποια είναι τα πλεονεκτήματα που παρέχει το Περιβάλλον Βάσεων Δεδομένων της Oracle για τις επιχειρήσεις; Το σύστημα διαχείρισης βάσεων δεδομένων της Oracle δίνει

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

Η SQL ως γλώσσα ερωτημάτων. Υπενθυμίζουμε: Σχέση = Πίνακας Πλειάδα = Εγγραφή = Γραμμή (Πίνακα) Πεδίο = Γνώρισμα (Σχέσης) = Στήλη (Πίνακα)

Η SQL ως γλώσσα ερωτημάτων. Υπενθυμίζουμε: Σχέση = Πίνακας Πλειάδα = Εγγραφή = Γραμμή (Πίνακα) Πεδίο = Γνώρισμα (Σχέσης) = Στήλη (Πίνακα) Η SQL ως γλώσσα ερωτημάτων Υπενθυμίζουμε: Σχέση = Πίνακας Πλειάδα = Εγγραφή = Γραμμή (Πίνακα) Πεδίο = Γνώρισμα (Σχέσης) = Στήλη (Πίνακα) Η γλώσσα SQL Η SQL αποτελείται από: DDL (Data Definition Language)

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

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

Τμήμα Πληροφορικής ΑΠΘ Βάσεις Δεδομένων Εργαστήριο ΙΙ Τμήμα Πληροφορικής ΑΠΘ 2013-2014 2 Σκοπός του 2 ου εργαστηρίου Σκοπός αυτού του εργαστηρίου είναι: Η μελέτη ερωτημάτων σε μία μόνο σχέση. Εξετάζουμε τους τελεστές επιλογής

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

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

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

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

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

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

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

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model. SQL Μαθ. #11 ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model SQL Μαθ. #11 Ε-R Model for a COMPANY database The COMPANY relational database schema A relational database instance of the COMPANY schema SQL Μια γλώσσα σχεσιακής βάσης

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ Βάσεις Δεδομένων (4 ο εξάμηνο) Εργαστήριο MySQL #3 Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Φεβρουάριος 2008 Περιεχόμενα ξένα κλειδιά

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

Σχεσιακή Άλγεβρα Σχεδιασμός Βάσεων Δεδομένων

Σχεσιακή Άλγεβρα Σχεδιασμός Βάσεων Δεδομένων Σχεσιακή Άλγεβρα Σχεδιασμός Βάσεων Δεδομένων Μαρία Χαλκίδη Εισαγωγή Εννοιολογικός Σχεδιασμός Βάσεων Δεδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός Σχεδιασμός Βάσεων Δεδομένων (με χρήση

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος cman@unipi.gr Το ευρετήριο (index) είναι ένα αντικείμενο δεδομένων μέσα στη βάση δεδομένων που καταγράφει τις γραμμές

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