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

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

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

Transcript

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

2 Αρχιτεκτονική επικοινωνίας με τη βάση δεδομένων Μια βάση χρησιμοποιείται μέσω του client-server μοντέλου Τα δεδομένα είναι αποθηκευμένα στον DB Server Οι clients καλούν τον DB Server στέλνοντάς του sql εντολές για να πάρουν τα αποτελέσματα Η επικοινωνία γίνεται συνήθως μέσω δικτύου Υπάρχει επιβάρυνση για τη μεταφορά της sql εντολής προς τον DB Server και κυρίως των αποτελεσμάτων από τον DB Server

3 Stored Procedures: Βασικές Έννοιες Μια stored procedure είναι μια υπορουτίνα, ένα πρόγραμμα Δημιουργείται και αποθηκεύεται στη βάση δεδομένων, δηλαδή στον server Μπορεί να κληθεί και να εκτελεστεί από clients ή εφαρμογές που χρησιμοποιούν τη βάση Έχει πρόσβαση στα δεδομένα της βάσης Γράφεται σε μια ειδική γλώσσα η οποία εξαρτάται από το RDBMS που χρησιμοποιείται Οι διαφορές στη σύνταξη μεταξύ των διάφορων RDBMS είναι σχετικά μικρές Στο εργαστήριο χρησιμοποιούμε την MySQL Η γλώσσα συνήθως περιλαμβάνει όλες τις sql εντολές και επιπλέον εντολές για τη συγγραφή μικρών προγραμμάτων if-then-else blocks while loops

4 Γιατί χρησιμοποιούνται? Μέρος της λογικής υλοποιείται στον server, άρα: Κώδικας ανεξάρτητος από την πλατφόρμα των εφαρμογών Μείωση της καθυστέρησης λόγω επικοινωνίας μέσω δικτύου Ορίζονται αφαιρέσεις για τις βασικές λειτουργίες της βάσης: Οι clients δεν είναι απαραίτητο να γνωρίζουν πολλές λεπτομέρειες για το σχεδιασμό Συνήθως χρησιμοποιούνται για: Υλοποίηση λογικών ελέγχων ορθότητας δεδομένων πριν την εισαγωγή/επεξεργασία/διαγραφή Έλεγχο δικαιωμάτων προσπέλασης Ενοποίηση πολύπλοκων εργασιών που γίνονται συχνά και περιλαμβάνουν ακολουθίες πολλαπλών sql εντολών

5 Δημιουργια, κλήση και διαγραφή της stored procedure Δημιουργία Κλήση Διαγραφή Εντολή CREATE PROCEDURE <όνομα procedure> Εντολή CALL <όνομα procedure> Εντολή DROP PROCEDURE <όνομα procedure> Ανάκτηση Κώδικα Εντολή SHOW CREATE PROCEDURE <όνομα procedure> Ανάκτηση Λίστας Procedures Εντολή SHOW PROCEDURE STATUS

6 Δημιουργία και κλήση stored procedure - Παράδειγμα Δήλωση μιας stored procedure Όνομα hello_world Λειτουργία Εκτέλεση μιας select ṃysql>create PROCEDURE hello_world() SELECT * FROM student; Κλήση stored procedure ṃysql>call hello_world(); Επιστρέφει: name lastname am Βάσω unknown 1845 Βιβή Τζέκου 2191 unknown Ντούρου 2192 Αθανασία Κουμπούρη 2193

7 Ανάκτηση και διαγραφή μιας stored procedure - Παράδειγμα Ανάκτηση του κώδικα μιας stored procedure ṃysql>show CREATE PROCEDURE hello_world(); Ανάκτηση της λίστας όλων των stored procedures ṃysql>show PROCEDURE STATUS; Διαγραφή stored procedure ṃysql>drop PROCEDURE hello_world();

8 Δήλωση blocks κώδικα Στο σώμα των procedures είναι δυνατόν να περιλαμβάνονται πολλαπλές εντολές Χρειάζεται η δυνατότητα ορισμού blocks εντολών => Χρήση της δομής BEGIN εντολές του block END Ο χαρακτήρας τερματισμού των εσωτερικών εντολών πρέπει να είναι διαφορετικός από τον χαρακτήρα τερματισμού της CREATE PROCEDURE εντολής Γιατί? => Αλλαγή του χαρακτήρα τερματισμού με την εντολή DELIMITER

