ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Εργαστήριο SQL SERVER. ρ Γεωργία Γκαράνη

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

Download "ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ. Εργαστήριο SQL SERVER. ρ Γεωργία Γκαράνη"

Transcript

1 ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΛΑΡΙΣΑΣ ΣΧΟΛΗ ΣΤΕΦ ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστήριο ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΙΙ SQL SERVER ρ Γεωργία Γκαράνη

2 2

3 ΠΕΡΙΕΧΟΜΕΝΑ Εργαστήριο 1: ηµιουργία πινάκων 5 Εργαστήριο 2: Εισαγωγή δεδοµένων στους πίνακες 11 Εργαστήριο 3: Ενηµέρωση- ιαγραφή δεδοµένων 17 Τροποποίηση- ιαγραφή πίνακα Εργαστήριο 4: Ανάκτηση-Επιλογή-Εµφάνιση δεδοµένων 25 Η εντολή SELECT Εργαστήριο 5: Όρος DISTINCT, Αύξουσα/φθίνουσα ταξινόµηση, 29 Συνένωση στηλών και literals, NULL τιµές, SQL τελεστές στον όρο WHERE Εργαστήριο 6: DATE και CONVERSION Functions 37 Εργαστήριο 7: GROUP Functions 45 Εργαστήριο 8: UNION, SOUNDEX, DIFFERENCE, 51 VIEWS, SUBQUERIES Εργαστήριο 9: Σύζευξη πινάκων (JOIN) 65 Εργαστήριο 10: STRING Functions 71 Εργαστήριο 11: MATH Functions 83 Εργαστήρια 12-13: Ανάπτυξη εφαρµογής 91 Γενικές επαναληπτικές ασκήσεις 97 Παράρτηµα 103 3

4 4

5 Εργαστήριο 1: ηµιουργία πινάκων 5

6 6

7 Περιγραφή της βάσης δεδοµένων Σηµείωση: Στις εντολές της SQL, όπου υπάρχει [ ] σηµαίνει ότι αυτό που περικλείετε µέσα σ αυτό είναι προαιρετικό. ηµιουργία µιας βάσης δεδοµένων µε όνοµα my_business η οποία περιγράφει µια επιχείρηση. Η βάση δεδοµένων δηµιουργείται µε την εντολή: CREATE DATABASE <όνοµα βάσης δεδοµένων>; Βήµα 1 ο : ηµιουργήστε τη βάση δεδοµένων µε όνοµα my_business. Στη συνέχεια επιλέξτε την, πηγαίνοντας στη λίστα που έχει τίτλο Database και διαλέγοντας την πρώτη φορά Refresh και στη συνέχεια το όνοµά της, δηλαδή my_business. Από τώρα και στο εξής είστε στη βάση δεδοµένων my_business και δουλεύετε µέσα σ αυτή. Η επιχείρηση που περιγράφει η βάση δεδοµένων my_business θα αποτελείται από έναν αριθµό υπαλλήλων, έναν αριθµό τµηµάτων, έναν αριθµό προϊόντων, έναν αριθµό πελατών και έναν αριθµό παρεγγελιών. Οι υπάλληλοι ανήκουν σε µια µισθολογική κλίµακα ανάλογα µε τα χρήµατα που παίρνουν. Επίσης, οι υπάλληλοι είναι δυνατόν να παίρνουν ένα επίδοµα, ανάλογα µε τη θέση που έχουν στην επιχείρηση και τον µισθό τους. Τα προϊόντα έχουν κάποια περιγραφή, κάποια στάνταρ τιµή και µια ελάχιστη τιµή. 7

8 Βήµα 2 ο : Σε πρώτη φάση θα δηµιουργήσετε τους πίνακες που θα αποτελούν τη βάση δεδοµένων. Οι πίνακες δηµιουργούνται µε την εντολή: CREATE TABLE <όνοµα πίνακα> (<όνοµα πεδίου> <τύπος πεδίου> (<µέγεθος>) [NULL/NOT NULL], <όνοµα πεδίου> <τύπος πεδίου> (<µέγεθος>) [NULL/NOT NULL], ); Οι πίνακες θα είναι οι ακόλουθοι: DEPT, EMP, BONUS, SALGRADE, CUSTOMER, ORD, ITEM, PRODUCT, PRICE. Οι πίνακες αυτοί θα αποτελούνται από τα παρακάτω πεδία: Προσοχή: Στα παρακάτω, όπου δεν ορίζεται στο όνοµα πεδίου αν είναι NULL ή NOT NULL, δεν θα βάζετε τίποτα! Πίνακας DEPT Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o DEPTNO NUMERIC 2 o DNAME CHAR 14 o LOC CHAR 13 Το πεδίο DEPTNO πρέπει να οριστεί NOT NULL. Πίνακας EMP Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o EMPNO NUMERIC 4 o ENAME CHAR 10 o JOB CHAR 9 o MGR NUMERIC 4 o HIREDATE DATETIME 8

9 o SAL NUMERIC 7, 2 (7 ακέραια και δύο δεκαδικά ψηφία) o COMM NUMERIC 7, 2 o DEPTNO NUMERIC 2 Τα πεδία EMPNO και DEPTNO πρέπει να οριστούν NOT NULL. Πίνακας BONUS Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o ENAME CHAR 10 o JOB CHAR 9 o SAL NUMERIC o COMM NUMERIC Πίνακας SALGRADE Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o GRADE NUMERIC o LOSAL NUMERIC o HISAL NUMERIC Πίνακας CUSTOMER Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o ZIP CHAR 9 o STATE CHAR 2 o REPID NUMERIC 4 o PHONE CHAR 9 o NAME CHAR 45 o CUSTID NUMERIC 6 o CREDITLIMIT NUMERIC 9, 2 o CITY CHAR 30 o AREA NUMERIC 3 o ADDRESS CHAR 40 o COMMENTS TEXT Τα πεδία CUSTID και REPID πρέπει να οριστούν NOT NULL. 9

10 Πίνακας ORD Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o TOTAL NUMERIC 8, 2 o SHIPDATE DATETIME o ORDID NUMERIC 4 o ORDERDATE DATETIME o CUSTID NUMERIC 6 o COMMPLAN CHAR 1 Τα πεδία ORDID και CUSTID πρέπει να οριστούν NOT NULL. Πίνακας ITEM Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o QTY NUMERIC 8 o PRODID NUMERIC 6 o ORDID NUMERIC 4 o ITEMTOT NUMERIC 8, 2 o ITEMID NUMERIC 4 o ACTUALPRICE NUMERIC 8, 2 Τα πεδία ORDID και ITEMID πρέπει να οριστούν NOT NULL. Πίνακας PRODUCT Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o PRODID NUMERIC 6 o DESCRIP CHAR 30 Πίνακας PRICE Όνοµα πεδίου Τύπος πεδίου Μέγεθος πεδίου o STDPRICE NUMERIC 8, 2 o STARTDATE DATETIME o PRODID NUMERIC 6 o MINPRICE NUMERIC 8, 2 o ENDDATE DATETIME Το πεδίο PRODID πρέπει να οριστεί NOT NULL. 10

