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

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

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

Transcript

1 ΚΕΦΑΛΑΙΟ ΤΡΙΤΟ ΕΝΤΟΛΕΣ SQL 3.1 Εντολή επιλογής δεδομένων Η εντολή επιλογής δεδομένων select έχει την γενική μορφή SELECT <λίστα στηλών > FROM <λίστα πινάκων> [WHERE <συνθήκη>] [GROUP BY <γνωρίσματα ομαδοποίησης>] [HAVING <συνθήκη ομαδοποίησης>] [ORDER BY <λίστα χαρακτηριστικών>] Θα πρέπει να έχουμε υπόψη ότι: 1. Η λίστα του select συνήθως αποτελείται από ονόματα στηλών χωρισμένα μεταξύ τους με κόμμα ή με * για να δηλώνει την επιλογή όλων των στηλών με την σειρά που ορίστηκαν στην δημιουργία του πίνακα. Πάντως μπορεί να περιλαμβάνει μια ή περισσότερες εκφράσεις χωρισμένες μεταξύ τους με κόμμα, όπου έκφραση μπορεί να είναι σταθερά, όνομα στήλης, συνάρτηση, υποερώτηση ή άλλο συνδυασμό. 2. Μπορούμε να εκτελέσουμε υπολογισμούς σε στήλες που έχουν δεδομένα αριθμητικά ή σε αριθμητικές σταθερές μιας λίστας επιλογής. 3. Οι αριθμητικοί τελεστές που είναι διαθέσιμοι παρουσιάζονται στον πίνακα 3.1 Πίνακας 3.1 Αριθμητικοί Τελεστές Τελεστής Πράξη + Πρόσθεση - Αφαίρεση / Διαίρεση * Πολλαπλασιασμός % Υπόλοιπο 4. Οι αριθμητικοί τελεστές πρόσθεσης, αφαίρεσης, διαίρεσης και πολλαπλασιασμού μπορούν να εφαρμοστούν σε οποιεσδήποτε στήλες με αριθμούς. Η χρησιμοποίηση παρενθέσεων αλλάζει την σειρά της εκτέλεσης. Υπολογισμοί μέσα σε παρενθέσεις εκτελούνται πρώτοι σε προτεραιότητα. 5. Η προαιρετική λέξη κλειδί distinct περιορίζει τις πολλαπλές σειρές από τα αποτελέσματα μιας εντολής select. Αν δεν καθορίσουμε το distinct παίρνουμε όλες τις σειρές, συμπεριλαμβανομένων και των πολλαπλών. Αν καθορίσουμε προαιρετικά το all πριν την λίστα επιλογής θα πάρουμε όλες τις σειρές. Το all είναι προκαθορισμένο.

2 6. Η γενική μορφή της πρότασης του where είναι: where <έκφραση> συγκριτικός τελεστής <έκφραση> Στον πίνακα 3.2 που ακολουθεί έχουμε τους συγκριτικούς τελεστές που χρησιμοποιούνται στην SQL. Πίνακας 3.2 Συγκριτικοί Τελεστές Τελεστής Σημασία = ίσον > μεγαλύτερο < μικρότερο >= μεγαλύτερο ή ίσο <= μικρότερο ή ίσο!= όχι ίσο <> διάφορο!> όχι μεγαλύτερο!< όχι μικρότερο 1. Για την εύρεση στοιχείων μέσα σε ή έξω από περιοχές τιμών έχουμε τις λέξεις κλειδιά between και not between αντίστοιχα. 2. Οι λέξεις κλειδιά in και not in μας επιτρέπουν να ελέγχουμε αν κάποιες τιμές ταιριάζουν ή όχι με μια λίστα τιμών αντίστοιχα. 3. Η λέξη κλειδί like χρησιμοποιείται για την επιλογή σειρών που περιέχουν πεδία που ταιριάζουν με συγκεκριμένα τμήματα ορμαθού χαρακτήρων (strings). Η στήλη που μας ενδιαφέρει συγκρίνεται με ένα ορμαθό χαρακτήρων που μπορεί να περιέχει τα παρακάτω ειδικά σύμβολα Πίνακας 3.3 Ειδικά σύμβολα για ταίριασμα σε strings Σύμβολα Σημασία % Υποκαθιστά μηδέν, ένα ή και περισσότερους χαρακτήρες _ [προδιαγραφή] [^προδιαγραφή] Υποκαθιστά ένα και μόνο χαρακτήρα Οι αγκύλες μπορούν να δεχτούν σαν προδιαγραφή ισοδύναμα: [a-f] όπου a είναι η αρχή ενός εύρους χαρακτήρων και f το τέλος ενός εύρους χαρακτήρων, ενώ η είναι ένας ειδικός χαρακτήρας που μπαίνει μεταξύ αρχής και τέλους [abcdef] και ελέγχονται οι χαρακτήρες abcdef Το σύμβολο caret ^, σημαίνει να μην συμπεριλαμβάνεται. j^[á-f] σημαίνει όχι στην περιοχή "a-f"; ενώ [^a2br] σημαίνει "όχι a, 2, b, ήr. Τα δεδομένα της στήλης μπορούν να συγκριθούν με σταθερές, μεταβλητές ή και άλλες στήλες που περιέχουν αυτούς τους πασπαρτού (wildcard) χαρακτήρες. Όταν χρησιμοποιούνται σταθερές μπαίνουν μέσα σε αποστρόφους. 4. Όταν υπάρχουν απροσδιόριστες τιμές (null values) σε ένα πεδίο σημαίνει είτε ότι οι τιμές είναι άγνωστες είτε ότι δεν είναι διαθέσιμες. Για να εμφανιστούν οι απροσδιόριστες ή οι μη απροσδιόριστες τιμές χρησιμοποιούμε στην πρόταση του where where <όνομα στήλης> is [not] null 2