9 Δήλωση blocks κώδικα - Παράδειγμα Δήλωση μιας stored procedure με πολλαπλές εντολές στο σώμα της Όνομα hello_world2 Λειτουργία Εκτέλεση τριών select Αλλαγή του χαρακτήρα τερματισμού εντολών από ; σε $ ṃysql>delimiter $ Ορισμός της procedure Προσοχή! Η create procedure είναι μια εντολή Θα εκτελεστεί όταν δοθεί ο χαρακτήρας τερματισμού που έχει οριστεί mysql>create PROCEDURE hello_world2() ->BEGIN -> SELECT * FROM student ORDER BY am; -> SELECT * FROM course ORDER BY course_id; -> SELECT * FROM registration; ->END$ Επαναφορά του χαρακτήρα τερματισμού εντολών από $ σε ; ṃysql>delimiter ; Κλήση της stored procedure ṃysql>call hello_world2();

10 Ορισμός μεταβλητών στο περιβάλλον της mysql Η mysql επιτρέπει τη δήλωση μεταβλητών στο περιβάλλον της Η εμβέλειά τους είναι το τρέχον session Το όνομά τους πρέπει να ξεκινά για να διαχωρίζονται από τις μεταβλητές του συστήματος Η ανάθεση τιμής γίνεται με χρήση της εντολής SET Η εκτύπωση της τιμής γίνεται με την εντολή row in set (000 sec)

11 Είσοδος/Έξοδος σε procedures Οι stored procedures μπορούν να δεχτούν είσοδο και να δώσουν έξοδο στο περιβάλλον κατά την κλήση τους, μέσω παραμέτρων Οι παράμετροι δηλώνονται σαν ορίσματα στην stored procedure Ορίζονται τρία είδη παραμέτρων: IN Παράμετροι εισόδου Η τιμή τους περνά σαν είσοδος στην procedure Κάθε αλλαγή της τιμής στο εσωτερικό της procedure δεν μεταφέρεται στο περιβάλλον Το default είδος παραμέτρων OUT Παράμετροι εξόδου Δεν παρέχεται τιμή στην procedure (θεωρείται NULL) Κάθε αλλαγή της τιμής στο εσωτερικό της procedure είναι διαθέσιμη στο περιβάλλον INOUT Παράμετροι εισόδου & εξόδου Συνδυάζει τα χαρακτηριστικά και των δύο τύπων

12 Είσοδος/Έξοδος σε procedures - Παράδειγμα 1/2 Stored procedure με: Όνομα afairesi Λειτουργία Αφαίρεση δύο αριθμών και επιστροφή του αποτελέσματος Δημιουργία της stored procedure: mysql>delimiter $ mysql>create PROCEDURE afairesi(in a INT, IN b INT, OUT result INT) ->BEGIN -> SET result=a-b; ->END$ mysql>delimiter ; Κλήση: ṃysql>call afairesi(5,4,@res); 1 1 row in set (000 sec)

13 Είσοδος/Έξοδος σε procedures - Παράδειγμα 2/2 Stored procedure με: Όνομα arnisi Λειτουργία Επιστροφή της άρνησης ενός αριθμού Δημιουργία της stored procedure: mysql>delimiter $ mysql>create PROCEDURE arnisi(inout num INT) ->BEGIN -> SET num=-num; ->END$ mysql>delimiter ; Κλήση: mysql>call row in set (000 sec)

14 Τοπικές μεταβλητές σε procedures Επιτρέπεται δήλωση μεταβλητών μέσα στο σώμα της procedure Η εμβέλειά τους είναι η stored procedure Ορίζονται με την εντολή DECLARE Στην declare ορίζεται και ο τύπος δεδομένων τους Παραδείγματα DECLARE DECLARE id INT; DECLARE name VARCHAR(20); DECLARE birthday DATETIME; Η ανάθεση τιμής γίνεται με χρήση της εντολής SET Η δήλωση μεταβλητών πρέπει να προηγείται όλων των υπόλοιπων εντολών!

15 Τοπικές μεταβλητές σε procedures - Παράδειγμα Stored procedure με: Όνομα swap Λειτουργία Δέχεται δύο μεταβλητές και ανταλλάσσει τις τιμές τους Δημιουργία της stored procedure: mysql>delimiter $ mysql>create PROCEDURE swap(inout name1 VARCHAR(20), INOUT name2 VARCHAR(20)) ->BEGIN -> DECLARE nametemp VARCHAR(20); -> SET nametemp=name1; -> SET name1=name2; -> SET name2=nametemp; ->END$ mysql>delimiter ; Κλήση: mysql>call swap(@n1,@n2); athanasia vivi row in set (000 sec)