11 Εργαστήριο 2 : Εισαγωγή δεδοµένων στους πίνακες 11

12 12

13 Βήµα 1 ο : Θα εισαγάγετε δεδοµένα µέσα στους πίνακες αυτούς. Η εισαγωγή δεδοµένων γίνεται µε την εντολή: INSERT INTO <όνοµα πίνακα> [(<όνοµα πεδίου>, <όνοµα πεδίου>,...)] VALUES (<τιµή>, <τιµή>,...); ΠΡΟΣΟΧΗ! Σε περίπτωση που κατά λάθος πληκτρολογήσετε λανθασµένα δεδοµένα στους πίνακες ΜΗΝ προσπαθήσετε να τα διορθώσετε! Οι εγγραφές θα ελεγθούν αν είναι σωστές στο επόµενο εργαστήριο και θα διορθωθούν σε περιπτώσεις λαθών τότε. Τα δεδοµένα είναι τα ακόλουθα: Πίνακας DEPT DEPTNO DNAME LOC 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON Πίνακας EMP EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO 7839 KING PRESIDENT NULL 17-NOV NULL BLAKE MANAGER MAY NULL CLARK MANAGER JUN NULL JONES MANAGER APR NULL MARTIN SALESMAN SEP ALLEN SALESMAN FEB TURNER SALESMAN SEP JAMES CLERK DEC NULL WARD SALESMAN FEB FORD ANALYST DEC NULL SMITH CLERK DEC NULL SCOTT ANALYST DEC NULL ADAMS CLERK JAN NULL MILLER CLERK JAN NULL 10 13

14 Πίνακας SALGRADE GRADE LOSAL HISAL Πίνακας CUSTOMER ZIP STATE REPID PHONE NAME CUSTID CREDITLIMIT CITY AREA ADDRESS COMMENTS CA JOCKSPORTS BELMONT VIEWRIDGE Very friendly people to work with -- sales rep likes to be called Mike CA TKB SPORT SHOP REDWOOD CITY BOLI RD. Rep called 5/8 about change in order - contact shipping CA VOLLYRITE BURLINGAME HAMILTON Company doing heavy promotion beginning 10/89. Prepare for large orders during winter CA JUST TENNIS BURLINGAME 415 HILLVIEW MALL Contact rep about new line of tennis rackets CA EVERY MOUNTAIN CUPERTINO SURRY RD. Customer with high market share (23%) due to aggressive advertising CA K + T SPORTS SANTA CLARA EL PASEO Tends to order large amounts of merchandise at once. Accounting is considering raising their credit limit. Πίνακας ORD TOTAL SHIPDATE ORDID ORDERDATE CUSTID COMMPLAN JAN JAN A JAN JAN B JAN JAN C MAY MAY A JUN JUN B JUN JUN A JUL JUL A JUL JUL A AUG AUG B JUL JUL C 14

15 Πίνακας ITEM QTY PRODID ORDID ITEMTOT ITEMID ACTUALPRICE Πίνακας PRODUCT PRODID DESCRIP ACE TENNIS RACKET I ACE TENNIS RACKET II ACE TENNIS BALLS-3 PACK ACE TENNIS BALLS-6 PACK ACE TENNIS NET SP TENNIS RACKET SP JUNIOR RACKET Πίνακας PRICE STDPRICE STARDATE PRODID MINPRICE ENDDATE JAN DEC JAN JUN MAY JUN JAN MAY JAN DEC JUN JAN MAY JAN FEB NOV

16 Μπορείτε να δείτε τα δεδοµένα που έχετε εισάγει στους πίνακες της βάσης δεδοµένων που δηµιουργήσατε χρησιµοποιώντας την εντολή: SELECT * FROM <όνοµα πίνακα>; 16

17 Εργαστήριο 3 : Ενηµέρωση- ιαγραφή δεδοµένων Τροποποίηση- ιαγραφή πίνακα 17

18 18

19 Βήµα 1 ο : ιορθώστε λάθη που τυχόν έχετε κάνει στην εισαγωγή των δεδοµένων στους πίνακές σας χρησιµοποιώντας την εντολή: UPDATE <όνοµα πίνακα> SET <όνοµα πεδίου> = τιµή παράσταση υποερώτηµα, <όνοµα πεδίου> = τιµή παράσταση υποερώτηµα,... WHERE <συνθήκη> ; Επίσης, στον πίνακα PRICE, αλλάξτε την ηµεροµηνία ENDDATE στις εγγραφές που έχουν ηµεροµηνία STARTDATE ίση µε 01-JAN-86, σε 31- OCT-99. Ελέγξτε τα δεδοµένα για να διαπιστώσετε αν έχουν γίνει σωστά οι αλλαγές. Βήµα 2 ο : Σε περίπτωση που θέλετε να διαγράψετε τελείως µια ή περισσότερες εγγραφές σε κάποιον πίνακα, χρησιµοποιείστε την εντολή: DELETE FROM <όνοµα πίνακα> WHERE <συνθήκη>; ιαγράψτε την 9 η εγγραφή του πίνακα ORD, καθώς και την 5 η και 9 η εγγραφή του πίνακα ITEM. 19

20 Βήµα 3 ο : Για να αλλάξετε κάποιον πίνακα που έχετε δηµιουργήσει, µπορείτε να χρησιµοποιήσετε την εντολή ALTER. Συγκεκριµένα, για να προσθέσετε ένα πεδίο στον πίνακα, η εντολή είναι ως εξής: ALTER TABLE <όνοµα πίνακα> ADD <όνοµα πεδίου> <τύπος πεδίου> <µέγεθος>; Προσθέστε στον πίνακα BONUS ένα πεδίο µε όνοµα STARTDATE τύπου DATETIME. Για να διαγράψετε ένα πεδίο από έναν πίνακα, η εντολή είναι ως εξής: ALTER TABLE <όνοµα πίνακα> DROP COLUMN <όνοµα πεδίου>; ιαγράψτε το πεδίο µε όνοµα STARTDATE του πίνακα BONUS. Για να τροποποιήσετε τον ορισµό ενός πεδίου η εντολή είναι: ALTER TABLE <όνοµα πίνακα> ALTER COLUMN <όνοµα πεδίου> <τύπος πεδίου> (<µέγεθος>); Ξαναπροσθέστε στον πίνακα BONUS το πεδίο STARTDATE τύπου DATETIME. Τροποποιήστε τον τύπο του πεδίου STARTDATE του πίνακα BONUS από DATETIME σε CHAR (12). Επειδή, οι εντολές της SQL είναι πάρα πολλές και η σύνταξή τους µπορεί να γίνει πολύπλοκη, ανάλογα µε το ερώτηµα που πρόκειται να εκφράσετε, µπορείτε να χρησιµοποιείτε τη βοήθεια που σας δίνεται από το Help και επιλέγοντας το Transact-SQL Help και στη συνέχεια το Index. 20

