Μέρος Γ. 22C901 Βάσεις εδοµένων και Γνώσεων. 9ο Εξάµηνο Κύκλου Σπουδών ΗΥ και Μεταπτυχιακός Κύκλος Σπουδών. Ν. Αβούρης

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

Download "Μέρος Γ. 22C901 Βάσεις εδοµένων και Γνώσεων. 9ο Εξάµηνο Κύκλου Σπουδών ΗΥ και Μεταπτυχιακός Κύκλος Σπουδών. Ν. Αβούρης"

Transcript

1 22C901 Βάσεις εδοµένων και Γνώσεων 9ο Εξάµηνο Κύκλου Σπουδών ΗΥ και Μεταπτυχιακός Κύκλος Σπουδών Ν. Αβούρης Μέρος Γ Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 1

2 ιαφάνειες Γ µέρος (µαθήµατα 8-12) Σκοπός του µαθήµατος είναι η µελέτη του θεωρητικού υποβάθρου και των εργαλείων που απαιτούνται για την ανάπτυξη συστηµάτων βάσεων δεδοµένων #8 Εµφυτευµένη SQL #9 Κανονικοποίηση δεδοµένων #10 Μεγάλες βάσεις δεδοµένων κατανεµηµένες Β, #11 ασφάλεια Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 2

3 #8 Προγραµµατίζοντας µε την SQL Η SQL δεν είναι πλήρης γλώσσα προγραµµατισµού, όµως µπορεί να χρησιµοποιηθεί στα πλαίσια µιας εφαρµογής. δύο προσεγγίσεις υποστήριξης SQL από περιβάλλον προγραµµατισµού (και οι δύο διαδεδοµένες): SQL εµφυτευµένη σε µια γλώσσα προγραµµατισµού γενικού σκοπού (embedded SQL), περιλαµβάνεται στο ANSI/ISO στάνταρ µέσω κλήσεων συναρτήσεων (API), τέτοια προσέγγιση χρησιµοποιείται ιδιαίτερα τελευταία, π.χ. ODBC (ντε φακτο στάνταρ, Microsoft) και JDBC. Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 3

4 (α) Εµφυτευµένη SQL Ενσωµάτωση εντολών SQL σε ένα πρόγραµµα γλώσσας ανωτέρου επιπέδου. π.χ. C #include <sqlenv.h> EXEC SQL.( εντολή SQL ) στα πλαίσια µιας εντολής SQL µπορούν να χρησιµοποιηθούν µεταβλητές οι οποίες αρχίζουν µε ":" π.χ. EXEC SQL INSERT INTO S(S#,SNAME,CITY) VALUES(:suppno, :sname, :scity); Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 4

5 Εντολή UPDATE EXEC SQL UPDATE quotations SET price = :newprice, responsetime = :newresponse WHERE suppno = :suppno AND partno = :partno; Σηµείωση: Είναι καλή ιδέα να χρησιµοποιούµε τα ίδια ονόµατα µεταβλητών και στηλών (δεν ανήκουν στο ίδιο name space). Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 5

6 Η τιµή NULL Πρόβληµα : Πώς αναπαριστάται η τιµή NULL στο περιβάλλον του προγράµµατος; Στην DB2 κάθε µεταβλητή του φιλοξενούντος προγράµµατος :Χ συνοδεύεται από µια δεύτερη βοηθητική µεταβλητή που ονοµάζεται indicator value (ενδεικτική τιµή). Όταν αυτή έχει τιµή -1 η τιµή της µεταβλητής είναι NULL. Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 6

7 ήλωση µεταβλητών Πρέπει να δηλωθούν οι µεταβλητές που πρόκειται να χρησιµοποιηθούν. Υπάρχει αντιστοιχία µεταξύ των τύπων της C και της SQL: SQL smallint integer decimal(p,s) real double char(n) varchar(n) date time timestamp C long long δεν υπάρχει* float double char[n+1]** char[n+1]*** char[11] char[9] char[27] * µπορεί να ανταλλαγούν τιµές τύπου decimal µεταξύ ενός προγράµµατος C και SQL µε µετασχηµατισµό της σε char. **τερµατικός χαρακτήρας null. *** εναλλακτικά : struct { short length; char data[n]; } Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 7

8 Παράδειγµα δήλωσης µεταβλητών EXEC SQL BEGIN DECLARE SECTION; long qonhand, qonorder, threshold; /* Integers */ char suppno[4]; /* char(3) */ char partno[5]; /* char(4) */ char orderdate[11] /* date */ struct { short length; char data[50]; } sname, saddr; /* varchar(50) */ short indic1=0,indic2=0,indic3=0; /*indicators*/ EXEC SQL END DECLARE SECTION; Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 8

9 Κωδικός σφάλµατος Κάθε εντολή SQL επιστρέφει έναν κωδικό σφάλµατος µέσω της δοµής SQLCA η οποία δηλώνεται στο αρχείο sqlca.h Με την παρακάτω εντολή η δοµή SQLCA περιλαµβάνεται στο πρόγραµµα µας: EXEC SQL INCLUDE SQLCA; Επίσης µε την ίδια εντολή ορίζεται η συντοµογραφία SQLCODE σαν ο πιο συνηθισµένος κωδικός σφάλµατος που περιέχεται στη δοµή αυτή. Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 9

10 WHENEVER: Έλεγχος κωδικού σφάλµατος Η εντολή WHENEVER ελέγχει την τιµή του κωδικού σφάλµατος: EXEC SQL WHENEVER NOT FOUND CONTINUE SQLERROR GO TO label π.χ. SQLWARNING EXEC SQL WHENEVER SQLERROR GO TO print-message ; Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 10

11 Πρόβληµα: εµφύτευση SELECT Η εντολή SELECT είναι δύσκολο να εµφυτευτεί σε ένα περιβάλλον γλώσσας προγραµµατισµού γιατί το αποτέλεσµα µιας αναζήτησης είναι ένα σύνολο από πλειάδες Η λύση στο πρόβληµα αυτό δίδεται είτε από: εντολή SELECT ΙΝΤΟ µιας πλειάδας χρήση δροµέα:... DECLARE <δροµέα> CURSOR FOR <query> FETCH FROM <δροµέα> ΙΝΤΟ <λίστα µεταβλητών> Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 11