16 Δομές ελέγχου ροής Βασικές Έννοιες Η mysql υποστηρίζει δομές ελέγχου ροής υπό συνθήκη Οι κυριότερες είναι: IF-THEN-ELSE Άλματα υπό συνθήκη CASE Άλματα με βάση διακριτές τιμές μεταβλητής WHILE Επανάληψη υπό συνθήκη REPEAT Επανάληψη με τουλάχιστον μια εκτέλεση του block

17 IF-THEN-ELSE Σύνταξη IF condition THEN statement/s ELSEIF condition THEN statement/s ELSE statement/s END IF; Βασικές Έννοιες Παράδειγμα - Procedure που επιστρέφει το απόλυτο ενός αριθμού mysql>delimiter $ mysql>create PROCEDURE absolute(in num INT, OUT abs_num INT) ->BEGIN -> IF(num<0) THEN -> SET abs_num=-num; -> ELSE -> SET abs_num=num; -> END IF; ->END$ mysql>delimiter ;

18 IF-THEN-ELSE - Παράδειγμα Stored procedure με: Όνομα pointoftime Λειτουργία Δέχεται μια ημερομηνία και εκτυπώνει αν είναι παρόν, μέλλον ή παρελθόν Δημιουργία της stored procedure: mysql>delimiter $ mysql>create PROCEDURE pointoftime(in inputday DATE) ->BEGIN -> DECLARE currentday DATE; -> SET currentday=curdate(); -> IF(inputDay>currentDay) THEN -> SELECT 'Future'; -> ELSEIF(inputDay=currentDay) THEN -> SELECT 'Present'; -> ELSE -> SELECT 'Past'; -> END IF; ->END$ mysql>delimiter ; Κλήση: mysql>call pointoftime(' '); past past 1 row in set (000 sec)

19 CASE Σύνταξη Βασικές Έννοιες CASE μεταβλητή WHEN condition1 THEN statement/s WHEN condition2 THEN statement/s ELSE statement/s END CASE; Παράδειγμα mysql>delimiter $ mysql>create PROCEDURE option(in input_num INT) ->BEGIN -> CASE(input_num) -> WHEN 1 THEN -> SELECT 'Option 1 selected'; -> WHEN 2 THEN -> SELECT 'Option 2 selected'; -> ELSE -> SELECT 'Unknown option selected'; -> END IF; ->END$ mysql>delimiter ;

20 Δομές επανάληψης Σύνταξη WHILE WHILE condition DO statement/s END WHILE; Σύνταξη REPEAT REPEAT statement/s UNTIL condition END REPEAT; Βασικές Έννοιες

21 WHILE Παράδειγμα - Procedure απαρίθμησης Βασικές Έννοιες mysql>delimiter $ mysql>create PROCEDURE simplefor(in maxnum INT) ->BEGIN -> DECLARE i INT; -> SET i=0; -> WHILE(i<maxNum AND maxnum>=0) DO -> SELECT i; -> SET i=i+1; -> END WHILE; ->END$ mysql>delimiter ; Κλήση mysql>call simplefor(2); i 0 1 row in set (000 sec) i 1 1 row in set (001 sec) mysql>call simplefor(0); Query OK, 0 rows affected (000 sec)

22 REPEAT Παράδειγμα - Procedure απαρίθμησης Βασικές Έννοιες mysql>delimiter $ mysql>create PROCEDURE simpleforalt(in maxnum INT) ->BEGIN -> DECLARE i INT; -> SET i=0; -> REPEAT -> SELECT i; -> SET i=i+1; -> UNTIL(i>=maxNum OR maxnum<0) -> END REPEAT; ->END$ mysql>delimiter ; Κλήση mysql>call simpleforalt(2); i 0 1 row in set (000 sec) i 1 1 row in set (000 sec) mysql>call simplefor(0); i 0 1 row in set (000 sec)

23 Διαχείριση αποτελεσμάτων select με κώδικα Η βασικότερη λειτουργία των stored procedures είναι η διαχείριση δεδομένων της βάσης Χρειαζόμαστε τρόπους αποθήκευσης των αποτελεσμάτων των select σε μεταβλητές, για να τα διαχειριστούμε προγραμματιστικά Παρέχονται δύο μηχανισμοί ανάλογα με τον αριθμό των αποτελεσμάτων που επιστρεφονται: INTO CURSORS Χρησιμοποιείται όταν το select επιστρέφει μία εγγραφή Αποθηκεύουμε σε μεταβλητές τις τιμές που επιστρέφονται Χρησιμοποιούνται όταν το select επιστρέφει πολλαπλές εγγραφές Προσπελαύνουμε τις γραμμές των αποτελεσμάτων μία-μια