21 Χρησιµοποιώντας τη «Βοήθεια» για να δείτε την σωστή σύνταξη της εντολής ALTER, διαγράψτε το πεδίο STARTDATE που προσθέσατε στον πίνακα BONUS. Βήµα 4 ο : Μπορείτε να προσθέσετε πρωτεύοντα και υποψήφια κλειδιά σε κάποιον πίνακα χρησιµοποιώντας και πάλι την εντολή ALTER: ALTER TABLE <όνοµα πίνακα> ADD CONSTRAINT <όνοµα-περιορισµού> PRIMARY KEY (<όνοµα πεδίου>, <όνοµα πεδίου>,...) FOREIGN KEY (<όνοµα πεδίου>, <όνοµα πεδίου>,...) REFERENCES <όνοµα πίνακα> (<όνοµα πεδίου>, <όνοµα πεδίου>,...); όπου η λέξη CONSTRAINT (στα ελληνικά σηµαίνει «περιορισµός») ορίζει την αρχή του ορισµού ενός πρωτεύοντος ή ξένου κλειδιού και <όνοµαπεριορισµού> είναι το όνοµα του καινούριου περιορισµού (κάθε πρωτεύον ή ξένο κλειδί όταν ορίζεται πρέπει να παίρνει και ένα όνοµα). Αρχικά, µελετήστε τα παρακάτω πρωτεύοντα και ξένα κλειδιά που πρέπει να εισαγάγεται στους πίνακες που έχετε δηµιουργήσει για να κατανοήσετε τη σηµασία τους. Στον πίνακα ORD αλλάξτε τις εγγραφές που έχουν CUSTID=106 σε CUSTID=105. ικαιολογήστε για ποιο λόγο πρέπει να κάνετε την αλλαγή αυτή πριν να δηµιουργήσετε τα κλειδιά στους πίνακες. Ποιες εγγραφές του πίνακα ITEM πρέπει να διαγραφούν και γιατί πριν να δηµιουργήσετε τα κλειδιά στους πίνακες; ιαγράψτε τες. Στη συνέχεια, προσθέστε τα ακόλουθα πρωτεύοντα και ξένα κλειδιά στους πίνακες που έχετε δηµιουργήσει: 21

22 Πίνακας DEPT: PRIMARY KEY το πεδίο DEPTNO µε όνοµα DEPT_PRIMARY_KEY. Πίνακας EMP: PRIMARY KEY το πεδίο EMPNO µε όνοµα EMP_PRIMARY_KEY. FOREIGN KEY το πεδίο DEPTNO µε όνοµα EMP_FOREIGN_KEY και αναφορά στο πεδίο DEPTNO του πίνακα DEPT. Πίνακας CUSTOMER: PRIMARY KEY το πεδίο CUSTID µε όνοµα CUSTOMER_PRIMARY_KEY. Πίνακας ORD: PRIMARY KEY το πεδίο ORDID µε όνοµα ORD_PRIMARY_KEY. FOREIGN KEY το πεδίο CUSTID µε όνοµα ORD_FOREIGN_KEY και αναφορά στο πεδίο CUSTID του πίνακα CUSTOMER. Πίνακας ITEM: PRIMARY KEY τα πεδία ORDID και ITEMID µε όνοµα ITEM_PRIMARY_KEY. FOREIGN KEY το πεδίο ORDID µε όνοµα ITEM_FOREIGN_KEY και αναφορά στο πεδίο ORDID του πίνακα ORD. Σηµείωση: Ορίστε ως NOT NULL το πεδίο PRODID του πίνακα PRODUCT. Πίνακας PRODUCT: PRIMARY KEY το πεδίο PRODID µε όνοµα PRODUCT_PRIMARY_KEY. 22

23 Βήµα 4 ο : Με την εντολή: DROP TABLE <όνοµα πίνακα>; µπορείτε να διαγράψετε τελείως έναν πίνακα. ιαγράψτε τον πίνακα BONUS. Πώς µπορείτε να διαπιστώσετε αν ο πίνακας έχει πράγµατι διαγραφεί από τη βάση δεδοµένων my_bysiness; 23

24 24

25 Εργαστήριο 4 : Ανάκτηση-Επιλογή-Εµφάνιση δεδοµένων. Η εντολή SELECT 25

26 Η ανάκτηση δεδοµένων από µια βάση δεδοµένων είναι ίσως η πιο συνηθισµένη λειτουργία της SQL. Η πράξη ανάκτησης / επιλογής / εµφάνισης δεδοµένων σε µια βάση δεδοµένων γίνεται µε την εντολή SELECT που έχει την παρακάτω βασική σύνταξη: SELECT <όνοµα στήλης_1>, <όνοµα στήλης_2>,..., <όνοµα στήλης_ν> FROM <όνοµα πίνακα>; ΑΣΚΗΣΕΙΣ Άσκηση 1: Εµφανίστε όλους τους αριθµούς των τµηµάτων, τα ονόµατα των υπαλλήλων που εργάζονται σε αυτά και τον αριθµό των υπευθύνων. Άσκηση 2: Εµφανίστε όλα τα στοιχεία των πινάκων της βάσης DEPT, EMP, CUSTOMER. Η εντολή SELECT µπορεί να συµπεριλάβει και άλλα στοιχεία όπως αριθµητικές παραστάσεις, ψευδώνυµα στηλών, συνένωση στηλών, αλφαριθµητικά ή σύµβολα. Άσκηση 3: Εµφανίστε τα ονόµατα των υπαλλήλων και τους ετήσιους µισθούς που παίρνουν. (Υπόδειξη: δώρα = 1,5 µισθός µήνα) 26