3 5. Οι λογικοί τελεστές and, or και not χρησιμοποιούνται για να συνδέουμε συνθήκες σε προτάσεις που περιέχουν το where. Όταν υπάρχουν περισσότεροι από ένας λογικοί τελεστές σε μια συνθήκη, τότε η σειρά προτεραιότητας είναι: not, and, or. 6. Η group by χρησιμοποιείται για τον διαχωρισμό ενός πίνακα σε ομάδες (groups). Μπορούμε να ομαδοποιήσουμε με βάση το όνομα της στήλης ή τα αποτελέσματα υπολογιζόμενων στηλών όταν χρησιμοποιούνται αριθμητικοί τύποι δεδομένων. 7. Η πρόταση order by μπορεί να χρησιμοποιηθεί σε συνδυασμό με την group by για να διατάσσονται τα αποτελέσματα με ένα συγκεκριμένο τρόπο. Η θέση της πρότασης order by είναι μετά από την πρόταση group by. 8. Οι συγκεντρωτικές συναρτήσεις χρησιμοποιούνται για ομαδοποιήσεις, ταξινομήσεις και υπολογισμούς σε αποτελέσματα ερωτήσεων. Χρησιμοποιούνται με τις προτάσεις group by, having και order by. Οι συγκεντρωτικές συναρτήσεις και τα αποτελέσματα τα οποία παράγουν φαίνονται στον πίνακα 3.1 που ακολουθεί: Πίνακας 3.4 Συγκεντρωτικές συναρτήσεις και αποτελέσματα Συγκεντρωτική συνάρτηση Αποτέλεσμα sum([all/distinct]έκφραση) avg ([all/distinct]έκφραση) count([all/distinct]έκφραση) count(*) max(έκφραση) min (έκφραση) Το σύνολο τιμών σε αριθμητική στήλη Ο μέσος όρος τιμών σε αριθμητική στήλη Το πλήθος των μη απροσδιόριστων τιμών στήλης Το πλήθος των επιλεχθέντων γραμμών Η μεγαλύτερη τιμή σε έκφραση Η μικρότερη τιμή σε έκφραση 9. Η επιλογή ομάδων δεδομένων γίνεται και με την πρόταση having. Χρησιμοποιείται όταν στην συνθήκη συμμετέχει μία συγκεντρωτική συνάρτηση. Φυσικά, η having μπορεί να αντικαταστήσει την where και σε περιπτώσεις όπου στην συνθήκη δεν υπάρχει συγκεντρωτική συνάρτηση. Η εφαρμογή των παραπάνω φαίνεται στις ασκήσεις που ακολουθούν. ΑΣΚΗΣΗ 1 α) Για να εμφανίσουμε πλήρη στοιχεία για όλους τους σπουδαστές θα δώσουμε select * from ΣΠΟΥΔΑΣΤΕΣ; Αριθμός_ Μητρώου Ονοματεπώνυμο Τμήμα Ημερομηνία_Εγγραφής 9146 ΤΖΟΥΒΑΡΑΣ ΓΕΩΡΓΙΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΏΝ :00: ΚΑΜΠΕΡΙΔΗΣ ΙΩΑΝΝΗΣ ΒΙΟΜΗΧΑΝΙΚΗ ΠΛΗΡΟΦΟΡΙΚΗ :00: ΑΚΡΙΤΑ ΧΡΙΣΤΙΝΑ ΛΟΓΙΣΤΙΚΗΣ :00: ΝΙΚΟΛΑΙΔΗΣ ΝΙΚΟΣ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ :00:

4 9283 ΨΑΡΑΣ ΔΗΜΟΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ :00: ΠΡΟΔΡΟΜΟΥ ΑΝΑΣΤΑΣΙΑ ΗΛΕΚΤΡΟΛΟΓΙΑΣ :00: ΝΙΚΟΛΑΟΥ ΦΩΤΕΙΝΗ ΛΟΓΙΣΤΙΚΗΣ :00: ΤΖΕΛΕΠΗΣ ΔΗΜΗΤΡΗΣ ΜΗΧΑΝΟΛΟΓΙΑΣ :00: ΖΑΦΕΙΡΙΟΥ ΧΡΗΣΤΟΣ ΛΟΓΙΣΤΙΚΗΣ :00: ΣΤΕΦΑΝΙΔΟΥ ΜΑΡΙΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΏΝ :00: β) Για να εμφανίσουμε Ονοματεπώνυμο και Τμήμα για όλους τους σπουδαστές θα δώσουμε select Ονοματεπώνυμο, Τμήμα from ΣΠΟΥΔΑΣΤΕΣ; Ονοματεπώνυμο ΤΖΟΥΒΑΡΑΣ ΓΕΩΡΓΙΟΣ ΚΑΜΠΕΡΙΔΗΣ ΙΩΑΝΝΗΣ ΑΚΡΙΤΑ ΧΡΙΣΤΙΝΑ ΝΙΚΟΛΑΙΔΗΣ ΝΙΚΟΣ ΨΑΡΑΣ ΔΗΜΟΣ ΠΡΟΔΡΟΜΟΥ ΑΝΑΣΤΑΣΙΑ ΝΙΚΟΛΑΟΥ ΦΩΤΕΙΝΗ ΤΖΕΛΕΠΗΣ ΔΗΜΗΤΡΗΣ ΖΑΦΕΙΡΙΟΥ ΧΡΗΣΤΟΣ ΣΤΕΦΑΝΙΔΟΥ ΜΑΡΙΑ Τμήμα ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΏΝ ΒΙΟΜΗΧΑΝΙΚΗ ΠΛΗΡΟΦΟΡΙΚΗ ΛΟΓΙΣΤΙΚΗΣ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΗΛΕΚΤΡΟΛΟΓΙΑΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ ΛΟΓΙΣΤΙΚΗΣ ΜΗΧΑΝΟΛΟΓΙΑΣ ΛΟΓΙΣΤΙΚΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΏΝ γ) Για να εμφανίσουμε διακριτούς Αριθμούς_Μητρώου των σπουδαστών από τον πίνακα ΒΑΘΜΟΛΟΓΙΕΣ θα δώσουμε select distinct Αριθμός_Μητρώου from ΒΑΘΜΟΛΟΓΙΕΣ; Αριθμός_Μητρώου δ) Για να εμφανίσουμε τον Τίτλο_Μαθήματος και τις Διδακτικές_μονάδες προσαυξημένες κατά 50% μετονομασμένες σε Διδακτικές θα δώσουμε 4