24 Διαχείριση μεμονωμένων τιμών - SELECT INTO Σύνταξη SELECT <λίστα πεδίων> ΙΝΤΟ <λίστα μεταβλητών> FROM <λίστα πινάκων> WHERE <συνθήκη> ; Η λίστα μεταβλητών πρέπει να αντιστοιχίζεται 1-1 με τη λίστα πεδίων Πρέπει να εξασφαλίζουμε ότι η select θα επιστρέφει το πολύ μια εγγραφή, αλλιώς προκαλείται σφάλμα! Μετά την εκτέλεση, οι μεταβλητές περιέχουν τις τιμές που έχουν επιστραφεί Αν δεν επιστραφεί τίποτα, οι μεταβλητές περιέχουν NULL

25 Διαχείριση μεμονωμένων τιμών - Παράδειγμα Procedure που επιστρέφει στοιχεία ενός φοιτητή mysql>delimiter $ mysql>create PROCEDURE showstudentinfo(in stam INT) ->BEGIN -> DECLARE stname VARCHAR(25); -> DECLARE stlastname VARCHAR(25); -> SELECT name, lastname -> INTO stname, stlastname -> FROM student -> WHERE am=stam; -> IF(stName is NULL AND stlastname is NULL) THEN -> SELECT 'Student not found'; -> ELSEIF(stName LIKE '%unknown%' OR stlastname LIKE '%unknown%') THEN -> SELECT 'Partial info available:'; -> SELECT stname, stlastname; -> ELSE -> SELECT 'Student found:'; -> SELECT stname, stlastname; -> END IF; ->END$ mysql>delimiter ;

26 Διαχείριση μεμονωμένων τιμών - Κλήση Κλήση της showstudentinfo mysql>call showstudentinfo(2191) Student found: Student found: row in set (001 sec) stname stlastname Βιβή Τζέκου row in set (002 sec) mysql>call showstudentinfo(2192) Partial info available: Partial info available: row in set (000 sec) stname stlastname unknown Ντούρου row in set (001 sec) mysql>call showstudentinfo(123) Student not found Student not found row in set (000 sec)

27 Διαχείριση πινάκων αποτελεσμάτων Όταν η select επιστρέφει πολλαπλές εγγραφές, χρησιμοποιούμε Cursors Συντομογραφία του CUrrent Set Of Records Προσπελαύνουμε μία εγγραφή των αποτελεσμάτων κάθε φορά, Βασικά σημεία: Ορίζουμε μια μεταβλητή τύπο cursor Την αντιστοιχίζουμε στη select που θα επιστρέψει τα αποτελέσματα Ορίζουμε μια εντολή που θα εκτελεστεί όταν έχουν διαβαστεί όλα τα αποτελέσματα Εκτελούμε την εντολή FETCH που μεταφέρει τον cursor στην επόμενη γραμμή, μέχρι να εκτελεστεί η παραπάνω εντολή

28 Διαχείριση πινάκων αποτελεσμάτων - Εντολές Ορισμός ενός cursor και δήλωση της select στην οποία θα εφαρμοστεί ḌECLARE CURSOR <όνομα cursor> CURSOR FOR <εντολή select>; Δήλωση εντολής που συνδέεται με το τέλος του διαβάσματος των αποτελεσμάτων Συνήθως θέτουμε ένα flag ίσο με 1 ḌECLARE CONTINUE HANDLER FOR NOT FOUND SET <όνομα flag>=1; Άνοιγμα του cursor, δηλαδή εκτέλεση του select που συνδέεται με αυτόν ỌPEN <όνομα cursor>; Ανάγνωση της επόμενης γραμμής στα αποτελέσματα FETCH <όνομα cursor> ΙΝΤΟ <λίστα μεταβλητών>; Συνθήκη τερματισμού Σταματάμε να διαβάζουμε όταν το flag που ορίσαμε γίνει 1 Κλείσιμο του cursor CLOSE <όνομα cursor>;

