Βαςεις δεδομενων 1. Δρ. Aλεξανδροσ Βακαλουδθσ

Σχετικά έγγραφα
Βαςεις δεδομενων 1. Δρ. Aλεξανδροσ Βακαλουδθσ

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

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

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΣΗ ΝΟΗΛΕΤΣΙΚΗ. Φιλιοποφλου Ειρινθ

Βάρειπ Δεδξμέμωμ. Επγαστήπιο ΙΙ. Τμήμα Πλεπουοπικήρ ΑΠΘ

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

Βάςεισ Δεδομζνων Λ. Ενότθτα 8: SQL Γλώςςα χειριςμοφ δεδομζνων. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικών Πλθροφορικισ ΣΕ

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

Δείκτεσ Διαχείριςθ Μνιμθσ. Βαγγζλθσ Οικονόμου Διάλεξθ 8

Ειδικά Θζματα Βάςεων Δεδομζνων

Βαςεις δεδομενων 1. Δρ. Αλζξανδροσ Βακαλουδθσ

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

ΕΝΟΤΗΤΑ 2: ΤΟ ΛΟΓΙΣΜΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Γνωριμία με το λογιςμικό του υπολογιςτι

ΕΦΑΡΜΟΓΕ ΒΑΕΩΝ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΔΙΑΔΙΚΣΤΟΤ. Φιλιοποφλου Ειρινθ

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

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

Ιςοηυγιςμζνα δζντρα και Β- δζντρα. Δομζσ Δεδομζνων

ΕΝΟΣΗΣΑ 1: ΓΝΩΡIΖΩ ΣΟΝ ΤΠΟΛΟΓΙΣΗ. ΚΕΦΑΛΑΙΟ 2: Σο Τλικό του Τπολογιςτι

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΓΑΣΤΗΙΟ 3

ΟΝΟΜΑΣΟΛΟΓΙΑ ΠΑΡΑΜΕΣΡΩΝ ΓΙΑ ΠΡΟΑΡΜΟΜΕΝΕ ΑΝΑΦΟΡΕ. παραμζτρου> (Εμφανίηεται ςαν Caption ςτθν φόρμα των φίλτρων).

Βάςεισ Δεδομζνων Ι. Ενότθτα 11: SQL-Ερωτιματα Ομαδοποίθςθσ με υνζνωςθ Πινάκων. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικϊν Πλθροφορικισ ΣΕ

ΕΝΟΤΗΤΑ 2: ΕΠΙΚΟΙΝΩΝΩ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ. ΚΕΦΑΛΑΙΟ 5: Αρχεία - Φάκελοι

Βάςεισ Δεδομζνων Ι. Ενότητα 12: Κανονικοποίηςη. Δρ. Τςιμπίρθσ Αλκιβιάδθσ Τμιμα Μθχανικών Πλθροφορικισ ΤΕ

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

Ηλεκτρονικι Επιχειρθςιακι Δράςθ Εργαςτιριο 1

Α) Ενδεικτικϋσ απαντόςεισ των θεμϊτων

Ανάπτυξη Εφαρμογών με Σχεςιακέσ Βάςεισ Δεδομένων

17. Πολυδιάςτατοι πίνακεσ

Ειδικά Θζματα Βάςεων Δεδομζνων

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

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

8 τριγωνομετρία. βαςικζσ ζννοιεσ. γ ςφω. εφω και γ. κεφάλαιο

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

Διαχείριςθ του φακζλου "public_html" ςτο ΠΣΔ

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

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

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

Δομζσ Δεδομζνων Πίνακεσ

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

Η γλώςςα προγραμματιςμού C

Κατά τθν ενεργοποίθςθ τθσ ιδιότθτασ αυτισ ενδζχεται να εμφανιςτεί ζνα μινυμα ςαν αυτό τθσ παρακάτω εικόνασ. Απλά επιβεβαιϊςτε πατϊντασ ΟΚ.

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

SQL Data Manipulation Language

5 ΜΕΘΟΔΟΙ - ΠΑΡΑΜΕΤΡΟΙ

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

Εγχειρίδιο Χριςθσ τθσ διαδικτυακισ εφαρμογισ «Υποβολι και παρακολοφκθςθ τθσ ζγκριςθσ Εκπαιδευτικών Πακζτων»

ΕΦΑΡΜΟΓΖσ ΒΆΕΩΝ ΔΕΔΟΜΖΝΩΝ ΚΑΙ ΔΙΑΔΙΚΣΥΟΤ. Ειρινθ Φιλιοποφλου