5 select Τίτλος_Μαθήματος, Διδακτικές=Διδακτικές_μονάδες *1.5 from ΜΑΘΗΜΑΤΑ; Τίτλος_Μαθήματος Διδακτικές ΜΑΘΗΜΑΤΙΚΑ 7,5 ΜΑΡΚΕΤΙΝΓΚ 7,5 ΛΟΓΙΣΤΙΚΗ ΕΤΑΙΡΕΙΩΝ 9 ΓΛΣ 9 ΔΙΕΘΝΗΣ ΛΟΓΙΣΤΙΚΗ 7,5 ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ 6 ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 6 ΣΤΑΤΙΣΤΙΚΗ 9 ΠΜΔΗΕ 7,5 ΜΕΚ 9 ΑΣΚΗΣΗ 2 α) Για να εμφανίσουμε πλήρη στοιχεία για ΜΑΘΗΜΑΤΑ με περισσότερες από 5 διδακτικές μονάδες θα δώσουμε select * from ΜΑΘΗΜΑΤΑ where Διδακτικές_μονάδες>5; Κωδικός_Μαθήματος Τίτλος_Μαθήματος Είναι_Ειδικότητας Ώρες_Διδασκαλίας Διδακτικές_μονάδες B256 ΛΟΓΙΣΤΙΚΗ ΕΤΑΙΡΕΙΩΝ C237 ΓΛΣ D567 ΣΤΑΤΙΣΤΙΚΗ M327 ΜΕΚ β) Για να εμφανίσουμε Αριθμός_Μητρώου και Ονοματεπώνυμο για ΣΠΟΥΔΑΣΤΕΣ του τμήματος Λογιστικής σε αύξουσα σειρά του Ονοματεπώνυμου θα δώσουμε select Αριθμός_Μητρώου,Ονοματεπώνυμο from ΣΠΟΥΔΑΣΤΕΣ; 5

6 Αριθμός_Μητρώου Ονοματεπώνυμο 9256 ΑΚΡΙΤΑ ΧΡΙΣΤΙΝΑ 9380 ΖΑΦΕΙΡΙΟΥ ΧΡΗΣΤΟΣ 9245 ΚΑΜΠΕΡΙΔΗΣ ΙΩΑΝΝΗΣ 9267 ΝΙΚΟΛΑΙΔΗΣ ΝΙΚΟΣ 9348 ΝΙΚΟΛΑΟΥ ΦΩΤΕΙΝΗ 9340 ΠΡΟΔΡΟΜΟΥ ΑΝΑΣΤΑΣΙΑ 9567 ΣΤΕΦΑΝΙΔΟΥ ΜΑΡΙΑ 9351 ΤΖΕΛΕΠΗΣ ΔΗΜΗΤΡΗΣ 9146 ΤΖΟΥΒΑΡΑΣ ΓΕΩΡΓΙΟΣ 9283 ΨΑΡΑΣ ΔΗΜΟΣ γ) Για να εμφανίσουμε πλήρη στοιχεία για μαθήματα με περισσότερες από 4 διδακτικές μονάδες σε φθίνουσα σειρά των διδακτικών μονάδων θα δώσουμε select * from ΜΑΘΗΜΑΤΑ where Διδακτικές_μονάδες>4 order by Διδακτικές_μονάδες desc; Κωδικός_Μαθήματος Τίτλος_Μαθήματος Είναι_Ειδικότητας Ώρες_Διδασκαλίας Διδακτικές_μονάδες B256 ΛΟΓΙΣΤΙΚΗ ΕΤΑΙΡΕΙΩΝ C237 ΓΛΣ D567 ΣΤΑΤΙΣΤΙΚΗ M327 ΜΕΚ E634 ΠΜΔΗΕ C423 ΔΙΕΘΝΗΣ ΛΟΓΙΣΤΙΚΗ A235 ΜΑΘΗΜΑΤΙΚΑ B123 ΜΑΡΚΕΤΙΝΓΚ ΑΣΚΗΣΗ 3 α) Για να εμφανίσουμε κωδικούς μαθημάτων και βαθμούς από τις ΒΑΘΜΟΛΟΓΙΕΣ για βαθμούς μεταξύ 5 και 6,5 θα δώσουμε select Κωδικός_Μαθήματος, Βαθμός from ΒΑΘΜΟΛΟΓΙΕΣ where Βαθμός between 5 and 6.5 order by Βαθμός desc; 6

7 Κωδικός_Μαθήματος Βαθμός E634 6,2 M327 5,9 E634 5,5 β) Για να εμφανίσουμε πλήρη στοιχεία για ΣΠΟΥΔΑΣΤΕΣ που δεν έκαναν εγγραφή μέσα στο 2008 θα δώσουμε SET DATEFORMAT dmy; select * from ΣΠΟΥΔΑΣΤΕΣ where Ημερομηνία_Εγγραφής between ' ' and ' '; Αριθμός_Μητρώου Ονοματεπώνυμο Τμήμα Ημερομηνία_Εγγραφής 9256 ΑΚΡΙΤΑ ΧΡΙΣΤΙΝΑ ΛΟΓΙΣΤΙΚΗΣ :00: ΝΙΚΟΛΑΙΔΗΣ ΝΙΚΟΣ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ :00: ΨΑΡΑΣ ΔΗΜΟΣ ΗΛΕΚΤΡΟΛΟΓΙΑΣ :00: ΠΡΟΔΡΟΜΟΥ ΑΝΑΣΤΑΣΙΑ ΗΛΕΚΤΡΟΛΟΓΙΑΣ :00: γ) Για να εμφανίσουμε τα ονοματεπώνυμα των ΣΠΟΥΔΑΣΤΩΝ που ανήκουν στα τμήματα ( ΗΛΕΚΤΡΟΛΟΓΙΑΣ και ΜΗΧΑΝΟΛΟΓΙΑΣ ) θα δώσουμε select Ονοματεπώνυμο from ΣΠΟΥΔΑΣΤΕΣ where Τμήμα in ('ΗΛΕΚΤΡΟΛΟΓΙΑΣ','ΜΗΧΑΝΟΛΟΓΙΑΣ'); Ονοματεπώνυμο ΨΑΡΑΣ ΔΗΜΟΣ ΠΡΟΔΡΟΜΟΥ ΑΝΑΣΤΑΣΙΑ ΤΖΕΛΕΠΗΣ ΔΗΜΗΤΡΗΣ ΑΣΚΗΣΗ 4 α) Για να εμφανίσουμε τους τίτλους μαθημάτων που ξεκινούν με τους χαρακτήρες "ΜΑ" θα δώσουμε 7