12 ήλωση δροµέα (cursor) Ο δροµέας είναι ένας µηχανισµός ο οποίος µας επιτρέπει την ανάκτηση δεδοµένων από µια Β σε ένα πρόγραµµα. Συγκεκριµένα µε τον µηχανισµό αυτόν προσδιορίζουµε τα δεδοµένα που επιθυµούµε να ανακτηθούν από µια Β και στη συνέχεια ο δροµέας µας επιτρέπει να πάρουµε τα δεδοµένα γραµµή-γραµµή στο πρόγραµµα µας. Ο δροµέας είναι µια µεταβλητή που σχετίζεται µε µια συγκεκριµένη αναζήτηση (SELECT). EXEC SQL DECLARE C1 CURSOR FOR SELECT partno, description, qonhand, qonorder FROM parts WHERE description LIKE '%' :userdescrip '%' FOR UPDATE OF qonhand, qonorder; Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 12

13 ροµέας : παράδειγµα EXEC SQL DECLARE X CURSOR FOR SELECT S.S#, S.SNAME, S.STATUS FROM S WHERE S.CITY = :y ; (καθαρά δηλωτική χρήση, όχι εκτέλεσης της SELECT) στη συνέχεια.. EXEC SQL OPEN X ; EXEC SQL FETCH X INTO :s#, :sname, :stat ; EXEC SQL CLOSE X;... Μεταβολή της τρέχουσας εγγραφής µε χρήση του CURRENT OF X Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 13

14 δροµέας EXEC SQL UPDATE S SET STATUS = STATUS + :raise WHERE CURRENT OF X ; EXEC SQL DELETE FROM S WHERE CURRENT OF X ; Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 14

15 παράδειγµα EXEC SQL DECLARE CP CURSOR FOR SELECT P.P#, P.PNAME, P. COLOR, P. WEIGHT, P. CITY FROM P WHERE P.P# > previous_p# Previous_P# = ' '; eof = false ; DO WHILE ( eof = false ) EXEC SQL ΟΡΕΝ CP ; DO count: = 1 to 10 ; EXEC SQL FETCH CP ΙΝΤΟ :P#, ; IF SQLSTATE = ' THEN DO ; EXEC SQL CLOSE CP ; EXEC SQL COMMIT ; eof = true ; END; ELSE print P#, ; END ; EXEC SQL DELETE FROM P WHERE P.P# = :P# ; EXEC SQL CLOSE CP ; EXEC SQL COMMIT ; Previous_P# = P# ; END ; Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 15

16 Το πρότυπο SQL/CLI ANSI/ISO IEC call level interface Το πρότυπο δηµιουργήθηκε από το SQL Access Group (SAG) Το πρότυπο ODBC δηµιουργήθηκε από την Microsoft υλοποιεί το πρότυπο στον πυρήνα του (core level του ODBC 3.0). To SQL/CLI έχει µεγάλη διάδοση, περιλαµβάνει περίπου 40 κλήσεις του API που επιτρέπουν την σύνδεση µε µία βάση δεδοµένων, εκτέλεση εντολών SQL, διαχείριση σφαλµάτων κλπ. Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 16

17 SQL/CLI : λειτουργία Το X/Open Call-Level Interface (CLI): Υποθέτει ότι οι οδηγοί βάσεων δεδοµένων δέχονται κλήσεις CLI τις οποίες µεταφράζουν στη γλώσσα δεδοµένων της Βάσης Κάθε εφαρµογή µπορεί να λειτουργήσει ως CLI server αρκεί νε έχει κατάληλους οδηγούς CLI Driver Manager - δισυνδεέται µε τους οδηγούς µέσω Service Provider Interface (SPI) Application Application ODBC Driver Manager Driver to Driver to Driver Oracle DB2 Informix ` ' ` ' ` ' V V V Oracle DB DB2 Informix DB Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 17

18 Microsoft ODBC CLI Απόλυτα συµβατό µε το πρότυπο, ώς προς τον πυρήνα Τρία επίπεδα συµβατότητας: Πυρήνας - άνοιγµα και κλείσιµο σύνδεσης µε τη Β εκτέλεση εντολών SQL, αποτέλεσµα εκτέλεσης της εντολής FETCH, COMMIT, ROLL BACK, διαχείριση σφαλµάτων Επίπεδο 1 - Υποστήριξη καταλόγων, BLOBs, and driver-specific λειτουγίες Επίπεδο 2 - Υποστήριξη δροµέα cursors Οι εφαρµογές πρέπει να ελέγξουν ποιο από τα επίπεδα αυτά υποστηρίζει ο οδηγός Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 18

19 #9 Κανονικοποίηση σχέσεων Χρειάζεται ένα µέτρο ποιότητας του σχήµατος µιας βάσης δεδοµένων, δηλαδή αν η οµαδοποίηση των γνωρισµάτων σε σχέσεις έχει γίνει κατά βέλτιστο τρόπο Η ποιότητα µπορεί να συζητηθεί είτε στο λογικό επίπεδο (βαθµός κατανόησης του σχήµατος από τους χρήστες τους), είτε στο επίπεδο διαχείρισης που αφορά στο πώς οι πλειάδες αποθηκεύονται και ενηµερώνονται Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 19

20 Κριτήρια ποιότητας Σηµασιολογιά γνωρισµάτων (όσο πιο εύκολα εξηγείται η σηµασιολογία µιας σχέσης τόσο καλύτερος θεωτείται ο σχεδιασµός) Ελάττωση πλεοναζουσών τιµών στις πλειάδες Ελάττωση τιµών NULL στις πλειάδες Απόρριψη πλασµατικών πλειάδων Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 20

21 Παράδειγµα προβληµατικής σχέσης Έστω πίνακας των σπουδαστών και καθηγητών που επιβλέπουν τις διπλωµατικές τους R1(AM_spoud,Onoma_spoud,Onoma_kath,Thl_kath) Παρατηρήστε επαναλήψεις και προβλήµατα διαγραφής/ εισαγωγής και τροποποίησης πληροφορίας AM_spoud Onoma_spoud Onoma_kath Thl_kath 1234 Ν. Ανανιάδης Νικολάου A Γ. Αδιάβαστος Γεωργίου Π Β. Αψηλός Γεωργίου Π Γ. Αδιόρθωτος Νικολάου Α Ζ. Απρόσεκτος Νικολάου Α Η. Αργυρίου Παπαδόπουλος Γ Κ. Άσηµος Γεωργίου Π Τ. Άχαρος Παπαδόπουλος Γ Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 21