29 Διαχείριση πινάκων αποτελεσμάτων - Παράδειγμα 1/2 Procedure που επιστρέφει τα στοιχεία των lectures ενός μαθήματος mysql>delimiter $ mysql>drop PROCEDURE IF EXISTS showcourselectures$ mysql>create PROCEDURE showcourselectures(in courseid INT) ->BEGIN -> DECLARE lectsubject VARCHAR(128); -> DECLARE lectnum INT(2); -> DECLARE finishedflag INT; -> DECLARE lectcursor CURSOR FOR -> SELECT subject,num_lecture FROM lecture WHERE course_lecture=courseid; -> DECLARE CONTINUE HANDLER FOR NOT FOUND SET finishedflag=1; -> OPEN lectcursor; -> SET finishedflag=0; -> FETCH lectcursor INTO lectsubject, lectnum; -> WHILE(finishedFlag=0) DO -> SELECT lectnum AS 'Αριθμός Διάλεξης', lectsubject AS 'Θέμα'; -> FETCH lectcursor INTO lectsubject, lectnum; -> END WHILE; -> CLOSE lectcursor; ->END$ mysql>delimiter ;

30 Διαχείριση πινάκων αποτελεσμάτων - Παράδειγμα 2/2 Procedure που επιστρέφει τα στοιχεία των lectures ενός μαθήματος mysql>delimiter $ mysql>drop PROCEDURE IF EXISTS showcourselecturesalt$ mysql>create PROCEDURE showcourselecturesalt(in courseid INT) ->BEGIN -> DECLARE lectsubject VARCHAR(128); -> DECLARE lectnum INT(2); -> DECLARE finishedflag INT; -> DECLARE lectcursor CURSOR FOR -> SELECT subject,num_lecture FROM lecture WHERE course_lecture=courseid; -> DECLARE CONTINUE HANDLER FOR NOT FOUND SET finishedflag=1; -> OPEN lectcursor; -> SET finishedflag=0; -> REPEAT -> FETCH lectcursor INTO lectsubject, lectnum; -> IF(finishedFlag=0) THEN -> SELECT lectnum AS 'Αριθμός Διάλεξης', lectsubject AS 'Θέμα'; -> END IF; -> UNTIL(finishedFlag=1) -> END REPEAT; -> CLOSE lectcursor; ->END$ mysql>delimiter ;

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

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

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

MySQL stored procedures

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

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

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

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

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

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

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

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

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

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

Κεφάλαιο 12 Υλοποίηση Stored Procedures, Χρήση Ευρετηρίων

Κεφάλαιο 12 Υλοποίηση Stored Procedures, Χρήση Ευρετηρίων Κεφάλαιο 12 Υλοποίηση Stored Procedures, Χρήση Ευρετηρίων Σύνοψη Στο παρόν κεφάλαιο θα παρουσιασθούν βασικά στοιχεία όσον αφορά τις stored procedures και τη χρήση ευρετηρίων. Προαπαιτούμενη γνώση H ύλη

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΕΠΛ 342 Βάσεις εδοµένων ΕΠΛ 342 Βάσεις εδοµένων Εργαστήριο 6 ο PL/SQL Ιωάννα Συρίµη syrimi@ucy.ac.cy PL/SQL Procedural Language/SQL Επέκταση της SQL µε χαρακτηριστικά γλωσσών προγραµµατισµού Επιτρέπει την χρήση προτάσεων SQL

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

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

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

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

Παράδειγμα 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)

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

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

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

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

Παράδειγμα 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)

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

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

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

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

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

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

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

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Κεφάλαιο 7: Υποπρογράμματα. Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Κεφάλαιο 7: Υποπρογράμματα Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ορισμός Αφαίρεση με χρήση υποπρογραμμάτων (subprogram abstraction) είναι η αντιστοίχιση ενός συνόλου εισόδων σε ένα σύνολο εξόδων

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

Η γλώσσα προγραμματισμού Strange

Η γλώσσα προγραμματισμού Strange Προγραμματιστική άσκηση: Η γλώσσα προγραμματισμού Strange Η Strange είναι μια μικρή γλώσσα προγραμματισμού. Παρόλο που οι προγραμματιστικές της ικανότητες είναι μικρές, η εκπαιδευτική αυτή γλώσσα περιέχει

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

Κεφάλαιο 7: Υπορουτίνες

Κεφάλαιο 7: Υπορουτίνες Κεφάλαιο 7: Υπορουτίνες Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ορισμός Αφαίρεση με χρήση υπορουτινών (subroutine abstraction) είναι η αντιστοίχιση ενός συνόλου εισόδων σε ένα σύνολο εξόδων που μπορεί

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

Δομημένος Προγραμματισμός

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

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

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

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

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

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