8 select Τίτλος_Μαθήματος from ΜΑΘΗΜΑΤΑ WHERE Τίτλος_Μαθήματος like 'ΜΑ%'; Τίτλος_Μαθήματος ΜΑΘΗΜΑΤΙΚΑ ΜΑΡΚΕΤΙΝΓΚ β) Για να εμφανίσουμε τα Ονοματεπώνυμα που τελειώνουν σε "ΗΣ" θα δώσουμε select Ονοματεπώνυμο from ΣΠΟΥΔΑΣΤΕΣ WHERE Ονοματεπώνυμο like '%ΗΣ'; Ονοματεπώνυμο ΚΑΜΠΕΡΙΔΗΣ ΙΩΑΝΝΗΣ ΤΖΕΛΕΠΗΣ ΔΗΜΗΤΡΗΣ γ) Για να εμφανίσουμε Ονοματεπώνυμο και Τμήμα από τον πίνακα ΣΠΟΥΔΑΣΤΕΣ των σπουδαστών που ανήκουν σε Τμήμα που περιέχει στην ονομασία του το ΗΣ θα δώσουμε select Ονοματεπώνυμο, Τμήμα from ΣΠΟΥΔΑΣΤΕΣ WHERE Τμήμα like '%ΣΗ%'; Ονοματεπώνυμο ΤΖΟΥΒΑΡΑΣ ΓΕΩΡΓΙΟΣ ΝΙΚΟΛΑΙΔΗΣ ΝΙΚΟΣ ΣΤΕΦΑΝΙΔΟΥ ΜΑΡΙΑ Τμήμα ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΏΝ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΏΝ ΑΣΚΗΣΗ 5 α) Για να εμφανίσουμε Κωδικός_Μαθήματος, Τίτλος_Μαθήματος και Ώρες_Διδασκαλίας για 8

9 ΜΑΘΗΜΑΤΑ που δεν είναι ειδικότητας και έχουν Ώρες_Διδασκαλίας λιγότερες των 3 θα δώσουμε select Κωδικός_Μαθήματος, Τίτλος_Μαθήματος, Ώρες_Διδασκαλίας from ΜΑΘΗΜΑΤΑ where Είναι_Ειδικότητας=0 and Ώρες_Διδασκαλίας<5; Κωδικός_Μαθήματος Τίτλος_Μαθήματος Ώρες_Διδασκαλίας A235 ΜΑΘΗΜΑΤΙΚΑ 4 B123 ΜΑΡΚΕΤΙΝΓΚ 4 β) Για να εμφανίσουμε πλήρη στοιχεία για ΜΑΘΗΜΑΤΑ που είναι ειδικότητας και έχουν διδακτικές μονάδες 4 ή 6 σε αύξουσα σειρά του Τίτλου Μαθήματος θα δώσουμε select * from ΜΑΘΗΜΑΤΑ where Είναι_Ειδικότητας=1 and (Διδακτικές_μονάδες=4 or Διδακτικές_μονάδες=6) order by Τίτλος_Μαθήματος; Κωδικός_Μαθήματος Τίτλος_Μαθήματος Είναι_Ειδικότητας Ώρες_Διδασκαλίας Διδακτικές_μονάδες C237 ΓΛΣ D368 ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ B256 ΛΟΓΙΣΤΙΚΗ ΕΤΑΙΡΕΙΩΝ M327 ΜΕΚ D345 ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ ΑΣΚΗΣΗ 6 α) Για να εμφανίσουμε τον μέσο όρο όλων των βαθμών θα δώσουμε select avg(βαθμός) from ΒΑΘΜΟΛΟΓΙΕΣ; 9

10 7, β) Για να εμφανίσουμε τον μέσο όρο των διδακτικών μονάδων και το άθροισμα των Ώρες_Διδασκαλίας για τα ΜΑΘΗΜΑΤΑ ειδικότητας θα δώσουμε select avg(διδακτικές_μονάδες), sum(ώρες_διδασκαλίας) from ΜΑΘΗΜΑΤΑ where Είναι_Ειδικότητας=1; 5, γ) Για να εμφανίσουμε τον Τίτλο Μαθήματος για το ΜΑΘΗΜΑ με τις λιγότερες Ώρες Διδασκαλίας θα δώσουμε select top(1) Τίτλος_Μαθήματος from ΜΑΘΗΜΑΤΑ group by Τίτλος_Μαθήματος order by min(ώρες_διδασκαλίας); Τίτλος_Μαθήματος ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ δ) Για να εμφανίσουμε τον Κωδικός Μαθήματος για το μάθημα με τον μεγαλύτερο βαθμό θα δώσουμε select top(1) Κωδικός_Μαθήματος from ΒΑΘΜΟΛΟΓΙΕΣ group by Κωδικός_Μαθήματος order by max(βαθμός); Κωδικός_Μαθήματος M327 ε) Για να εμφανίσουμε το πλήθος των μαθημάτων και της μέσης τιμής των Διδακτικών μονάδων για τα ΜΑΘΗΜΑΤΑ ειδικότητας που δεν είναι ειδικότητας θα δώσουμε 10

11 select count(*), avg(διδακτικές_μονάδες) from ΜΑΘΗΜΑΤΑ where Είναι_Ειδικότητας=0; 3 5, στ) Για να εμφανίσουμε τον Κωδικό Μαθήματος και τον μέσο όρο των βαθμών εκφρασμένο ως Μέσος_Βαθμός για τα μαθήματα με μέσο όρο βαθμών που ξεπερνά το 6,5 θα δώσουμε select Κωδικός_Μαθήματος,avg(Βαθμός) as Μέσος_Βαθμός from ΒΑΘΜΟΛΟΓΙΕΣ group by Κωδικός_Μαθήματος having avg(βαθμός)>6.5; Κωδικός_Μαθήματος Μέσος_Βαθμός B256 8, C237 7, D345 7, D368 6, Εντολές ορισμού δεδομένων Εντολές ορισμού βάσεων δεδομένων Η εντολή δημιουργίας βάσεων δεδομένων είναι η create database. Για την δημιουργία μιας βάσης δεδομένων με το όνομα pub θα δώσουμε create database pub; Για να ανοίξουμε την βάση δεδομένων pub θα δώσουμε use pub; Μπορούμε εναλλακτικά να ανοίξουμε την βάση δεδομένων από το μενού. 11