22 Ανωµαλίες εισαγωγής/διαγραφής /τροποποίησης Πώς εισάγεται κάποιος που δεν έχει δηλώσει ακόµη διπλωµατική; Πώς εισάγεται καθηγητής που δεν παρακολουθεί ακόµη διπλωµατικές εργασίες Όταν διαγραφεί ο τελευταίος σπουδατής κάποιου καθηγητή χάνονται οι πληροφορίες που αφορούν τον καθηγητή (όνοµα, τηλέφωνο) Αν αλλάξει το τηλέφωνο ενός καθηγητή θα πρέπει να ενηµερωθούν πολλές εγγραφές Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 22

23 Τιµές NULL Αν υπάρχει γνώρισµα µε πολλά NULL (πχ στη σχέση R1, αρ. Κυκλοφορίας αυτοκινήτου φοιτητή και έστω ότι 90% των εγγραφών παίρνουν την τιµή ΝULL) Συνέπεια.. Σπατάλη χώρου σε επίπεδο αποθήκευσης ύσκολος χειρισµός τους από συναθροιστικές πράξεις (SUM, COUNT) Όχι σαφής σηµασιολογία, µπορεί να σηµαίνει είτε ότι η τιµή δεν έιναι γνωστή, είτε ότι η τιµή είναι γνωστή αλλά δεν έχει καταχωρηθεί, είτε ότι το γνώρισµα δεν υφίσταται για την πλειάδα Οδηγία: δηµιουργία βοηθητικής σχέσης σπουδαστήαριθµού κυκλοφορίας Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 23

24 Συναρτησιακές εξαρτήσεις γνωρισµάτων Τα γνωρίσµατα Υ είναι συναρτησιακά εξαρτώµενα από τα γνωρίσµατα Χ, όταν για κάθε τιµή των Χ η τιµή των Υ είναι µονοσήµατα ορισµένη Συµβολίζεται Χ Υ ή Χ Υ Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 24

25 Η Β παραγωγών-προιόντων SNAME S# STATUS CITY PNAME P# COLOR WEIGHT CITY S# P# QTY Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 25