27 Με τη SELECT µπορούµε να δώσουµε και ψευδώνυµα στις στήλες µε τα δεδοµένα που εµφανίζουµε: SELECT <όνοµα στήλης_1> [ψευδώνυµο], <όνοµα στήλης_2> [ψευδώνυµο],..., <όνοµα στήλης_ν> [ψευδώνυµο] FROM <όνοµα πίνακα>; Άσκηση 4: Επαναλάβετε την άσκηση 3 δίνοντας το όνοµα ANNSAL στη στήλη του ετήσιου µισθού. Με την WHERE µπορούµε να βάζουµε και λογικές συνθήκες που φιλτράρουν τα αποτέλεσµατα µας, χρησιµοποιώντας και τους τελεστές AND, OR,!, SELECT όνοµα στήλης_1 [ψευδώνυµο], όνοµα στήλης_2 [ψευδώνυµο],..., όνοµα στήλης_ν [ψευδώνυµο] FROM όνοµα πίνακα; WHERE συνθήκη; Άσκηση 5: Εµφανίστε τους υπαλλήλους που παίρνουν µεγαλύτερη προµήθεια από τον µισθό τους. Άσκηση 6: Εµφανίστε τα τµήµατα που έχουν αριθµό µεγαλύτερο από 20. Άσκηση 7: Εµφανίστε τους MANAGER που κερδίζουν περισσότερα από Άσκηση 8: Εµφανίστε τους υπαλλήλους που είτε είναι MANAGER είτε κερδίζουν πάνω από 2800 το µήνα. 27

28 Άσκηση 9: Εµφανίστε τους MANAGER που δεν είναι στο τµήµα 30. Με την SELECT µπορούµε επίσης να ταξινοµήσουµε τα δεδοµένα που εµφανίζουµε: SELECT <όνοµα στήλης_1> [ψευδώνυµο], <όνοµα στήλης_2> [ψευδώνυµο],..., <όνοµα στήλης_ν> [ψευδώνυµο] FROM <όνοµα πίνακα> ORDER BY <όνοµα πεδίου>; Άσκηση 10: Ταξινοµήστε ως προς το µισθό τις στήλες του EMP. Άσκηση 11: Χρησιµοποιώντας την εντολή SELECT, διατυπώστε 5 δικά σας ερωτήµατα και στη συνέχεια τρέξτε τα στην SQL-SERVER (όλα τα ερωτήµατα θα πρέπει να περιλαµβάνουν τη λέξη WHERE και δύο τουλάχιστον το ORDER BY-ένα να εµφανίζει σε αύξουσα σειρά και το άλλο σε φθίνουσα σειρά το αποτέλεσµα ή κάποια στήλη του αποτελέσµατος). 28

29 Εργαστήριο 5 : Όρος DISTINCT Αύξουσα/φθίνουσα ταξινόµηση Συνένωση στηλών και literals NULL τιµές SQL τελεστές στον όρο WHERE 29

30 30

31 Απόριψη διπλών εγγραφών DISTINCΤ Ο όρος DISTINCT συµπεριλαµβανόµενος στην εντολή SELECT, εµφανίζει όλες τις διαφορετικές τιµές της προσδιορισµένης στήλης (εγγραφές χωρίς επαναλήψεις). SELECT distinct <όνοµα_στήλης>,. Αύξουσα φθίνουσα ταξινόµηση γραµµών ORDER BY H εξ ορισµού (default) σειρά ταξινόµησης των δεδοµένων είναι αύξουσα Με την λέξη DESC (desceding) στον όρο ORDER BY αλλάζουµε την σειρά ταξινόµησης σε φθίνουσα. Ενώ µε την λέξη ASC (asceding) σε αύξουσα σειρά. π.χ. SELECT <όνοµα_στήλης1>,. FROM όνοµα_πίνακα ORDER BY <όνοµα_στήλης1> DESC; Συνένωση στηλών και literals στην εντολη SELECT Ο τελεστής συνένωσης (+) επιτρέπει την συνένωση µιας στήλης µε µια άλλη, την συνένωση αλφαριθµητικών (literals) ή συνδυασµό αλφαριθµητικών µε στήλες, δηµιουργώντας µια παράσταση χαρακτήρων. Ο τελεστής αυτός γράφεται στο ενδιάµεσο των στηλών ή αλφαριθµητικών που πρόκειται να συνενωθούν και να δηµιουργήσουν µια στήλη. SELECT < literal /όνοµα_στήλης> [+ < literal /όνοµα_στήλης>] FROM όνοµα_πίνακα; 31

32 Σαν literal εννοείται οποιοσδήποτε αλφαριθµητικό που επιτρέπεται να xρησιµοποιείται στη SELECT και εµφανίζεται στην έξοδο είτε εκείνης της στήλης που επιθυµείται να συνενώσετε είτε σαν ξεχωριστή ψευδωστήλη. Χειρισµός απροσδιόριστων τιµών ISNULL συνάρτηση Βήµα 1 ο : Εκτελέστε την εντολή select ename,job, sal*12 annual_sal from emp; Βήµα 2 ο : Στη συνέχεια εκτελέστε και την εντολή select ename,job, sal*12+comm annual_sal from emp; Τι παρατηρείτε; Είναι σωστά τα αποτελέσµατα που δίνει η δεύτερη εντολή; Για ποιο λόγο; Η συνάρτηση ISNULL µετατρέπει µια NULL τιµή σε ΝΟN-NULL τιµή. Βήµα 3 ο : Αν τώρα εκτελέσετε την εντολή τι αλλάζει; select ename,job, sal*12+isnull(comm,0) annual_sal from emp; 32

33 SQL τελεστές στον όρο WHERE Τελεστές BETWEEN AND ΙΝ (λίστα) LIKE IS NULL Σηµασία επιλέγει γραµµές που περιέχουν τιµές µέσα από ένα διάστηµα τιµών περιέχουν µία τιµή που µπορεί να υπάρχει µέσα σε µια λίστα τιµών. ταιριάζουν σε ένα µοντέλο χαρακτήρων ή αριθµών είναι NULL Σηµείωση: Μέσα στο LIKE µπορεί να µπει ένας από τους επόµενους χαρακτήρες που να δηλώνουν αντίστοιχα: % : οσουσδήποτε χαρακτήρες _ : ένας χαρακτήρας [ ] : οποιοσδήποτε χαρακτήρας µέσα στη συγκεκριµένη περιοχή, π.χ. [a-f] ή [abcdef]. Υπάρχουν κι άλλοι χαρακτήρες, για περισσότερα µπορείτε να κοιτάξτε στη Βοήθεια (Help). ΑΣΚΗΣΕΙΣ ΑΣΚΗΣΗ 1: Εµφάνισε την παρακάτω έξοδο: employee deptno SMITH works like CLERK ΙN DEPARTMENT 20 ALLEN works like SALESMAN IN DEPARTMENT 30 WARD works like SALESMAN IN DEPARTMENT 30 JONES works like MANAGER IN DEPARTMENT 20 MARTIN works like SALESMAN IN DEPARTMENT 30 BLAKE works like MANAGER IN DEPARTMENT 30 CLARK works like MANAGER IN DEPARTMENT 10 33