12 Αν θέλουμε να τροποποιήσουμε την βάση δεδομένων και να την μετονομάσουμε για παράδειγμα σε test, θα δώσουμε την εντολή alter database alter database pub MODIFY NAME = test; Αν θελήσουμε να διαγράψουμε την βάση δεδομένων test, θα δώσουμε την εντολή drop database. Θα πρέπει να την κλείσουμε και στη συνέχεια να δώσουμε drop database test; Εντολή δημιουργίας πίνακα Για την δημιουργία ενός πίνακα θα χρησιμοποιήσουμε την εντολή create table. Η γενική μορφή της εντολής create table είναι Create table [database.[owner]] table name (όνομα στήλης <τύπος δεδομένων> [default {σταθερή user null}] [{identing null not null} ] [{[constraint constraint name] {{unique primary key} [clustered non clustered] references ref_table [ref_column] check (<συνθήκη>)}}] constraint constraint name ] {{unique primary key} ] ) 12

13 Οι τύποι δεδομένων που μπορούν να χρησιμοποιηθούν είναι: Tinyint, Smalint, Int ή integer, Numeric, Decimal ή dec, Float, Double precicion, Real, Char, Text, Smallmoney, Money, Smalldatetime, Datetime, Varchar, Binary, Varbinary, Image, Bit. Οι τύποι περιορισμών (constraints) που θα χρησιμοποιηθούν είναι οι Unique/primary key, Referential integrity (foreign key), Check, Null/ not null και Default. Θα γίνουν κατανοητοί με την χρήση παραδειγμάτων στη συνέχεια. ΑΣΚΗΣΗ 1 α) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα marks με τα εξής πεδία: Am χαρακτήρες σταθερού μεγέθους 4 Vathmos τύπου Real και με προεπιλεγμένη τιμή 5 Immer τύπου ημερομηνία/ώρα και με προεπιλεγμένη τιμή null. Θα δώσουμε την εντολή create table marks( am char(4), vathmos real default 5, immer date default null ); β) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα titles και με τα εξής πεδία: Title_id χαρακτήρες σταθερού μεγέθους 6 πρωτεύον κλειδί Title χαρακτήρες μεταβλητού μεγέθους 80 Price τύπου αριθμός με δύο δεκαδικά ψηφία και προεπιλεγμένη τιμή απροσδιόριστη, Totalsales τύπου ακέραιος με προεπιλεγμένη τιμή το 0. Θα δώσουμε την εντολή create table titles ( title_id char(6) primary key, title varchar(80), price decimal(7,2) default null, totalsales int default 0 ); γ) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα sales και πεδία: Stor_id χαρακτήρες σταθερού μεγέθους 4 13

14 Ord_num χαρακτήρες μεταβλητού μεγέθους 20 Sdate ημερομηνία/ ώρα με περιορισμό σε επίπεδο πίνακα που διασφαλίζει ότι o συνδυασμός stor_id και ord_num είναι μοναδικός Θα δώσουμε την εντολή create table sales( stor_id char(4), ord_num varchar(20), sdate datetime, unique (stor_id,ord_num) ); ΑΣΚΗΣΗ 2 α) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα marks2 που περιλαμβάνει τον am (αριθμό μητρώου), τον κωδικό του μαθήματος (χαρακτήρες σταθερού μεγέθους 4) και τον βαθμό του μαθήματος. Ο βαθμός να παίρνει αποδεκτές τιμές (από 0 έως 10). Θα δώσουμε την εντολή create table marks2( am char(4), math char(4), vathmos real, check (vathmos>0 and vathmos<=10) ); β) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα lessons που περιλαμβάνει τα πεδία: Code char(4) χωρίς απροσδιόριστες τιμές Title varchar (30) Description varchar (50) Το πεδίο Code ξεκινάει με το γράμμα (Ε) στην συνέχεια μπορεί να είναι ο αριθμός (2) ή ο αριθμός (3) και οι τελευταίοι χαρακτήρες μπορεί να είναι οποιοδήποτε ψηφίο του δεκαδικού συστήματος. Θα δώσουμε την εντολή 14

15 create table lessons ( code char(4) not null, check (code like 'E[2/3][0-9][0-9]'), title varchar(30), description varchar(30) ); γ) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα lessons2 που να περιλαμβάνει τα πεδία: code χαρακτήρες σταθερού μεγέθους 4 χωρίς απροσδιόριστες τιμές, title χαρακτήρες μεταβλητού μεγέθους 30, description χαρακτήρες μεταβλητού μεγέθους 50, specification μικρός ακέραιος. Το πεδίο code να ξεκινάει με το γράμμα Ε, στη συνέχεια μπορεί να είναι ο αριθμός 2 ή 3 και οι τελευταίοι δύο χαρακτήρες μπορουν να είναι οποιαδήποτε ψηφία του δεκαδικού συστήματος. Επίσης το πεδίο code να έχει τον περιορισμό ότι είναι μοναδικό (unique). create table lessons2( code char(4) not null, check (code like 'E[2-3][0-9][0-9]'), unique (code), title varchar(30), description varchar(50), specification smallint ); ή create table lessons2( code char(4) not null, title varchar(30), description varchar(50), specification smallint, check (code like 'E[2-3][0-9][0-9]'), constraint pg unique (code) ); 15

16 ΑΣΚΗΣΗ 3 α) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα publishers που περιλαμβάνει τα πεδία: Pub_id char(4) πρωτεύον κλειδί Pub_name varchar2(40) City varchar (20) State char (2) Το πεδίο Pub_id μπορεί να παίρνει τις τιμές 1389, 0877, 0736, 1622, 1756 ή να ξεκινάει με τους 99 χαρακτήρες και οι επόμενοι 2 να είναι οποιαδήποτε ψηφία του δεκαδικού συστήματος. create table publishers ( Pub_id char(4) primary key check (Pub_id in('1389','0877','0736','1622','1756') or pub_id like '99[0-9][0-9]'), Pub_name varchar(40), City varchar(20), State char(2) ); β) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα publishers2 με πεδία pub_id τύπου χαρακτήρα σταθερού μεγέθους 4 πρωτεύον κλειδί, pub_name τύπου χαρακτήρα μεταβλητού μεγέθους 40 με περιορισμό για την στήλη pub_id να παίρνει τιμές '1389', '0736', '0877' και το pub_name να μην είναι 'Bad Books'. create table publishers2 ( pub_id char(4) primary key, pub_name varchar(40), constraint chk check (pub_id in ('1389','0736','0877') and pub_name not like 'Bad Books') ); ή create table publishers2( pub_id char(4) primary key, check (pub_id in ('1389','0736','0877')), pub_name varchar(40), check (pub_name not like 'Bad Books') ); 16