Εργαστήριο Βάσεων Δεδομένων Εργαστήριο Βάσεων Δεδομένων 2012-2013 Άσκηση 4 Ημερομηνία Παράδοσης: 14 Ιανουαρίου 2013 Σκοπός της άσκησης είναι, σε μια έτοιμη βάση δεδομένων: 1. Υλοποίηση stored procedures. 2. Υλοποίηση triggers. Σημείωση

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

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

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

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

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

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

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

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

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

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

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

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

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 Γενικά για την αποθήκευση

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

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

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

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

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

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

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

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

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

Pascal. 15 Νοεμβρίου 2011

Pascal. 15 Νοεμβρίου 2011 Pascal 15 Νοεμβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε

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

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

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

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

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

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

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

databases linux - terminal (linux / windows terminal)

databases linux - terminal (linux / windows terminal) databases linux - terminal (linux / windows terminal) 1) ανοίγουμε την mysql -> $ mysql -u root -p (enter) password (enter) TIP: αν κατά την εντολή αυτή μας γράψει, ERROR 2002 (HY000): Can't connect to

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

Μέρος 2 Κατασκευή Συντακτικού Αναλυτή

Μέρος 2 Κατασκευή Συντακτικού Αναλυτή Αντίρριο, 05/04/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» To δεύτερο μέρος της εργασίας έχει ως στόχο την ανάπτυξη του συντακτικού αναλυτή με χρήση του bison / byacc. Στο

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

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών

Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Αρχές Γλωσσών Προγραμματισμού και Μεταφραστών Ενότητα 7: Υπορουτίνες Καθ. Γιάννης Γαροφαλάκης Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ και Πληροφορικής Ορισμός Αφαίρεση με χρήση υπορουτινών (subroutine abstraction)

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

Εισαγωγή στον Προγραμματισμό (με. τη C)

Εισαγωγή στον Προγραμματισμό (με. τη C) Υποχρεωτικό Μάθημα 3 ου Εξαμήνου Χειμερινό Εξάμηνο Ακ. Έτους 20 Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Εισαγωγή στον Προγραμματισμό (με τη C) Διδάσκουσα: Φατούρου Παναγιώτα faturu [at] csd.uoc.gr

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

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

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

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

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL

Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι. Εισαγωγή στη VHDL Εργαστήριο Αρχιτεκτονικής Υπολογιστών Ι Εισαγωγή στη VHDL Εισαγωγή Very High Speed Integrated Circuits Hardware Description Language ιαφορές από γλώσσες προγραμματισμού: παράλληλη εκτέλεση εντολών προσδιορισμός

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

Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές»

Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» Αντίρριο, 14/03/2017 Προδιαγραφές Εργαστηριακής Εργασίας για το μάθημα «Μεταγλωττιστές» Η εργασία έχει ως στόχο τον σχεδιασμό και την υλοποίηση ενός μεταγλωττιστή για την γλώσσα Ciscal, χρησιμοποιώντας

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

Βασικές Εντολές SQL. Θεωρία & Εντολές SQL. Γραμμή Εντολών MS-DOS (MySQL)

Βασικές Εντολές SQL. Θεωρία & Εντολές SQL. Γραμμή Εντολών MS-DOS (MySQL) Βασικές Εντολές SQL Θεωρία & Εντολές SQL Γραμμή Εντολών MS-DOS (MySQL) Ο καλός σχεδιασμός μιας Β.Δ είναι σημαντικός για την ανάπτυξη μιας εφαρμογής με υψηλή απόδοση. Γι αυτό τον λόγο μια Β.Δ θα πρέπει

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

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου ΕΣΔ 516 Τεχνολογίες Διαδικτύου Εισαγωγή στην PHP Περιεχόμενα Περιεχόμενα PHP και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις Παράδειγματα 1 Βιβλιογραφία Ενότητας Βιβλιογραφία [Lane 2004]: Chapter

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

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

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

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

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

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

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

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Είσοδος Χρησιμοποιούμε την κλάση Scanner της Java import java.util.scanner; Αρχικοποιείται με το ρεύμα εισόδου: Scanner in = new Scanner(System.in);

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

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

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

Η γλώσσα προγραμματισμού EEL

Η γλώσσα προγραμματισμού EEL Προγραμματιστική άσκηση: Η γλώσσα προγραμματισμού EEL Η EEL (Early Experimental Language) είναι μια μικρή γλώσσα προγραμματισμού. Παρόλο που οι προγραμματιστικές της ικανότητες είναι μικρές, η εκπαιδευτική

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

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

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