Εισαγωγικές έννοιες. Αντώνησ Κ Μαώργιώτησ

ΛΕΙΤΟΥΓΙΚΆ ΣΥΣΤΉΜΑΤΑ. 5 ο Εργαςτιριο Ειςαγωγι ςτθ Γραμμι Εντολϊν

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

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 2 ο Εργαςτιριο Διαχείριςθ Διεργαςιϊν

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

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 3 ο Εργαςτιριο υγχρονιςμόσ Διεργαςιϊν

Περιοριςμοί μιασ Β.Δ. ςτθν Access(1/3)

Μάθημα 9 ο ΤΕΧΝΙΚΕΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΙΚΟΝΙΚΗΣ ΜΝΗΜΗΣ

Ιδιότθτεσ πεδίων Γενικζσ.

Βάςεισ Δεδομζνων Ι. Ενότθτα 9: SQL-φηευξθ πινάκων. Δρ. Σςιμπίρθσ Αλκιβιάδθσ Σμιμα Μθχανικών Πλθροφορικισ ΣΕ

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

Ποσοτικές Μέθοδοι Δρ. Χάϊδω Δριτσάκη

DELETE, UPDATE, INSERT

Βάςεισ Δεδομζνων Ι. Ενότητα 4: Μετατροπή ςχήματοσ Ο/Σ ςε ςχεςιακό. Δρ. Τςιμπίρθσ Αλκιβιάδθσ Τμιμα Μθχανικϊν Ρλθροφορικισ ΤΕ

Modellus 4.01 Συ ντομοσ Οδηγο σ

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 7 θ Διάλεξθ Διαχείριςθ Μνιμθσ Μζροσ Γ

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

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

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

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

Πανεπιστήµιο Ιωαννίνων Τµήµα Μαθηµατικών Μάθηµα: Βάσεις εδοµένων (741) Εργαστηριακό Τεστ Οµάδα: Α 18/11/2004

Πωσ δθμιουργώ φακζλουσ;

Ανάπτυξη Εφαρμογών Σε Προγραμματιςτικό Περιβάλλον

ΗΛΕΚΣΡΟΝΙΚΗ ΤΠΗΡΕΙΑ ΑΠΟΚΣΗΗ ΑΚΑΔΗΜΑΪΚΗ ΣΑΤΣΟΣΗΣΑ

ΘΥ101: Ειςαγωγι ςτθν Πλθροφορικι

DELETE, UPDATE, INSERT.

ΠΡΟΓΡΑΜΜΑΣΙΜΌ ΤΠΟΛΟΓΙΣΏΝ. Κεφάλαιο 8 Η γλϊςςα Pascal

ΛΕΙΣΟΤΡΓΙΚΆ ΤΣΉΜΑΣΑ. 8 θ Διάλεξθ Ιδεατι Μνιμθ Μζροσ Α

16. Πίνακεσ και Συναρτήςεισ

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

Οδηγίεσ προσ τουσ εκπαιδευτικοφσ για το μοντζλο του Άβακα

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

Σύ ντομος Οδηγο ς χρη σης wikidot για τα projects

MySchool Πρακτικζσ οδθγίεσ χριςθσ


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

Ειδικά Θζματα Βάςεων Δεδομζνων

ΟΔΗΓΙΕ ΔΗΜΙΟΤΡΓΙΑ ΚΑΙ ΡΤΘΜΙΗ ΔΩΡΕΑΝ ΗΛΕΚΣΡΟΝΙΚΟΤ ΣΑΧΤΔΡΟΜΕΙΟΤ ΣΟ GOOGLE (G-MAIL)

Virtualization. Στο ςυγκεκριμζνο οδηγό, θα παρουςιαςτεί η ικανότητα δοκιμήσ τησ διανομήσ Ubuntu 9.04, χωρίσ την ανάγκη του format.

Μονάδες 6. Μονάδες ΓΑΨΕ Δεν υπάρχει ρίηα 2. ΑΝ Α>0 ΤΟΤΕ 3. ΤΕΛΟΣ_ΑΝ 4. ΑΛΛΙΩΣ 5. ίηα Τ_(Α)

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

Δομζσ Αφαιρετικότθτα ςτα Δεδομζνα

GNSS Solutions guide. 1. Create new Project

Παράςταςη ακεραίων ςτο ςυςτημα ςυμπλήρωμα ωσ προσ 2