34 SCOTT works like ANALYST IN DEPARTMENT 20 KING works like PRESIDENT IN DEPARTMENT 10 TURNER works like SALESMAN IN DEPARTMENT 30 ADAMS works like CLERK IN DEPARTMENT 20 JAMES works like CLERK IN DEPARTMENT 30 FORD works like ANALYST IN DEPARTMENT 20 MILLER works like CLERK IN DEPARTMENT 10 ΑΣΚΗΣΗ 2: Εµφάνισε τα ονόµατα, τον ετήσιο µισθό µαζί µε την προµήθεια και την προµήθεια όλων εκείνων που ο µηνιαίος µισθός τους είναι µεγαλύτερος από την προµήθεια που παίρνουν. Στην έξοδο ο ετήσιος µισθός θα πρέπει να είναι ταξινοµηµένος κατά φθίνουσα σειρά. Αν δύο ή περισσότεροι υπάλληλοι έχουν τον ίδιο µισθό τότε να εµφανίζεται κατά αλφαβητική σειρά. ΑΣΚΗΣΗ 3: Εµφάνισε όλους τους υπαλλήλους που έχουν σαν τρίτο γράµµα του ονόµατος τους το R. ΑΣΚΗΣΗ 4: Ποιοι είναι οι υπάλληλοι που δεν έχουν manager; ΑΣΚΗΣΗ 5: Εµφάνισε όλα τα τµήµατα των οποίων ο αριθµός είναι 10 ή 30. (Να λυθεί µε δύο τρόπους). ΑΣΚΗΣΗ 6: Ποια είναι τα επαγγέλµατα των υπαλλήλων που απασχολούνται σ όλη την εταιρεία; ΑΣΚΗΣΗ 7: Εµφάνισε όλες τις λεπτοµέρειες για τους υπαλλήλους των τµηµάτων 10 και 20 µε αλφαβητική σειρά των ονοµάτων τους (Ζ Α). ΑΣΚΗΣΗ 8: Εµφάνισε όλους τους υπαλλήλους που έχουν έναν από τους τρεις MGR αριθµούς : 7902,7566,7788 ΑΣΚΗΣΗ 9: Εµφάνισε µία λίστα µε τα ονόµατα των υπαλλήλων που το όνοµα τους αρχίζει είτε από S είτε έχει ακριβώς 4 χαρακτήρες. 34

35 ΑΣΚΗΣΗ 10: Εµφάνισε όλους εκείνους τους υπαλλήλους που ο µισθός τους δεν είναι µεταξύ 1000 και ΑΣΚΗΣΗ 11: Βρες όλους τους υπαλλήλους που η δουλειά τους δεν αρχίζει από Μ. ΑΣΚΗΣΗ 12: Εµφάνισε τα ονόµατα, το επάγγελµα και τον µισθό όλων των υπαλλήλων οι οποίοι έχουν διευθυντή ΑΣΚΗΣΗ 13: Βρες όλους υπαλλήλους που είναι CLERK και που ο µισθός τους είναι µεταξύ 100 και Στη συνέχεια βρες όλους τους υπαλλήλους που είναι είτε CLERK είτε κάτι άλλο και που ο µισθός τους κυµαίνεται στο ίδιο επίπεδο µε τους προηγούµενους. είτε αν υπάρχει διαφορά σ αυτά τα δύo ερωτήµατα, αν ναι τότε ποια είναι; ΑΣΚΗΣΗ 14: Εµφάνισε όλους τους υπαλλήλους (ονόµατα,αριθµός τµήµατος και ηµεροµηνία πρόσληψης)που προσλήφθηκαν κατά το έτος (να γίνει µε δυο τρόπους like, και between and) ΑΣΚΗΣΗ 15: Βρες όλους τους διευθυντές (managers) µε µισθό πάνω από 1500 και όλους τους πωλητές. Στη συνέχεια βρες όλους τους manager και salesman που έχουν µισθό πάνω από Ζητούνται δύο διαφορετικά πράγµατα, ποια είναι τα ερωτήµατα και σηµείωσε τη διαφορά τους. 35

36 36

37 Εργαστήριο 6 : DATE και CONVERSION Functions 37

38 DATE FUNCTIONS Οι DATE functions είναι οι ακόλουθες: DATEADD DATEDIFF DATENAME DATEPART DAY GETDATE MONTH YEAR Όπως όλες οι συναρτήσεις, έτσι και αυτές µπορούν να χρησιµοποιηθούν µέσα σε ένα SELECT ή WHERE όρο, ή σε οποιαδήποτε άλλη περίπτωση σε συνδυασµό µεταξύ τους ( η µία µέσα στην άλλη) ώστε να επιτευχθεί το επιθυµητό αποτέλεσµα. GETDATE Η συνάρτηση GETDATE επιστρέφει την τρέχουσα ηµεροµηνία και ώρα. Σύνταξη: GETDATE() π,χ, SELECT GETDATE() DAY, MONTH και YEAR Οι συναρτήσεις DAY, MONTH και YEAR επιστρέφουν έναν ακέραιο που αναπαριστάνει την ηµέρα, τον µήνα ή το χρόνο αντίστοιχα µιας συγκεκριµένης ηµεροµηνίας. Σύνταξη: DAY(date) MONTH(date) YEAR(date) 38

39 Παρατηρήση: Αυτές οι συναρτήσεις επιστρέφουν το ίδιο µε αυτό που θα επιστρέψουν οι συναρτήσεις DATEPART(dd, date). DATEPART(mm, date). DATEPART(yy, date). αντίστοιχα. Θα εξεταστούν αναλυτικότερα παρακάτω. π.χ. SELECT DAY('11/19/2000') AS 'Day Number' DATENAME και DATEPART H συνάρτηση DATENAME επιστρέφει ένα συγκεκριµένο µέρος κάποιας ηµεροµηνίας (έτος, µήνα, µέρα, ) σαν character string, ενώ η DATEPART επιστρέφει το ίδιο αλλά σαν integer value. Σύνταξη: DATENAME(date_part,date) DATEPART(date_part,date) π.χ. είτε το αποτέλεσµα από τα παρακάτω. και SELECT DATENAME(mm, GETDATE()) AS 'Month Date' SELECT DATEPART(month, GETDATE()) AS 'Month Date' 39

40 ΠΙΝΑΚΑΣ : Τα date parts που χρησιµοποιούνται στις DATE functions Date Part Abbreviation Tιµές Year yy Month mm 1-12 Day of Year dy Day dd 1-31 Week wk 1-54 Weekday dw 1-7(Κυρ-Σαβ) Hour hh 0-23 Minute mi 0-59 Second ss 0-59 Millisecond ms DATEADD Η συνάρτηση DATEADD επιστρέφει µία καινούρια datetime τιµή που προκύπτει από την πρόσθεση συγκεκριµένης date part τιµής σε µια ηµεροµηνία Σύνταξη: DATEADD(date_part,number,date) DATEDIFF H συνάρτηση DATEDIFF επιστρέφει την διαφορά µεταξύ δύο συγκεκριµένων ηµεροµηνιών (σε έτη, σε µέρες, κ.ο. ανάλογα µε το τι έχει οριστεί ως date_part) Σύνταξη: DATEFIFF(date_part,date1,date2) 40