17 γ) Θέλουμε να δημιουργήσουμε ένα πίνακα με το όνομα salesdetail με τα παρακάτω πεδία: Stor_id χαρακτήρες σταθερού μεγέθους 4 Ord_num χαρακτήρες μεταβλητού μεγέθους 20 Title_id χαρακτήρες σταθερού μεγέθους 6 qty μικρός ακέραιος Το πεδίο title_id να αναφέρεται στο πεδίο title_id του πίνακα titles. Να οριστεί συνδυασμός με το όνομα sldt σε επίπεδο πίνακα που να ορίζει σαν ξένο κλειδί τον συνδυασμό stor_id και ord_num. Ο συνδυασμός αυτών των πεδίων να αναφέρεται στον αντίστοιχο συνδυασμό των ίδιων πεδίων του πίνακα sales. create table salesdetail ( stor_id char(4), ord_num varchar(20), title_id char(6) references titles(title_id), qty smallint, constraint sldt foreign key (stor_id,ord_num) references sales (stor_id,ord_num) ); Εντολή αλλαγής δομή πίνακα Για την αλλαγή δομής πίνακα ενός πίνακα θα χρησιμοποιήσουμε την εντολή alter table. Η εντολή alter table μας επιτρέπει να προσθέτουμε στήλες (εκτός από στήλες τύπου bit) και περιορισμούς (constraints) σε υπάρχοντα πίνακα. Μπορούμε επίσης να διαγράψουμε περιορισμό ή να αλλάξουμε τα defaults που έχουν οριστεί σε στήλες πίνακα. Με την alter table δεν μπορούμε να ξεπεράσουμε τον μέγιστο αριθμό στηλών που μας επιτρέπει η SQL. Η στήλη που προστίθεται με αυτό τον τρόπο επιτρέπεται να αποδέχεται null τιμές. ΑΣΚΗΣΗ 4 α) Θέλουμε να τροποποιήσουμε τον πίνακα lessons ορίζοντας ως περιορισμό με το όνομα pk το πεδίο code να είναι πρωτεύον κλειδί alter table lessons add constraint pk primary key (code); β) Θέλουμε να προσθέσουμε στον πίνακα publishers2 μια στήλη με το όνομα country τύπου χαρακτήρες μεταβλητού μεγέθους 20 που θα μπορεί να αποδέχεται τιμές null. 17

18 alter table publishers2 add country varchar(20) null; γ) Στον ίδιο πίνακα θέλουμε να προσθέσουμε έναν περιορισμό με το όνομα old_country, όπου θα ελέγχουμε ότι η στήλη country δεν μπορεί να πάρει τις τιμές "GDR", "E.Germany", "East Germany". alter table publishers2 add constraint old_country check (country not in ('GDR', 'E.Germany', 'East Germany')); δ) Στον ίδιο πίνακα θέλουμε να διαγράψουμε τον περιορισμό που προσθέσαμε προηγουμένως. alter table publishers2 drop constraint old_country; ε) Τέλος, στον ίδιο πίνακα θέλουμε να προσθέσουμε στην στήλη country προεπελεγμένη τιμή (default) "USA". alter table publishers2 add constraint dflt default 'usa' for country; Εντολή διαγραφής πίνακα Για την αλλαγή δομής πίνακα ενός πίνακα θα χρησιμοποιήσουμε την εντολή Drοp table. Δίνουμε απλά Drοp table <όνομα πίνακα> Μπορούμε να διαγράψουμε περισσότερους από έναν πίνακα αρκεί να δώσουμε μετά το drop τα ονόματα των πινάκων χωρισμένα με κόμμα. ΑΣΚΗΣΗ 5 α) Θέλουμε να διαγράψουμε τον πίνακα publishers2. Θα δώσουμε την εντολή drop table publishers2 β) Θέλουμε να διαγράψουμε τους πίνακες sales και salesdetail. Θα δώσουμε την εντολή 18

19 Drop table sales, salesdetail γ) Θέλουμε να μετονομάσουμε τον πίνακα lessons σε lesson. Θα δώσουμε την εντολή sp_rename 'lessons', 'lesson'; Η εντολή sp_rename έχει την γενική μορφή sp_rename 'παλιό όνομα', 'νέο όνομα' 3.3 Εντολές χειρισμού δεδομένων Με τις εντολές χειρισμού δεδομένων μπορούμε να κάνουμε προσθήκη, τροποποίηση και διαγραφή δεδομένων. Έχουμε τις Insert: για εισαγωγή εγγραφών σε πίνακα. Update: για ενημέρωση εγγραφής πίνακα. Delete: για διαγραφή εγγραφής ενός πίνακα. Truncate: για διαγραφή όλων των εγγραφών ενός πίνακα, όχι όμως και του πίνακα Εντολή εισαγωγής δεδομένων Η συνήθης μορφή της εντολής εισαγωγής δεδομένων insert είναι: insert into <όνομα πίνακα> values (τιμή1, τιμή2, ) Η λέξη into είναι προαιρετική σ' αυτή την έκδοση της SQL. Συνήθως κάνουμε: α) Εισαγωγή τιμών σε όλες τις στήλες β) Εισαγωγή τιμών σε συγκεκριμένες στήλες πίνακα γ) Εισαγωγή τιμών με την χρήση της λέξης-κλειδί (Keyword) DEFAULT ΑΣΚΗΣΗ 1 α) Θέλουμε να εισάγουμε τις τιμές '2456', 'Α201' και 7,5 στον πίνακα marks2. Μπορεί να γίνει με δύο τρόπους insert into marks2(am,math,vathmos) values ('2456', 'Α201',7.5); 19