Εισαγωγή στη Matlab 2 Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής

Εισαγωγή στη Matlab 2 Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής Εισαγωγή στη Matlab 2 Εισαγωγή στην Αριθμητική Ανάλυση Διδάσκων: Γεώργιος Ακρίβης Βοηθός: Δημήτριος Ζαβαντής email: dzavanti@cs.uoi.gr Περιεχόμενα Ορισμοί Λογικοί τελεστές f0r loops while loops if else

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

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Έλεγχος ροής Δομή επιλογής (if, switch) Δομές επανάληψης (while, do-while, for) Διακλάδωση

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

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

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

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

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

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

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

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

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

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

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

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

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

Διάλεξη 5η: Εντολές Επανάληψης

Διάλεξη 5η: Εντολές Επανάληψης Διάλεξη 5η: Εντολές Επανάληψης Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Εντολές Επανάληψης CS100, 2015-2016

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

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

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

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

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

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2017-2018 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ

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

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Είσοδος/Έξοδος. Δημήτρης Μιχαήλ. Ακ. Έτος 2009-2010. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Είσοδος/Έξοδος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2009-2010 Είσοδος/Έξοδος Μέχρι τώρα όποτε θέλαμε να διαβάσουμε χρησιμοποιούσαμε πάντα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

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

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

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

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

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

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες ως εξής P 1 K 1 P

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

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

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

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

Δείκτες (Pointers) Ένας δείκτης είναι μια μεταβλητή με τιμή μια διεύθυνση μνήμης. 9.8

Δείκτες (Pointers) Ένας δείκτης είναι μια μεταβλητή με τιμή μια διεύθυνση μνήμης. 9.8 Δείκτες (Pointers) Ένας δείκτης είναι μια μεταβλητή με τιμή μια διεύθυνση μνήμης. 1000 1001 1002 1003 1004 1005 12 9.8 9976 3 1010 26 1006 1007 1008 1009 1010 1011 16 125 1299 a 13 1298 Δήλωση Δήλωση Τύπος

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

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

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες

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

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

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

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

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

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

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

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

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

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

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

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

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

Εντολές επιλογής Επαναλήψεις (if, switch, while)

Εντολές επιλογής Επαναλήψεις (if, switch, while) Εντολές επιλογής Επαναλήψεις (if, switch, while) Οι σημειώσεις αυτές έχουν σαν στόχο την μάθηση εντολών επιλογής (if, switch, while) που ελέγχουν τη ροή εκτέλεσης ενός προγράμματος. Πρώτα όμως, είναι αναγκαίο

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

Μεταγλωττιστές Βελτιστοποίηση

Μεταγλωττιστές Βελτιστοποίηση Μεταγλωττιστές Βελτιστοποίηση Νίκος Παπασπύρου nickie@softlab.ntua.gr Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχ. και Μηχ. Υπολογιστών Εργαστήριο Τεχνολογίας Λογισμικού Πολυτεχνειούπολη, 15780

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

Pascal. 26 Οκτωβρίου 2011

Pascal. 26 Οκτωβρίου 2011 Pascal 6 Οκτωβρίου 011 1 Procedures σε Pascal Στην Pascal μπορούμε να ορίσουμε διαδικασίες (procedures). Αυτές είναι ομάδες εντολών οι οποίες έχουν ένα όνομα. Γράφοντας το όνομα μιας διαδικασίας μπορούμε

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

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Προπτυχιακό Πρόγραμμα Σπουδών Πληροφορική - ΠΛΗ 11-2005 - 06 ΕΠΑΝΑΛΗΠΤΙΚΗ ΤΕΛΙΚΗ ΕΞΕΤΑΣΗ 8 ΙΟΥΛΙΟΥ 2006 ΜΕΡΟΣ Α'. ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΩΝ ΕΠΙΛΟΓΩΝ [ΔΙΑΡΚΕΙΑ ΕΞΕΤΑΣΗΣ: 45 ] Σε κάθε ερώτηση απαντάτε επιλέγοντας

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

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1

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

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

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

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