41 CONVERSION FUNCTIONS Πολλές φορές δηµιουργείται η ανάγκη να µετατρέψουµε έναν ακέραιο σε χαρακτήρα, ή έναν πραγµατικό σε ακέραιο, ή ακόµη µια ηµεροµηνία σε χαρακτήρα. Γι αυτό το σκοπό υπάρχει η συνάρτηση CONVERT όπου: Σύνταξη: CONVERT(datatype[(length)], expression [, style]) όπου datatype µπορεί να είναι το data type στο οποίο θέλουµε να γίνει η µετατροπή της στήλης (ή έκφρασης) που ορίζουµε µε το expression, ενώ το style χρησιµοποιείται στις περιπτώσεις όπου µετατρέπουµε datetime τιµές µε συγκεκριµένο format. π.χ. SELECT ENAME + CONVERT(CHAR(4),MGR) FROM EMP; ή SELECT CONVERT(CHAR(24),hiredate,104) FROM EMP; αν το style είναι 0 ή 100 τότε εχώ το default format για τη ηµεροµηνία, Υπάρχουν και άλλα όπως από , δοκιµάστε να δείτε πως εµφανίζονται κάθε φορά. ΠΡΟΣΟΧΗ! Υπάρχουν κάποιοι περιορισµοί σε σχέση µε το αν µπορούν να µετατραπούν κάποιοι τύποι σε κάποιους άλλους. είτε τη βοήθεια που σας προσφέρεται µέσα από το λογισµικό που χρησιµοποιείται. 41

42 ΑΣΚΗΣΕΙΣ ΑΣΚΗΣΗ 1: Να παράγετε την εξής έξοδο για όλους τους εργαζόµενους. Να είναι ταξινοµηµένα σύµφωνα µε την δεύτερη στήλη ENAME DATE_HIRED JONES April, SMITH December, JAMES December, FORD December, SCOTT December, ALLEN February, WARD February, ADAMS January, MILLER January, CLARK June, BLAKE May, KING November, MARTIN September, TURNER September, ΑΣΚΗΣΗ 2: Να παράγετε την εξής έξοδο (την σηµερινή ηµεροµηνία): simera einai November kai o minaς exei 22 ΑΣΚΗΣΗ 3: Παράγετε το εξής report για όλους τους εργαζοµένους που το όνοµα τους αρχίζει από S, και όπου το REVIEW είναι η ηµεροµηνία ακριβώς ένα χρόνο µετά. Να γίνει ταξινόµηση σύµφωνα µε το REVIEW. ENAME HIREDATE REVIEW SMITH 1980/12/ /12/17 SCOTT 1982/12/ /12/09 42

43 ΑΣΚΗΣΗ 4: Να εµφανίσετε όλους τους υπαλλήλους µε τα ονόµατά τους και τον κωδικό του αφεντικού τους (ΜGR). Σε όσους δεν υπάρχει αφεντικό να εµφανίζετε η λέξη UNMANAGEABLE ΑΣΚΗΣΗ 5: Εµφανίστε την ακριβή ηµεροµηνία α) µε επιπλέον δύο µήνες καθώς και τον αριθµό των ηµερών που έχουµε µέχρι τότε (να είναι σε µορφή π.χ. 22 Jan 2001), β) µε µείον 15 χρόνια καθώς και τον αριθµό των ηµερών που έχουν περάσει από τότε. ΑΣΚΗΣΗ 6: Βρείτε τα ονόµατα των υπαλλήλων που η ηµεροµηνία πρόσληψής τους έγινε 8 µήνες µετά από την 3/4/81. Να εµφανιστεί ο µήνας που έγινε η πρόσληψη σε περιγραφική µορφή (π.χ. August) και ο µισθός τους. ώστε ονόµατα σε όσες στήλες δεν έχουν στο αποτέλεσµα. ΑΣΚΗΣΗ 7: Αν υποθέσουµε ότι ο µισθός αυξάνεται κατά 15% το χρόνο, να εµφανίσετε τα ονόµατα των υπαλλήλων, την τρέχουσα ηµεροµηνία, το µισθό που παίρνουν τώρα, την ηµεροµηνία σε ένα χρόνο από τώρα και το µισθό που θα παίρνουν τότε (υποθέτουµε ότι το hiredate είναι σηµερινό). ΑΣΚΗΣΗ 8: Να εµφανισθούν οι στήλες (Prodid, Start day, Start month, Start year, End day, End month, End year, Stdprice) του πίνακα που αφορά τις τιµές των προϊόντων, ταξινοµηµένα κατά prodid και startdate, όπως φαίνονται παρακάτω. Να ελεγχθεί η συνέπεια των δεδοµένων του πίνακα. Είναι απαραίτητη η χρήση του πεδίου enddate? Prodid Start day Start month Start year End day End month End year Stdprice

44

45 Εργαστήριο 7 : GROUP Functions 45

46 GROUP FUNCTIONS AVG = βρίσκει τον µέσο όρο COUNT = υπολογίζει όλες τις γραµµές MAX = βρίσκει τον µέγιστο όρο MIN = βρίσκει τον ελάχιστο όρο SUM = προσθέτει τιµές µιας στήλης Όλες έχουν την ίδια σύνταξη : SELECT function1(column_1 *),.., function2(column_1 *) FROM table ΠΑΡΑΤΗΡΗΣΗ: Η GROUP BY πρόταση χρησιµοποιείται πολύ συχνά µε τις GROUP FUNCTIONS µε σκοπό να χωρίζει τις εγγραφές του πίνακα σε µικρότερες οµάδες π.χ. SELECT JOB,AVG(SAL) FROM EMP GROUP BY JOB είτε τι εµφανίζει. οκιµάστε και χωρίς GROUP BY. H HAVING ΠΡΟΤΑΣΗ ΚΑΙ ΟΙ GROUP FUNCTIONS Η HAVING πρόταση όταν χρησιµοποιείται µε τις GROUP FUNCTIONS και µε την GROUP BY (υποχρεωτικά) έχει σκοπό να περιορίσει τις οµάδες εγγραφών που θα εµφανιστούν. 46