x n D 2 ENCODER m - σε n (m 2 n ) x 1 Παραδείγματα κωδικοποιθτϊν είναι ο κωδικοποιθτισ οκταδικοφ ςε δυαδικό και ο κωδικοποιθτισ BCD ςε δυαδικό.


SingularLogic Application. Παραμετροποίηση Galaxy Application Server

DIOSCOURIDES VERSION

Ειςαγωγι ςτο Δομθμζνο Προγραμματιςμό. Βαγγζλθσ Οικονόμου

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

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

ΕΝΟΣΗΣΑ 3: ΧΡΗΗ ΕΡΓΑΛΕΙΩΝ ΕΚΦΡΑΗ ΚΑΙ ΔΗΜΙΟΤΡΓΙΑ

WORDPRESS WORKSHOP. Child Themes. Κόκκορασ Φώτησ Τμήμα Μηχανικών Πληροφορικήσ TEI Θεςςαλίασ. Τμήμα Μηχανικών Πληροφορικής ΤΕΙ Θεσσαλίας

Transcript:

Βαςεις δεδομενων 1 Δρ. Aλεξανδροσ Βακαλουδθσ

ιμερα Και άλλα κριτθρία για επιλογι δεδομζνων Παραδείγματα Εντολζσ τροποποίθςθσ δεδομζνων

Κριτιριο LIKE Όταν κελουμε να κάνουμε αναηιτθςθ μεςα ςε αλφαρικμθτικά πεδία φνταξθ xx LIKE %YYY% ; O χαρακτιρασ % είναι αντίςτοιχοσ του * για αναηιτθςθ αρχείων Ειδικά ςτθν Access χρθςιμοποιείται και το * Παράδειγματα Δωςε μου ολουσ τουσ φοιτθτζσ των οποίων το επίκετο αρχίηει από Παπα WHERE surname LIKE Παπα% ; Δωςε μου ολουσ τουσ φοιτθτζσ των οποίων το επίκετο περιζχει τα γράμματα λλ WHERE surname LIKE %λλ% ;

IS NULL Οι Σιμζσ μζςα ςτθ βάςθ μποροφν να είναι κενζσ Για πεδία τα οποία δεν είναι υποχρεωτικά Σο κενό δεν είναι όμοιο με το 0 Σο κενό δεν είναι το όμοιο με ζνα άδειο αλφαρικμθτικό Ελεγχουμε εάν ζνα πεδίο είναι κενό με τθν εντολι IS NULL Δωϋςε τουσ φοιτθτζσ οι οποίοι ζχουν δϊςει τθλζφωνο WHERE TEL IS NOT NULL

HAVING τα κριτιρια μζςα ςτο WHERE δεν επιτρζπεται να χρθςιμοποιοφμε ςυναρτιςεισ ομαδποποίθςθσ AVG, SUM, COUNT, MAX, MIN Εάν χρειάηεται τζτοιο κριτιριο, ζχουμε τθν εντολι HAVING HAVING count(studentid)>20 Π.χ. Δϊςε μου τα τμιματα με παραπάνω από 1000 φοιτθτζσ Select count(studentid), departments.name from students, departments where Students.deptid=departments.deptid group by departments.name having count(studentid)>10000

Εμφωλευμζνα ερωτιματα Encapsulated queries Εκτζλεςθ ερωτιματοσ μζςα ςε ερωτθμα φνταξθ SELECT xx FROM yy WHERE zz in (SELECT ww FROM qq ) Σο εμφαλευμζνο ερϊτθμα εκτελείται για κάκε γραμμι του κυρίου ερωτιματοσ

Παράδειγμα Δϊςε μου όςουσ είναι ςτο ίδιο τμιμα με τον Ιωάννου Βρίςκουμε ςε ποιο τμιμα είναι ο Ιωάννου Select departments.name from departments, students where departments.deptid=students.deptid and students.name= Ιωάννου Σοποκετοφμε αυτό το ερϊτθμα ωσ εμφωλεαςμζνο ςτο γενικό μασ ερϊτθμα Select name from students where deptid in (Select departments.name from departments, students where departments.deptid=students.deptid and students.name= Ιωάννου )

Χωρίσ υποερϊτθμα? Select s1.name from students s1, s2 where s1.deptid=s2.deptid and s2.name= Ιωάννου