26 Ορισµοί κανονικών µορφών 1η κανονική µορφή (1 st Normal Form (1NF) Μιά σχέση είναι σε πρώτη κανονική µορφή όταν όλες οι τιµές είναι ατοµικές, όλες οι τιµές κάθε στήλης είναι του ιδίου τύπου (έχουν κοινό πεδίο ορισµού), οι στήλες και οι πλειάδες είναι µη διαταγµένες και οι πλειάδες είναι διαφορετικές µεταξύ τους. (οι σχέσεις του σχεσιακού µοντέλου είναι στην 1η κανονική µορφή ) Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 26

27 2η κανονική µορφή Μια σχέση είναι στη 2η κανονική µορφή όταν όταν είναι ήδη στην 1η ΚΜ και ακόµη όλα τα πεδία που δεν ανήκουν στο πρωτεύον κλειδί είναι πλήρως συναρτησιακά εξαρτηµένα από το πρωτεύον κλειδί (αφορά σχέσεις µε σύνθετα πρωτεύοντα κλειδιά) Πρωτεύον κλειδί Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 27

28 Παράδειγµα, εξετάσετε αν η SP1 είναι σε κανονική µορφή Έστω σχέση SP1, η οποία περιέχει πληροφορίες STATUS, CITY που αφορούν τον προµηθευτή. Επίσης υποθέτουµε ότι υπάρχει συναρτησιακή εξάρτηση µεταξύ των CITY STATUS (δηλαδή οι προµηθευτές του Λονδίνου έχουν STATUS=20 κλπ.) S# STATUS CITY P# QTY S1 20 London P1 300 S1 20 London P2 200 S1 20 London P3 400 S1 20 London P4 200 S1 20 London P5 100 S1 20 London P6 100 S2 10 Paris P1 300 S2 10 Paris P2 400 S3 10 Paris P2 200 S4 20 London P2 200 S4 20 London P4 300 S4 20 London P5 400 Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 28

29 απάντηση Η σχέση είναι στην 1η κανονική µορφή αλλά όχι στην 2η κανονική µορφή (Το γνώρισµα STATUS είναι µερικά συναρτησιακά εξαρτηµένο από το πρωτεύον κλειδί) : STATUS S# P# CITY QTY Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 29

30 Κανονικοποίηση Γενικά: αν R(A,B,C,D), µε πρωτεύον κλειδί (Α,Β) και R.A R.D, η κανονικοποίηση σε 2ΚΜ απαιτεί τη δηµιουργία δύο σχέσεων R1, R2 όπου: R1(A,D), key(a) R2(A,B,C) key(a,b), foreign key (A) S# P# QTY S1 P1 300 S1 P2 200 S1 P3 400 S1 P4 200 S1 P5 100 S1 P6 100 S2 P1 300 S2 P2 400 S3 P2 200 S4 P2 200 S4 P4 300 S4 P5 400 S# STATUS CITY S1 20 London S2 10 Paris S3 10 Paris S4 20 London S4 20 London Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 30

31 3η κανονική µορφή Μια σχέση είναι στη 3η κανονική µορφή όταν όταν είναι ήδη στην 2η ΚΜ και ακόµη όλα τα πεδία που δεν ανήκουν στο πρωτεύον κλειδί δεν έχουν µεταβατική εξάρτηση από το πρωτεύον κλειδί Πρωτεύον κλειδί Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 31

32 άσκηση Να ελέγξετε αν η σχέση είναι σε κανονική µορφή και να κάνετε τις απαραίτητες κανονικοποιήσεις S# STATUS CITY S1 20 London S2 10 Paris S3 10 Paris S4 20 London S4 20 London Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 32

33 Απάντηση Η σχέση δεν είναι στην 3η ΚΜ αφού υπάρχει έµµεση συναρτησιακή εξάρτηση µεταξύ του STATUS και του πρωτεύοντος κλειδιού (S#). S# STATUS CITY Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 33

34 κανονικοποίηση Γενικά αν R(A,B,C) key(a) και R.B R.C Τότε η κανονικοποιήση της σχέσης R στην 3η ΚΜ απαιτεί τον µετασχηµατισµό της R σε R1, R2 όπου: R1(B,C) key (B) R2(A,B) key (A), foreign key (B) S# CITY S1 London S2 Paris S3 Paris S4 London S5 Athens CITY STATUS London 20 Paris 10 Athens 30 Rome 50 Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 34

35 Άσκηση Να περιγραφούν οι συναρτησιακές εξαρτήσεις των πεδίων του πίνακα Σε ποιά κανονική µορφή βρίσκεται ο πίνακας Να κανονικοποιηθεί ο πίνακας ERGO_KODIKOS ONOMA_YPAL MISTHOS_YPAL 100A Νικολάου 20, A Γεωργίου 28, B Γεωργίου 28, A Νικολάου 20, B Νικολάου 20, C Παπαδόπουλος 18, C Γεωργίου 28, D Παπαδόπουλος 18,100 Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 35

36 #10 ιαχείριση πολλαπλών χρηστών οσοληψία (Τransaction): µια λογική ενότητα εργασίας, όχι όµως απαραίτητα µια µόνο εντολή στην Β. Σε µεγάλες Β πρέπει να υποστηρίζεται η έννοια της δοσοληψίας και της επεξεργασίας δοσοληψιών (transaction processing). Οι δυο λειτουργίες / εντολές που πρέπει να υπάρχουν είναι οι : COMMIT TRANSACTION (εκτέλεση δοσοληψίας) ROLLBACK TRANSACTION (αναίρεση δοσοληψίας) Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 36

37 Βασικές Ιδιότητες δοσοληψιών ACID (Atomicity- Consistency- Isolation- Durability) Ατοµικότητα : εν µπορεί να εκτελεστεί ένα τµήµα µόνο της δοσοληψίας (ή όλη ή τίποτα) Συνέπεια- ακεραιότητα : Η ακεραιότητα της Β διατηρείται µεταξύ δυο δοσοληψιών. Απόζευξη δοσοληψιών: Οι δοσοληψίες είναι πλήρως αποζευγµένες µεταξύ τους. ιάρκεια : Όταν ολοκληρωθεί µια δοσοληψία η ισχύς της είναι διαρκής. Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 37

38 Ανάκτηση συστήµατος Σφάλµατα συστήµατος (π.χ. διακοπή ρεύµατος) ή σφάλµατα µαγνητικών δίσκων (π.χ προσγείωση κεφαλής του συστήµατος δίσκων) Μετά από ένα τέτοιο σφάλµα, το σύστηµα σύµφωνα µε τα στοιχεία που έχει κρατήσει πρέπει να είναι σε θέση να ανακαλέσει τις µη ολοκληρωθείσες δοσοληψίες και να επανεκτελέσει τις δοσοληψίες που χάθηκαν. Σηµεία Ελέγχου (Checkpoints). Σηµεία στα οποία τα περιεχόµενα των ενδιαµέσων µνηµών (buffers) καταχωρούνται στη φυσική βάση δεδοµένων και το συµβάν καταγράφεται στο αρχείο συµβάντων (log file). Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 38

39 Περιπτώσεις δοσοληψιών (t c checkpoint, t f failure σφάλµα) t c t f Τ1 Τ2 Τ3 Τ4 Τ5 Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 39

40 Αλγόριθµος ανάκαµψης συστήµατος ηµιούργησε δύο λίστες δοσοληψιών (UNDO= όλες οι διεργασίες στο σηµείο ελέγχου και REDO= ) Να ελέγξεις το logfile από το σηµείο ελέγχου Όταν βρείς BEGIN TRANSACTION για Τ βάλε την Τ στην λίστα UNDO Άν βρείς COMMIT για Τ, να µεταφέρεις την Τ από την λίστα UNDO στη λίστα REDO Όταν φτάσεις στο τέλος του logfile να ξαναεπαναλάβεις τις διεργασίες που βρίσκονται στην λίστα REDO και να αναιρέσεις τις διεργασίες της λίστας UNDO ακολουθώντας αντίστροφα το logfile. Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 40

41 Two phase commit (επικύρωση δοσοληψίας σε δυο φάσεις) Ο µηχανισµός commit/rollback εκτελείται σε δύο φάσεις σε περιπτώσεις κατανεµηµένων συστηµάτων πολλαπλών βάσεων δεδοµένων. Φ1. Ολες οι βάσεις δεδοµένων αποθηκεύουν σε µόνιµο µέσο το logfile και στέλνουν ΟΚ στον συντονιστή Φ2. Αν όλες οι απαντήσεις είναι ΟΚ η εντολή είναι COMMIT στο log του συντονιστή, ενώ άν έστω µία είναι NOT OK τότε ROLLBACK. Αν το σύστηµα αστοχήσει κατά τη διαδικασία, ελέγχεται το Log του συντονιστή Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 41

42 Σύγχρονη επεξεργασία δοσοληψιών Χρειάζονται µηχανισµοί για την αποφυγή ανεπιθύµητων παρεµβολών µεταξύ δοσοληψιών που λαµβάνουν χώρα συγχρόνως. Πιθανά προβλήµατα: απώλεια ενηµέρωσης εξάρτηση από µη επικυρωµένη δοσοληψία ανάλυση ασύµβατης πληροφορίας Έλεγχος σύγχρονης λειτουργίας : ΚΛΕΙ ΩΜΑ S-LOCK (shared lock) κλείδωµα για ανάγνωση X-LOCK (exclusive lock) κλείδωµα για ενηµέρωση Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 42

43 1. Αδιέξοδο λόγω αµοιβαίου κλειδώµατος TRANSACTION A Retieve p1 Acquire S-Lock Retrive p2 Request S-Lock Wait Wait Wait t1 t2 t3 t4 TRANSACTION B Retieve p2 Acquire S-Lock Retrive p1 Request S-Lock Wait Wait Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 43

44 Άρση αδιεξόδου Επιλογή µιας δοσοληψίας-θύµατος και ανάκληση της (rollback) Πρωτόκολλο κλειδώµατος: S-LOCK για όλα τα RETRIEVE X-LOCK για όλα τα UPDATE ιατήρηση του LOCK µέχρι τέλους της δοσοληψίας Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 44

45 2. Απώλεια ενηµέρωσης TRANSACTION A Retrieve P t1 t2 TRANSACTION B Retrieve P Update P t3 t4 Update P Η ενηµέρωση της δοσοληψίας Α χάνεται Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 45

46 3. Εξάρτηση από µια µηεπικυρωµένη δοσοληψία TRANSACTION A Retrieve P t1 t2 TRANSACTION B Update P t3 ROLLBACK Η δοσοληψίας Α χρησιµοποιεί µια τιµή της P που δεν έχει επικυρωθεί. Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 46

47 Isolation: SQL support SET TRANSACTION { access mode, isolation level} ACCESS MODE = READ ONLΥ READ WRITE (default) ISOLATION LEVEL = READ UNCOMMITTED READ COMMITTED REPEATABLE READ SERIALIZABLE (default) Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 47

48 Παράδειγµα isolation level (a) Dirty read (επιτρέπεται ανάγνωση τροποποιηµένων δεδοµένων) SET TRANSACTION READ WRITE ISOLATION LEVEL READ UNCOMMITTED (b) Επιτρέπονται πολλαπλές ερωτήσεις στα πλαίσια µιας δοσοληψίας, όχι όµως ανάγνωση µηέγκυροποιηµένων δεδοµένων SET TRANSACTION READ WRITE ISOLATION LEVEL READ COMMITTED Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 48

49 Παράδειγµα isolation level (2) (c) Γίνεται µια ανάγνωση δεδοµένων τα οποία χρησιµοποιούνται σε επόµενες ερωτήσεις στα πλαίσια της δοσοληψίας SET TRANSACTION READ WRITE ISOLATION LEVEL REPEATABLE READ Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 49

50 #11 Ασφάλεια δεδοµένων Αφορά την εξασφάλιση και προστασία των δεδοµένων από χρήστες που χωρίς να έχουν το δικαίωµα προσπαθούν να έχουν πρόσβαση σε αυτά, να τα µεταβάλλουν ή να τα καταστρέψουν ύο µορφές ελέγχου: Προεραιτικός έλεγχος Υποχρεωτικός έλεγχος Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 50

51 1. Προεραιτικός έλεγχος Ευέλικτος έλεγχος, η πιο συνήθης περίπτωση Παράδειγµα CREATE SECURITY RULE SR3 GRANT RETRIEVE(S#,SNAME, CITY), DELETE ON S WHERE S.CITY <> LONDON TO JIM, FRED, GIORGOS ON ATTEMPTED VIOLATION REJECT Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 51

52 GRANT GRANT { RETRIEVE INSERT UPDATE DELETE ALL } Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 52

53 παράδειγµα CREATE SECURITY RULE ΕΧ1 GRANT RETRIEVE(S#,SNAME), ON S WHERE S.STATUS > 50 TO KOSTAS; Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 53

54 Παράδειγµα 2 Έστω ότι επιθυµούµε να παρέχεται πρόσβαση µόνο σε στατιστική πληροφορία στον NIKOS CREATE VIEW SSQ AS (S.S#,SUM (SP WHERE SP.S#=S.S#, QTY) AS SQ); CREATE SECURITY RULE ΕΧ2 GRANT RETRIEVE ON SSQ TO NIKOS; Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 54

55 Έλεγχος συνθηκών πρόσβασης CREATE SECURITY RULE ΕΧ3 GRANT RETRIEVE, UPDATE (STATUS) ON S WHERE DAY() IN ( DE, TR, TE, PE, PA ) AND TIME() >= 7.30 am AND TIME() < 3.30 pm TO AGORES Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 55

56 SQL: Εντολή GRANT GRANT δικαιώµατα ON αντικείµενο ΤΟ χρήστες [ PUBLIC] ON ATTEMPTED VIOLATION ικαιώµατα= USAGE, SELECT, INSERT, UPDATE, DELETE, REFERENCES Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 56

57 2. Υποχρεωτικός έλεγχος Β µε στατική δοµή ασφαλείας (π.χ. top secret, secret, confidential) Κάθε χρήστης έχει δικαιώµατα ασφαλείας (π.χ. top secret > secret > confidential) Κανόνες ασφαλείας: Χρήστης Ι µπορεί να δει το αντικείµενο J µόνο αν το επίπεδο ασφαλείας του J είναι <= των δικαιωµάτων ασφαλείας του Ι Ν. Αβούρης- Βάσεις εδοµένων και Γνώσεων 57

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#5. Σχεσιακό Μοντέλο 22Γ901 Βάσεις Δεδομένων και Γνώσεων 9ο Εξάμηνο Κύκλου Σπουδών ΗΥ και Μεταπτυχιακός Κύκλος Σπουδών Διδάσκων: Ν. Αβούρης Β μέρος Διαφανειών μαθήματος (2005-2006) Ν. Αβούρης- Βάσεις Δεδομένων και Γνώσεων

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

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Βάσεις Δεδομένων Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Βάσεις Δεδομένων», 2015-2016 Κεφάλαιο 7: Transactions (Συναλλαγές) Ο λόγος που αναπτύχθηκαν

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Το εσωτερικό ενός Σ Β

Το εσωτερικό ενός Σ Β Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήµατος Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασµός) Προγραµµατισµός (Σχεσιακή Άλγεβρα, SQL) ηµιουργία/κατασκευή Εισαγωγή εδοµένων

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

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε Επιθυµητές Ιδιότητες µιας οσοληψίας Τεχνικές Ανάκαµψης Ιδιότητες οσοληψιών Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε καµία Consistency (συνέπεια) - διατήρηση συνέπειας της Β Isolation (αποµόνωση)

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

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων Βάσεις εδοµένων 2003-2004 Ευαγγελία Πιτουρά 1 ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήµατος Επεξεργασία Ερωτήσεων Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασµός) Προγραµµατισµός (Σχεσιακή Άλγεβρα, SQL)

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

MySQL stored procedures

MySQL stored procedures MySQL stored procedures Δημήτρης Σουραβλιάς Δομή παρουσίασης Εισαγωγή Δημιουργία μιας απλής stored procedure Μεταβλητές Παράμετροι Ροή ελέγχου Cursors 2 Εισαγωγή Μια stored procedure: είναι ένα τμήμα προγράμματος

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

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

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

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

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Επεξεργασία οσοληψιών. το πώς βλέπει το Σ Β τα προγράµµατα των χρηστών. οσοληψία (transaction)

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Επεξεργασία οσοληψιών. το πώς βλέπει το Σ Β τα προγράµµατα των χρηστών. οσοληψία (transaction) Ύλη Ύλη Έννοιες Επεξεργασίας οσοληψιών Τεχνικές Ελέγχου Συνδροµικότητας ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ Τεχνικές Ανάκαµψεις από Σφάλµατα Κατανεµηµένες και Παράλληλες Βάσεις εδοµένων Βάσεις εδοµένων και ιαδίκτυο Βάσεις

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

Επεξεργασία οσοληψιών

Επεξεργασία οσοληψιών οσοληψίες Επεξεργασία οσοληψιών Ηταυτόχρονη εκτέλεση προγραµµάτων χρηστών είναι απαραίτητη για την καλή απόδοση ενός Σ Β Επειδή οι προσπελάσεις στο δίσκο είναι συχνές και σχετικά αργές, είναι σηµαντικό

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

Βάσεις Δεδομένων ΙΙ. Διάλεξη 3 η Tεχνικές Aνάκαμψης. Ιδιότητες Δοσοληψιών

Βάσεις Δεδομένων ΙΙ. Διάλεξη 3 η Tεχνικές Aνάκαμψης. Ιδιότητες Δοσοληψιών Βάσεις Δεδομένων ΙΙ Διάλεξη 3 η Tεχνικές Aνάκαμψης Δ. Χριστοδουλάκης - Α. Φωκά Τμήμα Μηχανικών Η/Υ & Πληροφορικής - Εαρινό Εξάμηνο 2007 Επιθυμητές Ιδιότητες μιας Δοσοληψίας Ιδιότητες Δοσοληψιών Αtomicity

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

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

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

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

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε

Τεχνικές Ανάκαµψης. Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε Επιθυµητές Ιδιότητες µιας οσοληψίας Τεχνικές Ανάκαµψης Ιδιότητες οσοληψιών Αtomicity (ατοµικότητα) - είτε όλες οι πράξεις είτε καµία Consistency (συνέπεια) - διατήρηση συνέπειας της Β Isolation (αποµόνωση)

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

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

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

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

ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε:

ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε: ΙΑΧΕΙΡΙΣΗ ΟΣΟΛΗΨΙΩΝ Να θυµηθούµε: Μια βάση δεδοµένων είναι σε συνεπή κατάσταση (consistent state) εάν όλοι οι περιορισµοί ακεραιότητας που έχουν δηλωθεί για αυτήν πληρούνται. Οι αλλαγές στην κατάσταση

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

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

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

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

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

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

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

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

Εξεταστική Περίοδος Ιουνίου 2004 Aρχεία και Βάσεις εδοµένων Εξεταστική Περίοδος Ιουνίου 2004 ιαβάστε προσεκτικά όλες τις οδηγίες, τις εκφωνήσεις των ερωτηµάτων και τις όποιες οδηγίες υπάρχουν σε κάθε ερώτηµα. Η εξέταση πραγµατοποιείται

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

Πληροφοριακά Συστήματα Διοίκησης

Πληροφοριακά Συστήματα Διοίκησης Πληροφοριακά Συστήματα Διοίκησης Βάσεις Δεδομένων ΠΜΣ Λογιστική Χρηματοοικονομική και Διοικητική Επιστήμη ΤΕΙ Ηπείρου @ 2017 Βάσεις Δεδομένων (ΒΔ) Βάση δεδομένων (database) είναι μια οργανωμένη συλλογή

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

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΣΔΒΔ Σύνολο από προγράµµατα για τη διαχείριση της ΒΔ Αρχεία ευρετηρίου Κατάλογος ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Αρχεία δεδοµένων συστήµατος Σύστηµα Βάσεων Δεδοµένων (ΣΒΔ)

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

Διάλεξη 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)

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

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

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

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

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

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

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

Επεξεργασία οσοληψιών (συνέχεια)

Επεξεργασία οσοληψιών (συνέχεια) Επανάληψη: οσοληψίες Επεξεργασία οσοληψιών (συνέχεια) Πρόβληµα «Σωστή» εκτέλεση προγραµµάτων όταν επιτρέπουµε ταυτοχρονισµό και ακόµα και αν υπάρχουν αποτυχίες 1 2 οσοληψία (transaction) Επανάληψη: οσοληψίες

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

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

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

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

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

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

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

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων Εισαγωγή Επεξεργασία Ερωτήσεων Σ Β Βάση εδομένων Η ομή ενός ΣΒ Βάσεις Δεδομένων 2006-2007 Ευαγγελία Πιτουρά 1 Βάσεις Δεδομένων 2006-2007 Ευαγγελία Πιτουρά 2 Εισαγωγή Εισαγωγή ΜΕΡΟΣ 1 (Χρήση Σ Β ) Γενική

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

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

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

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

Εργαστήριο βάσεων δεδομένων. MySQL Stored Procedures

Εργαστήριο βάσεων δεδομένων. MySQL Stored Procedures Εργαστήριο βάσεων δεδομένων MySQL Stored Procedures Stored Procedures Μια store procedure είναι μια διαδικασία. Είναι ένα πρόγραμμα που αποτελείται από SQL εντολές. Αποθηκεύεται και εκτελείται στον database

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

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Σχετικά µε το µάθηµα: Αξιολόγηση. Σχετικά µε το µάθηµα:faq ΟΧΙ ΝΑΙ. Λιγότερος! (ας πούµε το 1/3-1/4)

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Σχετικά µε το µάθηµα: Αξιολόγηση. Σχετικά µε το µάθηµα:faq ΟΧΙ ΝΑΙ. Λιγότερος! (ας πούµε το 1/3-1/4) ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ Κάποιες γενικές πληροφορίες συνοπτικά... Βάσεις εδοµένων II 2004-2005 Ευαγγελία Πιτουρά 1 Βάσεις εδοµένων II 2004-2005 Ευαγγελία Πιτουρά 2 Σχετικά µε το µάθηµα: Ύλη Σχετικά µε το µάθηµα:

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

DELETE, UPDATE, INSERT.

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

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

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

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

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

Προχωρημένα Θέματα Βάσεων Δεδομένων

Προχωρημένα Θέματα Βάσεων Δεδομένων Προχωρημένα Θέματα Βάσεων Δεδομένων 1ο Σετ Ασκήσεων ΕΡΩΤΗΜΑ 1 Ατομικότητα : Η ατομικότητα πρακτικά εξασφαλίζει ότι είτε όλες οι πράξεις μιας δοσοληψίας θα εκτελεστούν ή καμμιά από αυτές δεν θα εκτελεστεί.

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

DELETE, UPDATE, INSERT

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

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

Επισκόπηση Μαθήµατος

Επισκόπηση Μαθήµατος Βάσεις εδοµένων 5 ο Εξάµηνο ηµήτρης Λέκκας Επίκουρος Καθηγητής dlekkas@env.aegean.gr Τµήµα Στατιστικής & Αναλογιστικών-Χρηµατοοικονοµικών Μαθηµατικών Επισκόπηση Μαθήµατος Εισαγωγή (Σ Β ) Το µοντέλο σχέσεων

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

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ (ΓΡΕΒΕΝΑ)

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ (ΓΡΕΒΕΝΑ) [Ημερομηνία] ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΤΗΝ TRANSACT-SQL ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ (ΓΡΕΒΕΝΑ) ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙΙ Υπεύθυνος: Καρβούνης Χ. Ευάγγελος Η Transact-SQL (T-SQL) είναι ή υλοποίηση της γλώσσας ερωταπαντήσεων

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

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

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

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

Αρχεία Ένα αρχείο αποτελείται από μία σειρά ομοειδών δεδομένων που ονομάζονται λογικές εγγραφές (logical record)

Αρχεία Ένα αρχείο αποτελείται από μία σειρά ομοειδών δεδομένων που ονομάζονται λογικές εγγραφές (logical record) Διαχείριση Αρχείων Αρχεία Για να είναι δυνατή η επεξεργασία μεγάλου αριθμού δεδομένων τα δεδομένα είναι αποθηκευμένα σε ψηφιακά μέσα κατάλληλα οργανωμένα. Η αποθήκευση γίνεται σε αρχεία. Πολλά προγράμματα

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

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

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

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

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων Εισαγωγή Επεξεργασία Ερωτήσεων ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήματος 1. Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασμός) 2. Προγραμματισμός (Σχεσιακή Άλγεβρα, SQL) ημιουργία/κατασκευή Εισαγωγή εδομένων

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

Κεφάλαιο 13 Δοσοληψίες

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

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

Κανονικοποίηση. Άτυπες Οδηγίες. Παράδειγµα. Αξιολόγηση Σχεσιακών Σχηµάτων Β. Περιττές Τιµές και Ανωµαλίες Ενηµέρωσης

Κανονικοποίηση. Άτυπες Οδηγίες. Παράδειγµα. Αξιολόγηση Σχεσιακών Σχηµάτων Β. Περιττές Τιµές και Ανωµαλίες Ενηµέρωσης Αξιολόγηση Σχεσιακών Σχηµάτων Β Κανονικοποίηση Παύλος Εφραιµίδης Βάσεις εδοµένων Κανονικοποίηση 1 Πως µπορούµε να κρίνουµε εάν ένα Σχεσιακό Σχήµα είναι καλό ή αποδοτικό ή αν έχει λάθη; Σε γενικές γραµµές

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

Εργαστήριο Βάσεων Δεδομένων. 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

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

PL/SQL. Κώστας Στεφανίδης

PL/SQL. Κώστας Στεφανίδης PL/SQL Κώστας Στεφανίδης Βασική ομή DECLARE /* Μεταβλητές και τύποι */ BEGIN /* ιαδικασίες και εντολές PL/SQL*/ /* Είναι το μόνο τμήμα που απαιτείται */ EXCEPTION /* Εντολές χειρισμού λαθών */ END; Βασική

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

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

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

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

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

2 ο Σύνολο Ασκήσεων. Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 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 Μια γλώσσα σχεσιακής βάσης

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

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

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

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

Οι εντολές 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 Δημιουργία πινάκων με την

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

Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη

Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη Ευρετήρια 1 Αρχεία Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη µνήµη. Η µεταφορά δεδοµένων από το δίσκο στη µνήµη και από τη

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

Postgress ΣΤΟΧΟΣ ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ. ΠΕΡΙΒΑΛΛΟΝ ΓΙΑ ΕΞΑΣΚΗΣΗ pgadmin ΥΠΟΒΑΘΡΟ. Συναρτήσεις στην PostgreSQL. 1. Γενικά

Postgress ΣΤΟΧΟΣ ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ. ΠΕΡΙΒΑΛΛΟΝ ΓΙΑ ΕΞΑΣΚΗΣΗ pgadmin ΥΠΟΒΑΘΡΟ. Συναρτήσεις στην PostgreSQL. 1. Γενικά ΣΤΟΧΟΣ Postgress Το 9ο εργαστήριο εισάγει τον/ην φοιτητή/τρια στη χρήση και προγραµµατισµό συναρτήσεων στην PostgreSQL. ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ Η σχετική ύλη του βιβλίου του µαθήµατος (διαφάνειες και

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

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

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

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

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

. Εργαστήριο Βάσεων Δεδομένων. Stored Procedures Εργαστήριο Βάσεων Δεδομένων Stored Procedures Αρχιτεκτονική επικοινωνίας με τη βάση δεδομένων Μια βάση χρησιμοποιείται μέσω του client-server μοντέλου Τα δεδομένα είναι αποθηκευμένα στον DB Server Οι clients

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

Certified Data Base Designer (CDBD)

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

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

Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα

Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα Εισαγωγή 1 Ζήτω οι Βάσεις εδοµένων!! Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα Μοντελοποίηση Αποθήκευση Επεξεργασία (εύρεση πληροφορίας σχετικής µε µια συγκεκριµένη ερώτηση) Σωστή Λειτουργία

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

Λογικός Σχεδιασµός Σχεσιακών Σχηµάτων: Αποσύνθεση. Βάσεις εδοµένων Ευαγγελία Πιτουρά 1

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

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

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

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

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

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

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

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

Query-by-Example (QBE)

Query-by-Example (QBE) Φροντιστήριο 8 o Χειµερινό Εξάµηνο 2009-10 Τµήµα Μηχανικών Η/Υ και Πληροφορικής Πολυτεχνική Σχολή, Πανεπιστήµιο Πατρών Πέµπτη, 3 εκεµβρίου 2009 Τι είναι η QBE; Γλώσσα επερωτήσεων σε σχεσιακές ϐάσεις δεδοµένων

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

Οι εντολές 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 Περιεχόμενα

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

Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών. ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης

Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών. ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Ονοµατεπώνυµο: Αριθµός Μητρώου: Τελική Εξέταση (3 ώρες) Ηµεροµηνία: 7

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

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

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

ΕΝΑΥΣΜΑΤΑ ΣΤΗΝ POSTGRES

ΕΝΑΥΣΜΑΤΑ ΣΤΗΝ POSTGRES ΕΝΑΥΣΜΑΤΑΣΤΗΝPOSTGRES ΓΕΝΙΚΑ Μία διαδικασία την οποία δηλώνει ο Διαχειριστής της Βάσης Δεδομένων και η οποία ενεργοποιείται αυτόματα από το ΣΔΒΔ κάθε φορά που συμβαίνουν μεταβολές ορισμένου τύπουσταδεδομέναονομάζεταιέναυσμα(trigger).

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

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

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

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

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΑ ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΙΣΑΓΩΓΗ ΣΤΑ ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ 1 Περιγραφή των Δεδομένων: Τα μοντέλα ενός ΣΔΒΔ Ένα μοντέλο δεδομένων είναι μια συλλογή από έννοιες που χρησιμοποιούνται για την περιγραφή δεδομένων

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Views, Triggers Γιώργος Μαρκοµανώλης Περιεχόµενα Όψη... 1 ηµιουργία όψης... 2 Επιλογή CHECK... 3 Όψεις µόνο για εµφάνιση

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

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

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

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

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

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

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

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων Εισαγωγή Σ Β Σύνολο από προγράμματα για τη διαχείριση της Β Επεξεργασία Ερωτήσεων Αρχεία ευρετηρίου Κατάλογος συστήματος Αρχεία δεδομένων ΒΑΣΗ Ε ΟΜΕΝΩΝ Σύστημα Βάσεων εδομένων (ΣΒ ) Βάσεις Δεδομένων 2007-2008

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΦΘΙΝΟΠΩΡΟ 2007 Λύση ΑΣΚΗΣΗΣ #2 Τ. Σελλής

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

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

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

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

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

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα Βάσεις

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

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

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

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

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ( Απαντήσεις & Λύσεις Βιβλίου) 1. Σκοποί κεφαλαίου Κύκλος ανάπτυξης προγράµµατος Κατηγορίες γλωσσών προγραµµατισµού

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

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

( Boats)) ( Tempsids, bid. sname. Boats. Boats. Boats. (Reserves)/ > Reserves. Interlake' Sailors) ... sname rating age Dustin 7 45.0 29 Brutus 1 33.0 Lubber 8 55.5 32 Andy 8 25.5 58 Rusty 10 35.0 64 Horatio 7 35.0 71 Zorba 10 16.0 74 Horatio 9 35.0 85 Art 3 25.5 95 Bob 3 63.5 day 101 10/10/98 102 10/10/98

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

Βάσεις Δεδομένων ΙΙ. Διάλεξη 1 η Επεξεργασία Δοσοληψιών. Σύστημα Επεξεργασίας Δοσοληψιών

Βάσεις Δεδομένων ΙΙ. Διάλεξη 1 η Επεξεργασία Δοσοληψιών. Σύστημα Επεξεργασίας Δοσοληψιών Βάσεις Δεδομένων ΙΙ Διάλεξη 1 η Επεξεργασία Δοσοληψιών Δ. Χριστοδουλάκης - Α. Φωκά Τμήμα Μηχανικών Η/Υ & Πληροφορικής - Εαρινό Εξάμηνο 2007 Ορισμός Προβλήματος Σύστημα Επεξεργασίας Δοσοληψιών Συστήματα

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

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

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

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

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

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

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010

Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010 Πληροφορική & Τηλεπικοινωνίες K18 - Υλοποίηση Συστηµάτων Βάσεων εδοµένων Εαρινό Εξάµηνο 2009 2010 Καθηγητής. Γουνόπουλος Άσκηση 1 Σκοπός της εργασίας αυτής είναι η κατανόηση της εσωτερικής λειτουργίας

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

Κανονικές Μορφές 8ο Φροντιστήριο. Βάρσος Κωνσταντίνος

Κανονικές Μορφές 8ο Φροντιστήριο. Βάρσος Κωνσταντίνος ΗΥ-360 Αρχεια και Βασεις εδοµενων, Τµηµα Επιστηµης Υπολογιστων, Πανεπιστηµιο Κρητης Κανονικές Μορφές Βάρσος Κωνσταντίνος 30 Νοεµβρίου 2017 Κανονικοποίηση Ορισµός 1. Κανονικοποίηση είναι µια διαδικασία

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

Επανάκτηση δεδομένων. (εμπλουτισμένο υλικό)

Επανάκτηση δεδομένων. (εμπλουτισμένο υλικό) Επανάκτηση δεδομένων (εμπλουτισμένο υλικό) http://delab.csd.auth.gr/courses/c_dbimpl/ Ευχαριστίες Μέρος του υλικού είναι βασισμένο στο βιβλίο Database Systems: The Complete Book 2 Επανάκτηση ηδεδομένων

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

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων: ημήτρης Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Αυγουστάκη Αργυρώ Συναλλαγές Κράτησε για τον κ. Χ την θέση 13Α για LA! Κράτησε για τον κ. Y την θέση 13Α για

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

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης

ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης Συναλλαγές ιαχείριση Συναλλαγών Τζικούλης Βασίλειος Credits:Γιάννης Μακρυδάκης Συναλλαγές Η ταυτόχρονες συναλλαγές (δοσοληψίες, transactions) µε µια

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

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

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

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

Αποθηκευμένες Διαδικασίες 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) Τμήματα κώδικα τα

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

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

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

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

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

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

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