47 π.χ. SELECT DEPTNO,AVG(SAL) FROM EMP GROUP BY DEPTNO HAVING COUNT(*)>3 όπου η HAVING γράφεται µετά την GROUP BY, αφού πρώτα δηµιουργηθούν οι οµάδες εγγραφών και κατόπιν να αποµονωθούν αυτές που θα εµφανιστούν. οκίµασε SELECT DEPTNO,AVG(SAL) FROM EMP WHERE COUNT(*)>3 GROUP BY DEPTNO τι παρατηρείς; ΑΣΚΗΣΕΙΣ ΑΣΚΗΣΗ 1: Παράγετε την εξής έξοδο για όλους τους εργαζόµενους, όπου MESOS_MISTHOS ο µέσος όρος µισθών ανά τµήµα και ανά κατηγορία δουλειάς. DEPTNO JOB MESOS_MISTHOS CLERK MANAGER PRESIDENT ANALYST CLERK MANAGER CLERK MANAGER SALESMAN (9 row(s) affected) 47

48 ΑΣΚΗΣΗ 2: Ποιός είναι ο µέγιστος µισθός για κάθε κατηγορία δουλειάς στην εταιρεία. ΑΣΚΗΣΗ 3: Εµφάνισε µόνο εκείνες τις δουλειές όπου ο µέγιστος µισθός είναι µεγαλύτερος ή ίσος µε $3000. ΑΣΚΗΣΗ 4: Βρείτε τον ελάχιστο, τον µεγαλύτερο και τον µέσο µισθό από κάθε τύπο JOB. Τα αποτελέσµατα να εµφανιστούν χωρίς δεκαδικά. ΑΣΚΗΣΗ 5: Εµφανίστε την εξής έξοδο. DEPTNO AVERAGE όπου AVG(SAL)>2000 ΑΣΚΗΣΗ 6: Βρείτε πόσοι manager υπάρχουν συνολικά. ΑΣΚΗΣΗ 7: Βρείτε όλα τα τµήµατα που έχουν πάνω από 3 υπαλλήλους. Εµφανίστε το αριθµό τµήµατος και το σύνολο των υπαλλήλων στο αντίστοιχο τµήµα. ΑΣΚΗΣΗ 8: Βρείτε τους κωδικούς των πελατών εκείνων που έχουν κάνει από τρεις παραγγελίες και πάνω. Στο αποτέλεσµα να εµφανίζονται και πόσες παραγγελίες έκανε ο καθένας από τους πελάτες αυτούς. ώστε ένα όνοµα στη στήλη αυτή. 48

49 ΑΣΚΗΣΗ 9: Βρείτε τη συνολική ποσότητα (QTY) παραγγελίας για εκείνες τις παραγγελίες που έχουν κωδικό τεµαχίου µικρότερο ή ίσο µε 5. Στο αποτέλεσµα να εµφανίζονται ο κωδικός του τεµαχίου καθώς η αντίστοιχη συνολική ποσότητα (δώστε ένα όνοµα στη στήλη αυτή). ΑΣΚΗΣΗ 10: Βρείτε το µέσο όρο της τρέχουσας τιµής (ACTUAL PRICE) ενός προϊόντος για τις παραγγελίες εκείνες που έχουν κωδικό ίσο µε 615 ή µικρότερο από 608. Στη στήλη που εµφανίζεται ο µέσος όρος της τρέχουσας τιµής του προϊόντος δώστε κατάλληλο όνοµα. 49

50 50

51 Εργαστήριο 8: UNION, SOUNDEX, DIFFERENCE, VIEWS, SUBQUERIES 51

52 52

53 UNION Η εντολή αυτή συνδυάζει τα αποτελέσµατα από δυο η περισσότερες queries σε ένα µόνο πεδίο που αποτελείται από τις γραµµές που ανήκουν σε όλες τις queries της UNION. Η σύνταξη έχει ως ακολούθως: select_statement UNION [ALL] select_statement [UNION [ALL] select_statement][,...n] select_statement: Είναι µια SELECT statement που επιστρέφει αποτελέσµατα που θα πρέπει να συνδυαστούν µε τα δεδοµένα από την άλλη SELECT statement, οι οποίες συνδέονται µεταξυ τους µε UNION. Τα αποτελέσµατα από κάθε ένα SELECT θα πρέπει να είναι του ιδίου ή συµβατού τύπου. UNION: Είναι το keyword που υποδεικνύει ότι πολλαπλά result sets πρόκειται να συνδυαστούν και να επιστραφούν ως ένα ενιαίο single result set. ALL: Όταν η UNION εντολή συνοδεύεται από το keyword ALL όλες οι διπλές έγγραφες που υπάρχουνε στις στήλες που προκύπτουν από την εκτέλεση µιας Union εντολης, παραµένουν. Στην περίπτωση που δεν αναφέρεται, τότε όλες οι διπλές έγγραφες παραλείπονται. n: Είναι µια µεταβλητή που χρησιµοποιούµε για να δηλώσουµε ότι πολλά SELECT statements µπορούνε να προστεθούν µε ένα έχοντας ανάµεσα τους µια UNION έκφραση. 53

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

SQL Data Manipulation Language

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

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

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

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

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

ΚΕΦΑΛΑΙΟ ΤΡΙΤΟ ΕΝΤΟΛΕΣ SQL

ΚΕΦΑΛΑΙΟ ΤΡΙΤΟ ΕΝΤΟΛΕΣ SQL ΚΕΦΑΛΑΙΟ ΤΡΙΤΟ ΕΝΤΟΛΕΣ SQL 3.1 Εντολή επιλογής δεδομένων Η εντολή επιλογής δεδομένων select έχει την γενική μορφή SELECT FROM [WHERE ] [GROUP BY ]

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

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

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

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

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ 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 Μια γλώσσα σχεσιακής βάσης

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

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

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

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

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

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

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

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

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

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

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

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

DELETE, UPDATE, INSERT.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου]

Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου] ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου] Επιμέλεια: Καρβούνης Ευάγγελος, PhD, Επιστημονικός Συνεργάτης του Τμήματος Αντωνιάδης Νικόλαος, Καθηγητής Οκτώβριος

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

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

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

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

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

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

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

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

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

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο)

TEC610 Δυναμικές Εφαρμογές Διαδικτύου (ΣΤ εξάμηνο) TEC610 (ΣΤ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Εαρινό εξάμηνο Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου]

Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου] ΤΕΙ ΔΥΤΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Βάσεις Δεδομένων Ι [Σημειώσεις Εργαστηρίου] Χειμερινό Εξ. 2013-14 Επιμέλεια: Καρβούνης Ευάγγελος Οκτώβριος 2013 Περιεχόμενα 1 Σχεδιασμός Βάσης...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Αρχεία και Βάσεις Δεδομένων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Αρχεία και Βάσεις Δεδομένων Διάλεξη 10η: SQL Μέρος 3ο Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών SQL Data Manipulation Language Τελεστής union συνδυάζει subselects

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

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

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

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

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

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

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

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

ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ 3 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΡΓΑΣΤΗΡΙΟ 3 ΔΕΣΠΟΙΝΑ ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ dpap@unipi.gr 2 ΤΙ ΕΙΝΑΙ Η SQL? (1/2) Η SQL (Structured Query Language) αποτελεί μια πρότυπη

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

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

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

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

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

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

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