Κριτικι Θ ταχφτθτα εκτζλεςθσ ενόσ ερωτιματοσ είναι πολφ ςθμαντικόσ παράγοντασ ςτθ λειτουργία μίασ βάςθσ Σο εμφωλευμζνο ερϊτθμα εκτελείται πολλαπλζσ φορζσ Για κάκε γραμμι του κυρίου ερωτιματοσ Αυτό κακιςτά τθν εκτζλεςθ του ερωτιματοσ αργι Για αυτό τα εμφωλευμζνα ερωτθματα ΠΡΕΠΕΙ να αποφεφγονται Και να χρθςιμοποιοφνται μόνο όταν δεν υπάρχει εναλλακτικι λφςθ

υντομεφςεισ ςε πίνακεσ H SQL δίνει τθ δυνατότθτα χριςθσ «μεταβλθτϊν» για ονόματα πινάκων Με ςκοπό να κανει το ερϊτθμα πιο ςφντομο Π.χ. Select s.name, s.tel from students s, departments.d where s.deptid=d.deptid and d.name= ΠΛΘΡΟΦΟΡΙΚΘ ;

Άλλα κριτιρια ςε εμφωλευμζνα ερωτιματα ANY INTERSECT MINUS SET ALL Χρθςιμοποιοφνται με εμφωλευμζνα

Μορφοποίθςθ δεδομζνων Θ SQL είναι case-insensitive Δθλαδι δε τθν ενδιαφζρουν μικρά/μεγάλα γράμματα Οτιδιποτε αλφαρικμθτικό είναι μζςα ςε αποςτρόφουσ Οι θμερομθνίεσ πρζπει να είναι ςε ςυγκεκριμζνθ μορφι Θ οποία δυςτυχϊσ διαφζρει Oracle 12-10-2011 MySQL 2011-01-10 Access 23-Mar-01 (και άλλεσ)

Παραδείγματα SQL Ζςτω θ βάςθ του ΣΕΙ με πίνακεσ Departments (deptid, name) students(studentid, AEM, name deptid) Modules(moduleid, name, semester, deptid) ModulesStudents(id, moduleid, studentid) Πόςοι φοιτθτζσ είναι εγγεγραμμζνοι ςε κάκε τμιμα με αυξουςα ςειρά αρικμοφ? Select count(studentid), departments.name from students, departments where Students.deptid=departments.deptid group by departments.name order by count(studentid),

Παραδείγματα SQL Ποςοι φοιτθτζσ παρακολουκοφν τo κάκε μακιμα του 3 ου εξαμινου τμιματοσ πλθροφορικισ? Select count(studentid), modules.name from students, modules, departments, modulesstudents where Students.deptid=departments.deptid and modules.moduleid=modulesstudents.moduleid and students.studentid=modulesstudents.studentid and modules.deptdid=departments.deptid and Modules.semester=3 and Departments.name= ΠΛΘΡΟΦΟΡΙΚΘ group by modules.name

Παραδείγματα SQL Ποιο μάκθμα ζχει τουσ περςςότερουσ φοιτθτζσ? Select count(studentid), modules.name from students, modules, modulesstudents where modules.moduleid=modulesstudents.moduleid and students.studentid=modulesstudents.studentid group by modules.name Having count(studentid)=max(count(studentid))

φνοψθ SELECT WHERE κριτιρια υηευγμζνα ερωτιματα: Ηθτοφμε δεδομζνα από παραπάνω από ζνα πίνακεσ Τπάρχει κρυφό κριτιριο, θ ιςότθτα των κοινϊν πεδίων ORDER BY ταξινόμθςθ GROYP BY ομαδοποίθςθ Όμαδοποιοφμε ςφμφωνα με πεδία για να εκτζλεςουμε ζνα ςτατιςτικό ερϊτθμα HAVING τατιςτικά κριτιρια

Αλλαγθ δεδομζνων DML Data Manipulation Language UPDATE, DELETE,INSERT

Σροποποίθςθ δεδομζνων φνταξθ UPDATE <table> SET <field1>=<value1>, <fieldn>=<valuen> WHERE <criteria> Update modules Set semester=5 where id=2

Σροποποιιςεισ με κριτιρια από άλλο πίνακα Θ τροποποίθςθ πρζπει να γίνει ςε ζνα πίνακα Χρθςιμοποιϊντασ όμωσ μζςα ςτο WHERE κριτιρια άλλου πίνακα Εντολι USING Π.χ. Update modules using department set didaktikesmonades=4 where modules.deptid=departrments.deptid and departments.name= ΠΛΘΡΟΦΟΡΙΚΘϋ