20 ή insert into marks2 values ('2456', 'Α201',7.5); β) Θέλουμε να εισάγουμε τις τιμές '3467', 'C302' στις στήλες am, math του πίνακα marks2. Θα δώσουμε insert into marks2(am,math) values ('3467', 'C302'); γ) Θέλουμε να εισάγουμε τις τιμές 'BU1237', 'Get Going!' στις στήλες title_id, title του πίνακα titles. Στις στήλες price, totalsales θέλουμε να εισαχθούν οι προεπιλεγμένες τιμές. Θα δώσουμε INSERT into titles (title_id, title, price, totalsales) VALUES ('BU1237', 'Get Going!', DEFAULT, DEFAULT); Στο παράδειγμα αυτό χρησιμοποιείται η λέξη-κλειδί DEFAULT αντί για κάποια συγκεκριμένη τιμή σε στήλες του πίνακα titles. Προϋπόθεση για την επιτυχή εισαγωγή στην προηγούμενη εντολή, είναι να έχουν οριστεί προεπιλεγμένες (default) τιμές στις συγκεκριμένες στήλες του πίνακα titles Εντολή ενημέρωσης δεδομένων Η συνήθης μορφή της εντολής ενημέρωσης δεδομένων update είναι: update <όνομα πίνακα> set <όνομα στήλης> =έκφραση from <όνομα πίνακα> where συνθήκη ΑΣΚΗΣΗ 2 α) Θέλουμε να ενημερώσουμε τον πίνακα titles και να θέσουμε στην στήλη totalsales την τιμή 0. Θα δώσουμε Update titles set totalsales=0; 20

21 β) Θέλουμε να ενημερώσουμε τον πίνακα marks2 και να αυξήσουμε τους βαθμούς κατά 1 μονάδα. Θα δώσουμε Update marks2 set vathmos=vathmos+1; γ) Θέλουμε να ενημερώσουμε τον πίνακα titles και να θέσουμε σαν τιμή 10 εκεί όπου δεν υπάρχει τιμή. Θα δώσουμε Update titles set price=10 where price is null; δ) Θέλουμε να ενημερώσουμε τον πίνακα publishers και να θέσουμε σαν πολιτεία (state) 'MA' εκεί όπου η πόλη (city) είναι 'Kavala'. Θα δώσουμε update publishers set state='ma' where city='kavala'; ε) Θέλουμε να ενημερώσουμε τον πίνακα publishers2 και να θέσουμε σαν χώρα (country) 'Greece' εκεί όπου δεν υπάρχει τιμή στη χώρα (country). Θα δώσουμε update publishers2 set country='greece' where country is null; Εντολές διαγραφής δεδομένων Είναι οι Delete και Truncate. Η μορφή της εντολής delete είναι: Delete [from] <όνομα πίνακα> From <όνομα πίνακα> Where <συνθήκη> Η χρήση της λέξης from είναι προαιρετική σ' αυτή την έκδοση της SQL. Η μορφή της εντολής Truncate είναι: 21

22 Truncate <όνομα πίνακα> και διαγράφει δηλαδή σβήνει όλες τις γραμμές του πίνακα άμεσα και χωρίς συνθήκες. ΑΣΚΗΣΗ 3 α) Θέλουμε να διαγράψουμε από τον πίνακα marks2 τις γραμμές εκείνες στις οποίες δεν υπάρχει βαθμός. Θα δώσουμε delete marks2 where vathmos is null; β) Θέλουμε να διαγράψουμε από τον πίνακα titles τις γραμμές εκείνες στις οποίες η τιμή (price) είναι 10. Θα δώσουμε delete titles where price=10; γ) Θέλουμε να διαγράψουμε από τον πίνακα lessons2 όλες τις γραμμές. Θα δώσουμε truncate table lessons2; 3.4 Eντολές sp_help, sp_helptext, sp_helpdb H εντολή sp_help παρέχει γενικές πληροφορίες για αντικείμενο της βάσης δεδομένων. Η εντολή sp_helptext με το όνομα του αντικειμένου μας παρέχει πληροφορίες για το πώς δημιουργήθηκε το συγκεκριμένο αντικείμενο. Η εντολή sp_helpdb και το όνομα της βάσης δεδομένων μας παρέχει πληροφορίες για την συγκεκριμένη βάση δεδομένων. 22

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

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

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

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

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

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

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

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

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

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

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

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

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

Ιατρική Πληροφορική. Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Ιατρική Πληροφορική Δρ. Π. ΑΣΒΕΣΤΑΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΒΙΟΪΑΤΡΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Τ. Ε. Χρήσιμοι Σύνδεσμοι Σημειώσεις μαθήματος: 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/

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

GROUP BY, HAVING, COUNT, MIN, MAX, SUM, AVG, ROLLUP.

GROUP BY, HAVING, COUNT, MIN, MAX, SUM, AVG, ROLLUP. SQL: Ερωτήματα ομαδοποίησης και συνάθροισης GROUP BY, HAVING, COUNT, MIN, MAX, SUM, AVG, ROLLUP Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2016 1 / 56 Περιεχόμενα 1 Εισαγωγή, γενικές

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Ανοικτά Ακαδημαϊκά Μαθήματα

Ανοικτά Ακαδημαϊκά Μαθήματα Ανοικτά Ακαδημαϊκά Μαθήματα Τεχνολογικό Εκπαιδευτικό Ίδρυμα Αθήνας Case Study: Σύστημα Διαχείρισης Βάσης Βιβλιοθήκης (Library Information System) - Μοντελοποίηση και Κανονικοποίηση - Υλοποίηση με χρήση

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - SQL

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - SQL ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - SQL Διδάσκων του μαθήματος 2 Δρ. Λεωνίδας Φραγγίδης Επίκουρος Καθηγητής Τμήμα Διοίκησης Επιχειρήσεων ΤΕΙ ΑΜΘ Email: fragidis@teiemt.gr Ώρες Γραφείου: Τρίτη (10:00 12:00) Προτεινόμενα

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα: 12Η ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ Δρ. ΠΑΝΤΕΛΗΣ ΑΓΓΕΛΙΔΗΣ Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος 2012-13 Κων/νος Φλώρος Απλοί τύποι δεδομένων Οι τύποι δεδομένων προσδιορίζουν τον τρόπο παράστασης των

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

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

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

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

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

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

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

Εργαστήριο Βάσεων Δεδομένων Εργαστήριο Βάσεων Δεδομένων Φροντιστήριο 3 ο (26/11/2008) Εισαγωγή στην Mysql SQL Η 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)

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

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

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

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

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