{ int a = 5; { int b = 7; a = b + 3;

{ int a = 5; { int b = 7; a = b + 3; Σχεδίαση Γλωσσών & Μεταγλωττιστές Ενότητα 1: Γλώσσες με δομή block Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

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

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

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

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

C: Από τη Θεωρία στην Εφαρμογή

C: Από τη Θεωρία στην Εφαρμογή Δρ. Γ. Σ. Τσελίκης Δρ. Ν. Δ. Τσελίκας C: Από τη Θεωρία στην Εφαρμογή Ενδεικτικές Ασκήσεις από το Βιβλίο C: Από τη Θεωρία στην Εφαρμογή (Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας) Ενδεικτικές Ασκήσεις του Βιβλίου Ε.Α.1

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

(Μέρος 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 Υποστηρίζουν την αυτόματη εκτέλεση ενεργειών όταν συμβούν συγκεκριμένα γεγονότα Ένας διαδεδομένος μηχανισμός

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

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

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

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

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

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

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

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

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

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

Ακολουθιακές εντολές. (Peter Ashenden, The Students Guide to VHDL)

Ακολουθιακές εντολές. (Peter Ashenden, The Students Guide to VHDL) Ακολουθιακές εντολές (Peter Ashenden, The Students Guide to VHDL) Εντολή If Τα βασικά χαρακτηριστικά της είναι τα εξής: Μπορεί να χρησιµοποιηθεί για τον έλεγχο µίας ή περισσοτέρων συνθηκών. Η πρώτη συνθήκη

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

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

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

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

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

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

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

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

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης Εντολές Ελέγχου 2 Γενικά Εντολές λήψης αποφάσεων Επιτρέπουν στο πρόγραμμα να εκτελεί διαφορετικές

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ Εισαγωγή στη MySQL Νικόλαος Ζ. Ζάχαρης Τι είναι η MySql Είναι ένα Σχεσιακό Σύστημα Διαχείρισης

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

Ευφυής Προγραμματισμός

Ευφυής Προγραμματισμός Ευφυής Προγραμματισμός Ιωάννης Χατζηλυγερούδης Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής Περιεχόμενα ενότητας Συναρτήσεις-Δομές Ελέγχου : 1. Συναρτήσεις Χρήστη 2. Έλεγχος Ροής Προγράμματος 3.

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

Παραγωγή Ενδιάµεσου Κώδικα. Γιώργος Μανής

Παραγωγή Ενδιάµεσου Κώδικα. Γιώργος Μανής Παραγωγή Ενδιάµεσου Κώδικα Γιώργος Μανής Παραγωγή Ενδιάµεσου Κώδικα Κώδικας σε αρχική γλώσσα Κώδικας σε ενδιάµεση γλώσσα Κώδικας σε γλώσσα µηχανής (assembly) Παραγωγή Ενδιάµεσου Κώδικα Συντακτικό δέντρο

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

Pascal, απλοί τύποι, τελεστές και εκφράσεις

Pascal, απλοί τύποι, τελεστές και εκφράσεις Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το

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

Προσοµοίωση τροχιάς σε Oracle Spatial 8i DBMS

Προσοµοίωση τροχιάς σε Oracle Spatial 8i DBMS Στη συνέχεια παρατίθενται ορισµένα συµπληρωµατικά στοιχεία σχετικά µε την προσοµοίωση της τροχιάς κινούµενων αντικειµένων, όπως υλοποιήθηκε σε περιβάλλον Oracle Spatial 8i DBMS. i. ηµιουργία της δοµής

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

Προγραμματισμός Διαδικτύου

Προγραμματισμός Διαδικτύου Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Προγραμματισμός Διαδικτύου Δρ. Μηνάς Δασυγένης mdasygenis@uowm.gr Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα;

Πως θα αποθηκεύσει τη λίστα με τα ψώνια του και θα την ανακτήσει στο Σ/Μ; και πως θα προσθέσει στη λίστα του επιπλέον προϊόντα; Λίστα για ψώνια Έννοιες: αρχεία- άνοιγμα- εγγραφή διάβασμα Προαπαιτούμενα : δομή επιλογής, επανάληψης, συναρτήσεις, λίστες Ο Άκης, τώρα που έμαθε και τις λίστες στην Python αποφάσισε να φτιάξει μια λίστα

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

Παραγωγή Ενδιάµεσου Κώδικα

Παραγωγή Ενδιάµεσου Κώδικα Παραγωγή Ενδιάµεσου Κώδικα Παραγωγή Ενδιάµεσου Κώδικα Κώδικας σε αρχική γλώσσα Γιώργος Μανής Κώδικας σε ενδιάµεση γλώσσα Κώδικας σε γλώσσα µηχανής (assembly) Παραγωγή Ενδιάµεσου Κώδικα Ενδιάµεση Γλώσσα

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