Διαχείριση Πολιτισμικών Δεδομένων Διαχείριση Πολιτισμικών Δεδομένων Μάθημα 7 Γλώσσα Ερωτημάτων SQL Τζανέτος Πομόνης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Συντήρησης Πολιτισμικής Κληρονομιάς Βασικές Έννοιες Σχεσιακή

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

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

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

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

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

Βάσεις Δεδομένων Ι SQL Μέρος 1 ο. Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ Βάσεις Δεδομένων Ι - 03 SQL Μέρος 1 ο Φώτης Κόκκορας (MSc/PhD) Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Θεσσαλίας Γιατί SQL; Η SQL είναι γλώσσα πολύ υψηλού επιπέδου Επιτρέπει να λέμε εύκολα τι θέλουμε να κάνουμε

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Certified Data Base Designer (CDBD)

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Query-by-Example (QBE)

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

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

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

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

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

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

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

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

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

Σχεδίαση Βάσεων Δεδομένων Σχεδίαση Βάσεων Δεδομένων Η ιστορία των Βάσεων Δεδομένων History of the Database 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved. Στόχοι Το μάθημα αυτό καλύπτει τους ακόλουθους στόχους:

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

Ερωτήματα SQL με σύζευξη πινάκων ΜΗ ΕΙΝΑΙ ΒΑΣΙΛΙΚΗΝ ΑΤΡΑΠΟΝ ΕΠΙ ΓΕΩΜΕΤΡΙΑΝ Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr 1 / 30 Σκοπός του μαθήματος Εκτελείτε ερωτήματα ανάσυρσης δεδομένων από

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

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

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

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

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

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

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

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

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

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

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

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

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

Υπολογιστικά Συστήματα

Υπολογιστικά Συστήματα Υπολογιστικά Συστήματα Ενότητα 1: Εισαγωγικά Μαθήματος & Κυριότερες Συναρτήσεις του Microsoft Excel 2010 Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό

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

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

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

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

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

Εισαγωγή στις Βάσεις Δεδομζνων II ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΠΑΝΕΠΙΣΗΜΙΟ ΚΡΗΣΗ Εισαγωγή στις Βάσεις Δεδομζνων II Ενότητα: Η γλώσσα SQL Διδάσκων: Πηγουνάκης Κωστής ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΣΧΟΛΗ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

Περιεχόμενα. Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL. Συνένωση Σχέσεων στην SQL2 (3) Συνένωση Σχέσεων στην SQL2. (Join Relations Feature in SQL)

Περιεχόμενα. Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL. Συνένωση Σχέσεων στην SQL2 (3) Συνένωση Σχέσεων στην SQL2. (Join Relations Feature in SQL) Περιεχόμενα Βάσεις Δεδομένων Προχωρημένα Ερωτήματα SQL Παύλος Εφραιμίδης Προχωρημένα Ερωτήματα SQL Συνένωση Συναθροιστικές Συναρτήσεις Ομαδοποίηση Βάσεις Δεδομένων SQL - Μέρος Τρίτο 1 Βάσεις Δεδομένων

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

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

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

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

Data Cube. Μ.Χατζόπουλος 1

Data Cube. Μ.Χατζόπουλος 1 Data Cube Μ.Χατζόπουλος Μ.Χατζόπουλος 1 Ανάλυση εδοµένων Εξαγωγή συναθροιστικών δεδοµένων από µια βάση δεδοµένων Οπτικοποίηση των αποτελεσµάτων Μπορούνοιπαραδοσιακέςεπίπεδεςβάσειςδεδοµένων; Οι σχεσιακές

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

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

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

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

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

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

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

Αντικείμενα 2 ου εργαστηρίου

Αντικείμενα 2 ου εργαστηρίου 1.0 Σχολή Διοίκησης και Οικονομίας (ΣΔΟ) Τμήμα Λογιστικής και Χρηματοοικονομικής Διδάσκων: Δρ. Γκόγκος Χρήστος Μάθημα: Πληροφορική Ι (εργαστήριο) Ακαδημαϊκό έτος: 2013-2014 Εξάμηνο Α 2 ο Φυλλάδιο Ασκήσεων

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

Ενεργές ΒΔ. Παύλος Εφραιμίδης. Βάσεις Δεδομένων Ενεργές ΒΔ 1

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

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου) ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου) 1. Εισαγωγή Χαρακτηριστικά της γλώσσας Τύποι δεδοµένων Γλώσσα προγραµµατισµού

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

Γνωριµία µε τη Microsoft Access

Γνωριµία µε τη Microsoft Access Γνωριµία µε τη Microsoft Access ηµιουργία νέας βάσης δεδοµένων Έναρξη - Προγράµµατα - Microsoft Access - ηµιουργία νέας βάσης δεδοµένων µε χρήση Κενής βάσης δεδοµένων - ΟΚ Επιλέγουµε Φάκελο και στο Όνοµα

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

Βάσεις δεδομένων. (7 ο μάθημα) Ηρακλής Βαρλάμης

Βάσεις δεδομένων. (7 ο μάθημα) Ηρακλής Βαρλάμης Βάσεις δεδομένων (7 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα SQL Βασικές πράξεις Πράξεις συνόλων Συνενώσεις Συναθροιστικές συναρτήσεις Ομαδοποιήσεις 10/4/2014 Βάσεις Δεδομένων 2 Η γλώσσα

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

Έχουµε την βάση της σχολής που αποτελείται από τους παρακάτω πίνακες.

Έχουµε την βάση της σχολής που αποτελείται από τους παρακάτω πίνακες. Πανεπιστήµιο Ιωαννίνων Τµήµα Μαθηµατικών Μάθηµα: Βάσεις εδοµένων (741) Εργαστηριακό Τεστ 21/12/2004 Έχουµε την βάση της σχολής που αποτελείται από τους παρακάτω πίνακες. Όνοµα πίνακα: Students Γνώρισµα

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

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

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

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

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

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

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

Προγραμματισμός Ι. Εγγραφές. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Εγγραφές. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Εγγραφές Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Η Ανάγκη Ομαδοποίησης Πολλές φορές έχουμε πληροφορίες διαφορετικού τύπου οι οποίες όμως έχουν μεγάλη

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

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

Τεχνολογία Πολιτισμικού Λογισμικού Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Τεχνολογία Πολιτισμικού Λογισμικού Ενότητα 10: Γλώσσα Ερωτημάτων SQL Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται

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

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

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

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