Βάσεις Δεδομένων (Ε) Εισαγωγή στην υλοποίηση σχεσιακών βάσεων δεδομένων Βάσεις Δεδομένων (Ε) Εισαγωγή στην υλοποίηση σχεσιακών βάσεων δεδομένων Εισαγωγή στη χρήση της γλώσσας SQL και στον προγραμματισμό εφαρμογών βάσεων δεδομένων Θα χρησιμοποιήσουμε το Σχεσιακό Σύστημα (προϊόν)

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

SQL Data Manipulation Language

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

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

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

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

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

Το Μοντέλο των Οντοτήτων Συσχετίσεων Entity Relationship Model. Νικόλαος Ζ. Ζάχαρης

Το Μοντέλο των Οντοτήτων Συσχετίσεων Entity Relationship Model. Νικόλαος Ζ. Ζάχαρης Το Μοντέλο των Οντοτήτων Συσχετίσεων Entity Relationship Model Νικόλαος Ζ. Ζάχαρης Τι είναι το ERΜ Είναι ένα μοντέλο αναπαράστασης των δεδομένων και των συσχετίσεων τους, και χρησιμοποιείται κατά τη φάση

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων 3η εργαστηριακή άσκηση Βάσεις Δεδομένων 3η εργαστηριακή άσκηση Εισαγωγή στο περιβάλλον της oracle Συσχέτιση πινάκων (εισαγωγή ξένων κλειδιών) Δρ. Μαρία Ευθυμιοπούλου 1. Εμφάνιση πινάκων στο Workspace Στο προηγούμενο εργαστήριο

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

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

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

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

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

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

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

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

Προγραμματισμός Παγκόσμιου Ιστού Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Προγραμματισμός Παγκόσμιου Ιστού 10 η Διάλεξη Δημοσθένης Κυριαζής Δευτέρα 22 Μαΐου 2017 Σημερινή διάλεξη Σύνοψη προηγούμενης διάλεξης SQL Δημιουργία ΒΔ Δημιουργία

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

Σχεδίαση και λειτουργία βάσης δεδομένων Το παράδειγμα της μαιευτικής κλινικής Ευάγγελος Καρβούνης

Σχεδίαση και λειτουργία βάσης δεδομένων Το παράδειγμα της μαιευτικής κλινικής Ευάγγελος Καρβούνης Σχεδίαση και λειτουργία βάσης δεδομένων Το παράδειγμα της μαιευτικής κλινικής Ευάγγελος Καρβούνης Περιεχόμενα 1 Γενική περιγραφή του προβλήματος 2 Μοντελοποίηση Ο/Σ 3 Σχεσιακό μοντέλο, SQL 4 Ερωτήματα

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

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

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

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

DISTINCT, LIKE, NULL, AND, OR, BETWEEN

DISTINCT, LIKE, NULL, AND, OR, BETWEEN Περισσότερα για τα απλά ερωτήματα SQL DISTINCT, LIKE, NULL, AND, OR, BETWEEN Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 1 / 66 Σκοπός του μαθήματος Αποκλείσετε διπλοεγγραφές από

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

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

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

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

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

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 4ο Μάθημα: SQL - Παράδειγμα. Δρ. Κωνσταντίνος Χ. Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας 4ο Μάθημα: SQL - Παράδειγμα Δρ. Κωνσταντίνος Χ. Γιωτόπουλος SQL Εργασία Customer AFM Onoma Eponimo DOB Address Sex 131313 Dimitris

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

Εργαστήριο 6 ο 7 ο / Ερωτήματα Ι

Εργαστήριο 6 ο 7 ο / Ερωτήματα Ι Εργαστήριο 6 ο 7 ο / Ερωτήματα Ι Απλά ερωτήματα Επιλογής Ερωτήματα με Ενώσεις πινάκων Ερωτήματα με Παραμετρικά Κριτήρια Ερωτήματα με Υπολογιζόμενα πεδία Απλά ερωτήματα Επιλογής Τα Ερωτήματα μας επιτρέπουν

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

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

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

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

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

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

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

Ανοικτά Ακαδημαϊκά Μαθήματα

Ανοικτά Ακαδημαϊκά Μαθήματα Ανοικτά Ακαδημαϊκά Μαθήματα Τεχνολογικό Εκπαιδευτικό Ίδρυμα Αθήνας Case Study: Μελέτη Περιπτώσεως: Σύστημα Διαχείρισης Βάσης Βιβλιοθήκης (Library Information System) - Ορισμός και χρήση View Χ. Σκουρλάς,

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

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

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

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

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

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

Σύβακας Σταύρος ΠΕ19,MSc. IT ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ

Σύβακας Σταύρος ΠΕ19,MSc. IT ΣΥΒΑΚΑΣ ΣΤΑΥΡΟΣ ΕΡΩΤΗΜΑΤΑ Σύβακας Σταύρος ΠΕ19,MSc. IT Εισαγωγή Τα ερωτήματα (queries) είναι μία από τις πιο σημαντικές δυνατότητες που προφέρει ένα Σ%Β% αφού επιτρέπουν: Ανάκτηση και ανάλυση των δεδομένων στην επιθυμητή μορφή

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

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

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

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

1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL

1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL 1. ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΤΗΣ MySQL Τύποι στην MySQL Κείμενο Αριθμοί Ημερομηνίες και ώρες Επιλογή του τύπου Στήλες ονομάτων τύπος κειμένου Στήλες ποσών ή ποσοτήτων Αριθμητικός τύπος Στήλες ημερομηνιών τύπος ημερομηνίας

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

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

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

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

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 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. Εισαγωγή Χαρακτηριστικά της γλώσσας Τύποι δεδοµένων Γλώσσα προγραµµατισµού

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

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

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

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

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

Ζαχαρίας Μ. Κοντοπόδης Microsoft Jet S.Q.L. Διαφάνεια 1η

Ζαχαρίας Μ. Κοντοπόδης Microsoft Jet S.Q.L. Διαφάνεια 1η ε ένα.δ.β.δ. ο χειρισμός των δεδομένων της βάσης γίνεται με τη χρήση της Δομημένης Γλώσσας Ερωτήσεων (SQL). Ο Βασικός σκοπός της SQL είναι η υποβολή ερωτήσεων (Queries) στα στοιχεία της βάσης δεδομένων.

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

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

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

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

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

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

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

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

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

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

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

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

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