Διαγραφι δεδομζνων φνταξθ DELETE FROM <tablename> WHERE <criteria> DELETE from students where AEM<100; ομοια με το UPDATE, μπορεί και εδϊ να χρθςιμοποιθκεί θ εντολι USING

Ειςαγωγι δεδομζνων φνταξθ INSERT INTO <table> (field1, field2, field3..fieldn) VALUES (value1, value2, value3) Π.χ insert into modules (semester, name, deptid) values (1, ΒΑΕΙ ΔΕΔΟΜΕΝΩΝ 1,1); Γιατί δεν ζβαλα το moduleid

Παράδειγμα Π.χ insert into modules (semester, name, deptid) values (1, ΒΑΕΙ ΔΕΔΟΜΕΝΩΝ 1,1); ωςτά δεν ζβαλα το πρωτεφον κλειδί moduleid? Σο οποίο πρζπει να είναι μοναδικό και ποτζ NULL Ναι αν εχω ορίςει το moduleid να ζχει αυτόματθ αρίκμθςθ (auto increment) ε κάκε ειςαγωγι, παίρνει τθν επόμενθ ακζραια τιμι

COMMIT (save) ςτισ βάςεισ δεδομζνων Οποιαδιποτε τροποποίθςθ ςτα δεδομζνα είναι προςωρινι και ορατι μόνο από όποιον τθν εκτελεί γίνεται μόνιμθ και ορατι ςε άλλουσ χριςτεσ μόνο όταν δϊςουμε τθν εντολι commit Θ commit είναι ουςιαςτικά το αντίςτοιχο του save Μετά το commit δεν μποροφμε να επαναφζρουμε προθγοφμενεσ τιμζσ με SQL Θ SQL δθλαδι ςβθνει τθ μνιμθ εντολϊν μετά από κάκε commit

ROLLBACK (Undo) ςτισ βάςεισ δεδομζνων Για να αναιρζςουμε οποιεςδιποτε τροποποιιςεισ Και να επανζλκουμε ςτισ τιμζσ του προθγοφμενου commit Χρθςιμοποιοφμε τθν εντολι Rollback ε ςθμαντικζσ πράξεισ όλεσ οι SQL μεταξφ δφο commit λζγονται ςυναλλαγζσ (transactions) Θ διαχείριςθ των ςυναλλαγϊν είναι επίςθσ μεγάλθ υπόκεςθ ςτισ βάςεισ δεδομζνων Θα το εξετάςουμε ςτισ Βαςεισ Δεδομζνων 2

Σρόποι επαναφοράσ Εχουν προφανϊσ υπάρξει ςτιγμζσ μεγάλων λακϊν Όπιυ το ςφάλμα δεν αποκαλφφθκε εγκαίρωσ αλλά μετά από πολλά commit ε αυτιν τθν περίπτωςθ το Rollback δεν αρκεί Επιγραμματικά Backup Log files αρχεία καταγραφισ όπουν υπάρχουν ολεσ οι εκτελεςμζνεσ εντολζσ

χεςιακι Άλγεβρα Θ SQL ζχει μακθματικό υπόβακρο Βαςίηεται ςτθ κεωρία ςυνόλων με πράξεισ όπωσ τομι, ζνωςθ κτλ Κάκε ερϊτθμα μπορεί να μεταςχθματιςκεί ςε μακθματικι ςυνάρτθςθ π name (students) π bname ([σ pname = "John" (μ P(pnr, pname, pmgr) (E))] Χ pmgr = bnr [μ B(bnr, bname, bmgr) (E)])

χεςιακι Άλγεβρα Θετικό το μακθματικό υπόβακρο? Ναι γιατι μποροφν να γίνουν αποδείξεισ ςχετικά με τθν πολυπλοκότθτα των ερωτθμάτων Οποιαδιποτε επζκταςθ ςτθν SQL ζχει ςτερει βάςθ Δυςτυχϊσ είναι μεγάλο κομμάτι Και πολλζσ φορζσ ανοφςιο ςτθν κακθμερινι χριςθ Χριςιμο μόνο αν κάποιοσ κελιςει να εμβακφνει ςτισ βάςεισ δεδομζνων από Μακθματικι άποψθ Άποψθ μοντελοποίθςθσ φνδεςθσ με άλλα πεδία όπωσ τεχνθτι νοθμοςφνθ

Επόμενθ εβδομαδα DDL Data definition Language Δθμιουργία αντικειμζνων (πινακεσ κτλ) Ειςαγωγι ςτα ευρετιρια