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

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

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

Transcript

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

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

3 Γενικές απαιτήσεις καταγραφής δεδομένων Θεωρείστε την ύπαρξη ενός μαιευτηρίου, εκεί όπου έγκυες γυναίκες φέρνουν στον κόσμο παιδιά. Αυτό που ενδιαφέρει εδώ είναι η απλή καταγραφή του γεγονότος της γέννησης, πέρα από κάθε κοινωνική, οικογενειακή επέκταση. Μητέρα 1 Αριθμός ταυτότητας. 2 Ονομα και επώνυμο. 3 Ημερομηνία γέννησης. 4 Τηλέφωνο επικοινωνίας. Παιδί 1 Ημερομηνία γέννησης. 2 Βάρος. 3 Φύλλο (αγόρι ή κορίτσι). 4 Ενα αναγνωριστικό ώστε κάθε παιδί να έχει αντιστοίχιση με μία συγκεκριμένη μητέρα. 3 / 84

4 Τι πληροφορίες θέλουμε 4 / 84

5 Τι πληροφορίες θέλουμε Λεπτομέρειες για τον καθένα 1 Δεδομένα που αφορούν μόνο τη μητέρα, πχ Ονομα, ΑΜΚΑ, τηλέφωνο, κα. 2 Δεδομένα που αφορούν μόνο το παιδί, πχ βάρος, φύλλο, κα. 5 / 84

6 Τι πληροφορίες θέλουμε Λεπτομέρειες για τον καθένα 1 Δεδομένα που αφορούν μόνο τη μητέρα, πχ Ονομα, ΑΜΚΑ, τηλέφωνο, κα. 2 Δεδομένα που αφορούν μόνο το παιδί, πχ βάρος, φύλλο, κα. Λεπτομέρειες συσχέτισης 1 Η Μαρία Κ. γέννησε στις 19/4/2000 αγόρι. 2 Η Στέλλα Μ. γέννησε στις 25/8/2001 αγόρι. 3 Η Στέλλα Μ. γέννησε στις 9/1/2006 κορίτσι. 4 Η Αντωνία Β. γέννησε στις 12/9/2002 αγόρι. 5 Η Αντωνία Β. γέννησε στις 7/11/2004 κορίτσι. 6 / 84

7 Τι θέλουμε να αποφύγουμε Μήνυση σε μαιευτήριο για ανατροφή λάθος παιδιού 7 / 84

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

9 Προτεινόμενο διάγραμμα Ο/Σ amka birthdate gender mother has child phone fname weight birthdate 9 / 84

10 Γιατί όχι έτσι; amka birthdate mother child phone fname 10 / 84

11 Αποφυγή λάθους σχεδίασης amka birthdate gender mother child phone fname birthdate 11 / 84

12 Αντικειμενοστραφή μοντέλα δεδομένων Το σχεσιακό μοντέλο δεδομένων δεν είναι η «τελευταία λέξη της τεχνολογίας». Νεώτερα μοντέλα δεδομένων μπορούν να καλύψουν διάφορες ατέλειες ή ελλείψεις. Άλλο μοντέλο δεδομένων σημαίνει άλλος τρόπος σκέψης. Αντικειμενοστραφές, το πιο διαδεδομένο μοντέλο δεδομένων από τα μέσα της δεκαετίας του / 84

13 Ημερομηνία γέννησης amka birthdate gender child-birthdate mother has child phone fname weight 13 / 84

14 Σχετικά με την πληθικότητα M H C m 1 m 2 m 3 m 4 h 1 h 2 h 3 h 4 h 5 c 1 c 2 c 3 c 4 c 5 min card(m, H) = 0 max card(m, H) = N min card(c, H) = 1 max card(c, H) = 1 h 6 c 6 14 / 84

15 Μερικές λεπτομέρειες ακόμα 15 / 84

16 Μερικές λεπτομέρειες ακόμα 1 Το όνομα της μητέρας είναι σύνθετη ιδιότητα. 16 / 84

17 Μερικές λεπτομέρειες ακόμα 1 Το όνομα της μητέρας είναι σύνθετη ιδιότητα. 2 Το σύνολο οντοτήτων παιδί πρέπει να έχει πρωτεύον κλειδί. 17 / 84

18 Μερικές λεπτομέρειες ακόμα 1 Το όνομα της μητέρας είναι σύνθετη ιδιότητα. 2 Το σύνολο οντοτήτων παιδί πρέπει να έχει πρωτεύον κλειδί. 3 Η συσχέτιση ανάμεσα σε κάποια μητέρα και ένα παιδί (το παιδί της) απαιτεί ένα ξένο κλειδί. Το ξένο κλειδί τοποθετείται για το σύνολο οντοτήτων παιδί, και είναι το πρωτεύον κλειδί του συνόλου οντοτήτων μητέρα. 18 / 84

19 Μερικές λεπτομέρειες ακόμα 1 Το όνομα της μητέρας είναι σύνθετη ιδιότητα. 2 Το σύνολο οντοτήτων παιδί πρέπει να έχει πρωτεύον κλειδί. 3 Η συσχέτιση ανάμεσα σε κάποια μητέρα και ένα παιδί (το παιδί της) απαιτεί ένα ξένο κλειδί. Το ξένο κλειδί τοποθετείται για το σύνολο οντοτήτων παιδί, και είναι το πρωτεύον κλειδί του συνόλου οντοτήτων μητέρα. 4 Κάθε μέλος του συνόλου οντοτήτων παιδί, εξαρτάται από κάποιο μέλος του συνόλου οντοτήτων μητέρα. Αυτό σημαίνει το παιδί είναι ασθενές σύνολο οντοτήτων. 19 / 84

20 Βελτιωμένο διάγραμμα Ο/Σ amka birthdate id gender mother 0..* has 1..1 child phone fname weight birthdate firstname lastname 20 / 84

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

22 Μετατροπή του μοντέλου σε σχεσιακό 22 / 84

23 Μετατροπή του μοντέλου σε σχεσιακό 1 Τα σύνολα οντοτήτων μητέρα και παιδί του διαγράμματος Ο/Σ μετατρέπονται σε σχέσεις. 23 / 84

24 Μετατροπή του μοντέλου σε σχεσιακό 1 Τα σύνολα οντοτήτων μητέρα και παιδί του διαγράμματος Ο/Σ μετατρέπονται σε σχέσεις. 2 Για τη συσχέτιση Ν:1 δεν υπάρχει αναγκαιότητα μετατροπής της σε σχέση. 24 / 84

25 Μετατροπή του μοντέλου σε σχεσιακό 1 Τα σύνολα οντοτήτων μητέρα και παιδί του διαγράμματος Ο/Σ μετατρέπονται σε σχέσεις. 2 Για τη συσχέτιση Ν:1 δεν υπάρχει αναγκαιότητα μετατροπής της σε σχέση. 3 Ολες οι απλές ιδιότητες και μονότιμες ιδιότητες των οντοτήτων μετατρέπονται σε γνωρίσματα των σχέσεων. 25 / 84

26 Μετατροπή του μοντέλου σε σχεσιακό 1 Τα σύνολα οντοτήτων μητέρα και παιδί του διαγράμματος Ο/Σ μετατρέπονται σε σχέσεις. 2 Για τη συσχέτιση Ν:1 δεν υπάρχει αναγκαιότητα μετατροπής της σε σχέση. 3 Ολες οι απλές ιδιότητες και μονότιμες ιδιότητες των οντοτήτων μετατρέπονται σε γνωρίσματα των σχέσεων. 4 Η σύνθετη ιδιότητα όνομα, του συνόλου οντοτήτων μητέρα, μοντελοποιείται με την αναλυτική της μορφή (όνομα, επώνυμο) και στη σχέση τοποθετούνται τα δύο αυτά γνωρίσματα. 26 / 84

27 Μετατροπή του μοντέλου σε σχεσιακό 1 Τα σύνολα οντοτήτων μητέρα και παιδί του διαγράμματος Ο/Σ μετατρέπονται σε σχέσεις. 2 Για τη συσχέτιση Ν:1 δεν υπάρχει αναγκαιότητα μετατροπής της σε σχέση. 3 Ολες οι απλές ιδιότητες και μονότιμες ιδιότητες των οντοτήτων μετατρέπονται σε γνωρίσματα των σχέσεων. 4 Η σύνθετη ιδιότητα όνομα, του συνόλου οντοτήτων μητέρα, μοντελοποιείται με την αναλυτική της μορφή (όνομα, επώνυμο) και στη σχέση τοποθετούνται τα δύο αυτά γνωρίσματα. 5 Πρωτεύον κλειδί τη σχέσης μητέρα είναι ο ΑΜΚΑ, ενώ πρωτεύον κλειδί της σχέσης παιδί είναι το ΙΔ. 27 / 84

28 Μετατροπή του μοντέλου σε σχεσιακό 1 Τα σύνολα οντοτήτων μητέρα και παιδί του διαγράμματος Ο/Σ μετατρέπονται σε σχέσεις. 2 Για τη συσχέτιση Ν:1 δεν υπάρχει αναγκαιότητα μετατροπής της σε σχέση. 3 Ολες οι απλές ιδιότητες και μονότιμες ιδιότητες των οντοτήτων μετατρέπονται σε γνωρίσματα των σχέσεων. 4 Η σύνθετη ιδιότητα όνομα, του συνόλου οντοτήτων μητέρα, μοντελοποιείται με την αναλυτική της μορφή (όνομα, επώνυμο) και στη σχέση τοποθετούνται τα δύο αυτά γνωρίσματα. 5 Πρωτεύον κλειδί τη σχέσης μητέρα είναι ο ΑΜΚΑ, ενώ πρωτεύον κλειδί της σχέσης παιδί είναι το ΙΔ. 6 Στη σχέση παιδί, τοποθετείται ως ξένο κλειδί ο ΑΜΚΑ της μητέρας. 28 / 84

29 Δημιουργία του πίνακα mother 1 CREATE TABLE mother 2 ( 3 amka CHAR(11) NOT NULL, 4 firstname VARCHAR(50) NOT NULL, 5 lastname VARCHAR(50) NOT NULL, 6 birthdate DATE, 7 phone CHAR(10), 8 CONSTRAINT pk PRIMARY KEY (amka) 9 ); 29 / 84

30 Παρατηρήσεις για τη μητέρα 1 Ο προσδιορισμός NOT NULL στη γραμμή 3 είναι απαραίτητος (πρωτεύον κλειδί). 2 Ο προσδιορισμός VARCHAR(50) για το όνομα και επώνυμο ορίζει το μέγιστο πλήθος χαρακτήρων. 3 Η ημερομηνία γέννησης birthdate ενδέχεται να πάρει NULL τιμές, όπως και το τηλέφωνο (στις γραμμές 6 7 δεν υπάρχει δήλωση NOT NULL). 4 Ο αριθμός τηλεφώνου δηλώνεται ως συμβολοσειρά και όχι ως αριθμός. Το τηλέφωνο αποτελείται από αριθμητικά ψηφία, αλλά δεν είναι αριθμός! 5 Η δήλωση στη γραμμή 8 χρησιμοποιείται για τον περιορισμό του πρωτεύοντος κλειδιού. Πρακτικά, αυτό εξασφαλίζει το γεγονός πως δεν είναι δυνατό δύο πρόσωπα (δύο μητέρες) να έχουν τον ίδιο ΑΜΚΑ. 30 / 84

31 Δημιουργία του πίνακα child 1 CREATE TABLE child 2 ( 3 id INTEGER NOT NULL AUTO_INCREMENT, 4 mamka CHAR(11) NOT NULL, 5 weight FLOAT, 6 birthdate DATE, 7 CONSTRAINT pk PRIMARY KEY (id), 8 CONSTRAINT fk_amka FOREIGN KEY (mamka) 9 REFERENCES mother (amka) 10 ); 31 / 84

32 Παρατηρήσεις για τον πίνακα παιδί 32 / 84

33 Παρατηρήσεις για τον πίνακα παιδί 1 Η δήλωση AUTO_INCREMENT στη γραμμή 3, δηλώνει το αριθμητικό πεδίο id είναι μια αριθμητική πρόοδος, ένας αύξων αριθμός. Η καταχώριση τιμής γίνεται αυτόματα. 33 / 84

34 Παρατηρήσεις για τον πίνακα παιδί 1 Η δήλωση AUTO_INCREMENT στη γραμμή 3, δηλώνει το αριθμητικό πεδίο id είναι μια αριθμητική πρόοδος, ένας αύξων αριθμός. Η καταχώριση τιμής γίνεται αυτόματα. 2 Το πεδίο mamka πρέπει να οριστεί με τον ίδιο τύπο δεδομένων όπως και στον πίνακα mother. Κάτι τέτοιο είναι απαραίτητο για την ορθή λειτουργία του περιορισμού ξένου κλειδιού, όπως δηλώνεται στη γραμμή / 84

35 Παρατηρήσεις για τον πίνακα παιδί 1 Η δήλωση AUTO_INCREMENT στη γραμμή 3, δηλώνει το αριθμητικό πεδίο id είναι μια αριθμητική πρόοδος, ένας αύξων αριθμός. Η καταχώριση τιμής γίνεται αυτόματα. 2 Το πεδίο mamka πρέπει να οριστεί με τον ίδιο τύπο δεδομένων όπως και στον πίνακα mother. Κάτι τέτοιο είναι απαραίτητο για την ορθή λειτουργία του περιορισμού ξένου κλειδιού, όπως δηλώνεται στη γραμμή 8. 3 Επειδή ο ορισμός του ξένου κλειδιού, γίνεται μέσα στον ορισμό του πίνακα, θα πρέπει ο πίνακας mother να έχει δημιουργηθεί πριν από τον πίνακα child. 35 / 84

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

37 Πληροφορίες για μια μητέρα Να βρεθεί το όνομα και το επώνυμο της μητέρας με ΑΜΚΑ / 84

38 Πληροφορίες για μια μητέρα Να βρεθεί το όνομα και το επώνυμο της μητέρας με ΑΜΚΑ Π firstname,lastname (σ amka= (mother)) 38 / 84

39 Πληροφορίες για μια μητέρα Να βρεθεί το όνομα και το επώνυμο της μητέρας με ΑΜΚΑ Π firstname,lastname (σ amka= (mother)) 1 SELECT firstname, lastname 2 FROM mother 3 WHERE amka = ; 39 / 84

40 Πληροφορίες για τα παιδιά μιας μητέρας Να βρεθούν οι ημερομηνίες γέννησης και το φύλλο των παιδιών από τη μητέρα με ΑΜΚΑ / 84

41 Πληροφορίες για τα παιδιά μιας μητέρας Να βρεθούν οι ημερομηνίες γέννησης και το φύλλο των παιδιών από τη μητέρα με ΑΜΚΑ Π birthdate,gender (σ mamka= (child)) 41 / 84

42 Πληροφορίες για τα παιδιά μιας μητέρας Να βρεθούν οι ημερομηνίες γέννησης και το φύλλο των παιδιών από τη μητέρα με ΑΜΚΑ Π birthdate,gender (σ mamka= (child)) 1 SELECT birthdate, gender 2 FROM child 3 WHERE mamka = ; 42 / 84

43 Αναζήτηση με βάση τηλέφωνο Να βρεθεί το πλήθος των παιδιών που γέννησε η μητέρα με τηλέφωνο / 84

44 Αναζήτηση με βάση τηλέφωνο Να βρεθεί το πλήθος των παιδιών που γέννησε η μητέρα με τηλέφωνο SELECT COUNT(*) 2 FROM mother m INNER JOIN child c ON m.amka=c.mamka 3 WHERE m.phone= ; 44 / 84

45 Αναζήτηση με βάση τηλέφωνο Να βρεθεί το πλήθος των παιδιών που γέννησε η μητέρα με τηλέφωνο SELECT COUNT(*) 2 FROM mother m INNER JOIN child c ON m.amka=c.mamka 3 WHERE m.phone= ; Προσοχή σε παρόμοια ερωτήματα Είναι μοναδικό το τηλέφωνο ; 45 / 84

46 Επεξεργασία χρονολογικών δεδομένων Να βρεθεί η σημερινή ηλικία της μητέρας με ΑΜΚΑ / 84

47 Επεξεργασία χρονολογικών δεδομένων Να βρεθεί η σημερινή ηλικία της μητέρας με ΑΜΚΑ SELECT YEAR(NOW()) - YEAR(birthdate) 2 FROM mother 3 WHERE amka = ; 47 / 84

48 Τουλάχιστον δύο παιδιά Να βρεθεί το όνομα και το επώνυμο των μητέρων με περισσότερα από ένα παιδιά 48 / 84

49 Τουλάχιστον δύο παιδιά Να βρεθεί το όνομα και το επώνυμο των μητέρων με περισσότερα από ένα παιδιά 1 SELECT m.firstname, m.lastname 2 FROM mother m INNER JOIN child c ON m.amka=c.mamka 3 GROUP BY m.firstname, m.lastname 4 HAVING COUNT(*) > 1; 49 / 84

50 Το βαρύτερο νεογέννητο Να βρεθεί η ημερομηνία γέννησης και το φύλλο του παιδιού με το μεγαλύτερο βάρος 50 / 84

51 Το βαρύτερο νεογέννητο Να βρεθεί η ημερομηνία γέννησης και το φύλλο του παιδιού με το μεγαλύτερο βάρος 1 SELECT birthdate, gender 2 FROM child 3 WHERE weight = (SELECT MAX(weight) 4 FROM child); 51 / 84

52 Η μητέρα του βαρύτερου νεογέννητου Να βρεθεί η σημερινή ηλικία της μητέρας που γέννησε το παιδί με το μεγαλύτερο βάρος 52 / 84

53 Η μητέρα του βαρύτερου νεογέννητου Να βρεθεί η σημερινή ηλικία της μητέρας που γέννησε το παιδί με το μεγαλύτερο βάρος 1 SELECT YEAR(NOW()) - YEAR(m.birthdate) 2 FROM mother m INNER JOIN child c ON m.amka=c.mamka 3 WHERE c.weight = (SELECT MAX(weight) 4 FROM child); 53 / 84

54 Η μητέρα του βαρύτερου νεογέννητου Να βρεθεί η σημερινή ηλικία της μητέρας που γέννησε το παιδί με το μεγαλύτερο βάρος 1 SELECT YEAR(NOW()) - YEAR(m.birthdate) 2 FROM mother m INNER JOIN child c ON m.amka=c.mamka 3 WHERE c.weight = (SELECT MAX(weight) 4 FROM child); Υπάρχει κάτι ακόμα; 1 Χρειάζεται DISTINCT; 2 Υπάρχει περίπτωση το ερώτημα να επιστρέψει διπλότυπα; 54 / 84

55 Το βαρύτερο νεογέννητο Να βρεθεί το πλήθος των γεννήσεων στο μαιευτήριο ανά έτος 55 / 84

56 Το βαρύτερο νεογέννητο Να βρεθεί το πλήθος των γεννήσεων στο μαιευτήριο ανά έτος 1 SELECT YEAR(birthdate), COUNT(*) 2 FROM child 3 GROUP BY YEAR(birthdate); 56 / 84

57 Το βαρύτερο νεογέννητο Να βρεθεί το πλήθος των γεννήσεων στο μαιευτήριο ανά έτος 1 SELECT YEAR(birthdate), COUNT(*) 2 FROM child 3 GROUP BY YEAR(birthdate); Τι ακριβώς επιστρέφει το ερώτημα; 1 Πλήθος τοκετών ή πλήθος γεννήσεων; 2 Τι συμβαίνει με τη γέννηση διδύμων; 57 / 84

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

59 Τι γίνεται με τα δίδυμα; 59 / 84

60 Τι γίνεται με τα δίδυμα; 1 Μπορεί η βάση δεδομένων να καταγράψει και να χειριστεί ένα τέτοιο γεγονός; 60 / 84

61 Τι γίνεται με τα δίδυμα; 1 Μπορεί η βάση δεδομένων να καταγράψει και να χειριστεί ένα τέτοιο γεγονός; 2 Είναι ικανοποιητικό το παρόν μοντέλο δεδομένων; Χρειάζονται αλλαγές; 61 / 84

62 Τι γίνεται με τα δίδυμα; 1 Μπορεί η βάση δεδομένων να καταγράψει και να χειριστεί ένα τέτοιο γεγονός; 2 Είναι ικανοποιητικό το παρόν μοντέλο δεδομένων; Χρειάζονται αλλαγές; 3 Μπορεί να καταγραφεί η γέννηση διδύμων ως νεογέννητα με την ίδια μητέρα και την ίδια ημερομηνία γέννησης; 62 / 84

63 Δίδυμα και SQL Να βρεθεί ποιες μητέρες έχουν γεννήσει δίδυμα 63 / 84

64 Δίδυμα και SQL Να βρεθεί ποιες μητέρες έχουν γεννήσει δίδυμα 1 SELECT m.* 2 FROM mother m 3 WHERE m.amka IN (SELECT c1.mamka 4 FROM child c1, child c2 5 WHERE c1.mamka = c2.mamka 6 AND c1.birthdate = c2.birthdate 7 AND c1.id <> c2.id 8 GROUP BY c1.mamka 9 HAVING COUNT(*) = 2); 64 / 84

65 Δίδυμα και SQL Να βρεθεί ποιες μητέρες έχουν γεννήσει δίδυμα 1 SELECT m.* 2 FROM mother m 3 WHERE m.amka IN (SELECT c1.mamka 4 FROM child c1, child c2 5 WHERE c1.mamka = c2.mamka 6 AND c1.birthdate = c2.birthdate 7 AND c1.id <> c2.id 8 GROUP BY c1.mamka 9 HAVING COUNT(*) = 2); Είμαστε ικανοποιημένοι; 1 Ερώτημα αυτοσύζευξης για μια απλή αναζήτηση; 2 Τι συμβαίνει με τη γέννηση διδύμων σε διαφορετική ημερομηνία (μεσάνυχτα); 65 / 84

66 Δίδυμοι προβληματισμοί 66 / 84

67 Δίδυμοι προβληματισμοί 1 Ολη η συζήτηση των προηγούμενων παραγράφων ταύτισε (εσφαλμένα κάπως) τη γέννηση ενός παιδιού με τη γέννα μιας μητέρας. 67 / 84

68 Δίδυμοι προβληματισμοί 1 Ολη η συζήτηση των προηγούμενων παραγράφων ταύτισε (εσφαλμένα κάπως) τη γέννηση ενός παιδιού με τη γέννα μιας μητέρας. 2 Ο τοκετός μπορεί να αφορά περισσότερα από ένα μωρά, ας διαχωρίζουμε τον τοκετό από τη γέννηση ενός παιδιού. 68 / 84

69 Δίδυμοι προβληματισμοί 1 Ολη η συζήτηση των προηγούμενων παραγράφων ταύτισε (εσφαλμένα κάπως) τη γέννηση ενός παιδιού με τη γέννα μιας μητέρας. 2 Ο τοκετός μπορεί να αφορά περισσότερα από ένα μωρά, ας διαχωρίζουμε τον τοκετό από τη γέννηση ενός παιδιού. 3 Μια μητέρα κάνει πολλές γέννες, και κάθε γέννα μπορεί να έχει πολλά παιδιά. 69 / 84

70 Δίδυμοι προβληματισμοί 1 Ολη η συζήτηση των προηγούμενων παραγράφων ταύτισε (εσφαλμένα κάπως) τη γέννηση ενός παιδιού με τη γέννα μιας μητέρας. 2 Ο τοκετός μπορεί να αφορά περισσότερα από ένα μωρά, ας διαχωρίζουμε τον τοκετό από τη γέννηση ενός παιδιού. 3 Μια μητέρα κάνει πολλές γέννες, και κάθε γέννα μπορεί να έχει πολλά παιδιά. 4 Απαιτείται νέα μοντελοποίηση. 70 / 84

71 Νέο διάγραμμα Ο/Σ amka birthdate id id gender mother 0..* gives 1..1 birth 1..* has 1..1 child phone fname birthdate weight birthdate firstname lastname 71 / 84

72 Παρατηρήσεις για το νέο διάγραμμα Ο/Σ 72 / 84

73 Παρατηρήσεις για το νέο διάγραμμα Ο/Σ 1 Το σύνολο οντοτήτων μητέρα μένει ως έχει αμετάβλητο. 73 / 84

74 Παρατηρήσεις για το νέο διάγραμμα Ο/Σ 1 Το σύνολο οντοτήτων μητέρα μένει ως έχει αμετάβλητο. 2 Η συμμετοχή του συνόλου οντοτήτων μητέρα, στο σύνολο συσχετίσεων τοκετός είναι πλειότιμη: μια μητέρα μπορεί να έχει πολλούς τοκετούς. 74 / 84

75 Παρατηρήσεις για το νέο διάγραμμα Ο/Σ 1 Το σύνολο οντοτήτων μητέρα μένει ως έχει αμετάβλητο. 2 Η συμμετοχή του συνόλου οντοτήτων μητέρα, στο σύνολο συσχετίσεων τοκετός είναι πλειότιμη: μια μητέρα μπορεί να έχει πολλούς τοκετούς. 3 Κάθε γέννα ανήκει σε μία μόνο μητέρα. Επομένως, η συμμετοχή του συνόλου οντοτήτων γέννα στο σύνολο οντοτήτων τοκετός είναι μονότιμη. 75 / 84

76 Παρατηρήσεις για το νέο διάγραμμα Ο/Σ 1 Το σύνολο οντοτήτων μητέρα μένει ως έχει αμετάβλητο. 2 Η συμμετοχή του συνόλου οντοτήτων μητέρα, στο σύνολο συσχετίσεων τοκετός είναι πλειότιμη: μια μητέρα μπορεί να έχει πολλούς τοκετούς. 3 Κάθε γέννα ανήκει σε μία μόνο μητέρα. Επομένως, η συμμετοχή του συνόλου οντοτήτων γέννα στο σύνολο οντοτήτων τοκετός είναι μονότιμη. 4 Η συμμετοχή του συνόλου οντοτήτων παιδί στο σύνολο συσχετίσεων γέννηση είναι μονότιμη. 76 / 84

77 Παρατηρήσεις για το νέο διάγραμμα Ο/Σ 1 Το σύνολο οντοτήτων μητέρα μένει ως έχει αμετάβλητο. 2 Η συμμετοχή του συνόλου οντοτήτων μητέρα, στο σύνολο συσχετίσεων τοκετός είναι πλειότιμη: μια μητέρα μπορεί να έχει πολλούς τοκετούς. 3 Κάθε γέννα ανήκει σε μία μόνο μητέρα. Επομένως, η συμμετοχή του συνόλου οντοτήτων γέννα στο σύνολο οντοτήτων τοκετός είναι μονότιμη. 4 Η συμμετοχή του συνόλου οντοτήτων παιδί στο σύνολο συσχετίσεων γέννηση είναι μονότιμη. 5 Η συμμετοχή του συνόλου οντοτήτων γέννα στο σύνολο συσχετίσεων γέννηση είναι πλειότιμη. 77 / 84

78 Νέο διάγραμμα Ο/Σ amka birthdate id id gender mother 0..* gives 1..1 birth 1..* has 1..1 child phone fname birthdate weight birthdate firstname lastname 78 / 84

79 Ο πίνακας μητέρα 1 CREATE TABLE mother 2 ( 3 amka CHAR(11) NOT NULL, 4 firstname VARCHAR(50) NOT NULL, 5 lastname VARCHAR(50) NOT NULL, 6 birthdate DATE, 7 phone CHAR(10), 8 CONSTRAINT pk PRIMARY KEY (adt) 9 ); 79 / 84

80 Ο πίνακας γέννα 1 CREATE TABLE birth 2 ( 3 id INTEGER NOT NULL AUTO_INCREMENT, 4 mamka CHAR(11) NOT NULL, 5 birthdate DATETIME, 6 CONSTRAINT pk PRIMARY KEY (id), 7 CONSTRAINT fk_amka FOREIGN KEY (mamka) 8 REFERENCES mother(amka) 9 ); 80 / 84

81 Ο πίνακας παιδί 1 CREATE TABLE child 2 ( 3 id INTEGER NOT NULL AUTO_INCREMENT, 4 bid INTEGER NOT NULL, 5 gender CHAR(10), 6 weight FLOAT, 7 CONSTRAINT pk PRIMARY KEY (id), 8 CONSTRAINT fk_bid FOREIGN KEY (bid) 9 REFERENCES birth(id) 10 ); 81 / 84

82 Μητέρες διδύμων Ποιες μητέρες έχουν δίδυμα; 1 SELECT m.* 2 FROM mother m INNER JOIN birth b 3 ON m.amka = b.mamka 4 INNER JOIN child c 5 ON b.id = c.bid 6 GROUP BY m.amka 7 HAVING COUNT(*) = 2; 82 / 84

83 Μητέρες τρίδυμων Ποιες μητέρες έχουν τρίδυμα; 1 SELECT m.* 2 FROM mother m INNER JOIN birth b 3 ON m.amka = b.mamka 4 INNER JOIN child c 5 ON b.id = c.bid 6 GROUP BY m.amka 7 HAVING COUNT(*) = 3; 83 / 84

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Σχεδίαση και Χρήση Βάσεων Δεδομένων. Χρήση του DBDesigner. Γιώργος Πυρουνάκης - forky@di.uoa.gr

Σχεδίαση και Χρήση Βάσεων Δεδομένων. Χρήση του DBDesigner. Γιώργος Πυρουνάκης - forky@di.uoa.gr Σχεδίαση και Χρήση Βάσεων Δεδομένων Χρήση του DBDesigner Γιώργος Πυρουνάκης - forky@di.uoa.gr Δομή Διαλέξεων Εισαγωγή στο DBDesigner Εφαρμογή στη ΒΔ Προμηθευτής-Προϊόντα Παραδείγματα μοντελοποίησης και

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

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

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

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

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

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

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

Ηλεκτρονικοί Υπολογιστές ΙI. Βάσεις Δεδομένων. Ακαδημαϊκό Έτος Εργαστήριο 2. Διαφάνεια 1. Κάπαρης Αναστάσιος

Ηλεκτρονικοί Υπολογιστές ΙI. Βάσεις Δεδομένων. Ακαδημαϊκό Έτος Εργαστήριο 2. Διαφάνεια 1. Κάπαρης Αναστάσιος Βάσεις Δεδομένων Εργαστήριο 2 Διαφάνεια 1 Πώς να δημιουργήσω μια συσχέτιση ένα προς πολλά στην ACCESS; Η απάντηση στο παραπάνω θέμα, θα δοθεί μέσα από ένα παράδειγμα μιας μικρής βάσης δεδομένων. Το μοντέλο

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

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

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

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

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

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

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

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Προσοχή είτε αυτά που ακολουθούν ως παράδειγμα Μην τα ακολουθείτε τυφλά ως «μαγική συνταγή» 2 : Μετατροπή Μοντέλου ΟΣ σε Σχεσιακό

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

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

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

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

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Προσοχή είτε αυτά που ακολουθούν ως παράδειγμα Μην τα ακολουθείτε τυφλά ως «μαγική συνταγή» 1 2 Οντότητες Για κάθε τύπο οντοτήτων και για κάθε τύπο συσχετίσεων δημιουργούμε

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

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

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

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

Εισαγωγήστην SQL. Εργαστήριο Βάσεων εδοµένων

Εισαγωγήστην SQL. Εργαστήριο Βάσεων εδοµένων Εισαγωγήστην SQL Εργαστήριο Βάσεων εδοµένων Σχεσιακό Μοντέλο και εδοµένα Πινάκων ηµιουργίαπινάκων Θα δηµιουργήσουµε µε SQL τους πίνακες του σχεσιακού µοντέλου CREATE TABLE Patient ( Ssn VARCHAR(11), LastName

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

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

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

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

Υποερωτήματα SQL Παραδείγματα και εφαρμογές από τη βάση δεδομένων company Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr astavrak@uoi.gr @AStavrakoudis Άνοιξη 2016 1 / 55 Περιεχόμενα 1 Απλά υποερωτήματα

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

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

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

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

Σχεδίαση Βάσεων Δεδομένων Σχεδίαση Βάσεων Δεδομένων Εισαγωγή στις Έννοιες των Σχεσιακών Βάσεων Δεδομένων Introduction to Relational Database Concepts 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved. Στόχοι Το

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

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

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

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

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

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

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

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

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Γενικά Για κάθε τύπο οντοτήτων και για κάθε τύπο συσχετίσεων δημιουργούμε ένα σχήμα σχέσης που παίρνει το όνομα του

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

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Προσοχή είτε αυτά που ακολουθούν ως παράδειγμα Μην τα ακολουθείτε τυφλά ως «μαγική συνταγή» 1 2 Οντότητες Για κάθε τύπο οντοτήτων και για κάθε τύπο συσχετίσεων δημιουργούμε

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

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

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

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

Εννοιολογικός σχεδιασμός βάσεων δεδομένων Το μοντέλο Οντοτήτων/Συσχετίσεων Αθανάσιος Σταυρακούδης http://stavrakoudis.econ.uoi.gr Άνοιξη 2014 Περιεχόμενα 1 Γενικά για οντότητες και συσχετίσεις 2 Διαγράμματα

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

Παράδειγμα Εμφιαλωτήριο. Διάγραμμα Οντοτήτων - Συσχετίσεων

Παράδειγμα Εμφιαλωτήριο. Διάγραμμα Οντοτήτων - Συσχετίσεων Παράδειγμα Εμφιαλωτήριο Διάγραμμα Οντοτήτων - Συσχετίσεων Παράδειγμα Εμφιαλωτήριο Διάγραμμα σύμφωνα με το σχεσιακό μοντέλο Παράδειγμα Εμφιαλωτήριο Δημιουργία πίνακα Paragogos Create table Paragogos ( kodikos

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

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model .. Εργαστήριο Βάσεων Δεδομένων Relational Model . Σχεσιακό Μοντέλο (Relational Model) Το σχεσιακό μοντέλο παρουσιάζει μια βάση ως συλλογή από σχέσεις Μια σχέση είναι ένας πίνακας με διακριτό όνομα Κάθε

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

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης

ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ. Ακαδημαϊκό Έτος , Εαρινό Εξάμηνο Διδάσκων Καθ.: Νίκος Τσαπατσούλης ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ, ΤΜΗΜΑ ΕΠΙΚΟΙΝΩΝΙΑΣ & ΣΠΟΥΔΩΝ ΔΙΑΔΙΚΤΥΟΥ ΕΣΔ 232: ΟΡΓΑΝΩΣΗ ΔΕΔΟΜΕΝΩΝ ΣΤΗΝ ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Ακαδημαϊκό Έτος 2011 2012, Εαρινό Εξάμηνο Καθ.: Νίκος Τσαπατσούλης ΥΠΟΔΕΙΓΜΑ

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

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

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

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

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 Εισαγωγή, γενικές

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

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

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

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

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό Σχήμα Βάσεις Δεδομένων 2018-2019 Ευαγγελία Πιτουρά 1 Σχήμα μιας βάσης βεδομένων ACTOR Name Day Month Year Sex Nationality MOVIE Title Year Genre Runtime PLAYS Name Title

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

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

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

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

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

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

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

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

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

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

DELETE, UPDATE, INSERT.

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

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

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό

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

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

DELETE, UPDATE, INSERT

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

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

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

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

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

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

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

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

Το Σχεσιακό μοντέλο και η γλώσσα SQL

Το Σχεσιακό μοντέλο και η γλώσσα SQL Το Σχεσιακό μοντέλο και η γλώσσα SQL Μανόλης Γεργατσούλης (manolis@ionio.gr) Αναπληρωτής Καθηγητής Ομάδα Βάσεων Δεδομένων και Πληροφοριακών Συστημάτων, Τμήμα Αρχειονομίας Βιβλιοθηκονομίας, Ιόνιο Πανεπιστήμιο

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

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

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

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

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

Βάσεις δεδομένων. (2 ο μάθημα) Ηρακλής Βαρλάμης Βάσεις δεδομένων (2 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα Μοντελοποίηση δεδομένων Μοντέλο Οντοτήτων Συσχετίσεων Παραδείγματα Διαγραμματικές τεχνικές Συμβολισμοί Τριαδικές συσχετίσεις 2

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

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

Εργαστήριο Βάσεων Δεδομένων Εργαστήριο Βάσεων Δεδομένων Άσκηση 2 Σκοπός της άσκησης είναι: 1. Με δεδομένο το σχεσιακό διάγραμμα, η υλοποίηση μιας βάσης σε MySQL. 2. Η εισαγωγή δεδομένων στη βάση. 3. Η υλοποίηση απλών ερωτημάτων mysql

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2013 1 2 3 ΟΝΟΜΑ ΣΥΝ Αρ. Μητρώου ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2013 Ι. Βασιλείου Τ. Σελλής -----------------------------------------------------------------------------------------------------

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

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό

Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό Βάσεις εδοµένων 2002-2003 Ευαγγελία Πιτουρά 1 Μετατροπή Σχήµατος Ο/Σ σε Σχεσιακό Για κάθε τύπο οντοτήτων και για κάθε τύπο συσχετίσεων δηµιουργούµε ένα σχήµα σχέσης που

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

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2013 - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Αρχιτεκτονική

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 Σκοπός του μαθήματος Αποκλείσετε διπλοεγγραφές από

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

Εργαστήριο Βάσεων Δεδομένων. Relational Model Σχεσιακό Μοντέλο

Εργαστήριο Βάσεων Δεδομένων. Relational Model Σχεσιακό Μοντέλο Εργαστήριο Βάσεων Δεδομένων Relational Model Σχεσιακό Μοντέλο Σχεσιακό μοντέλο (Relational Model) Το σχεσιακό μοντέλο παρουσιάζει μια βάση ως συλλογή από σχέσεις. Μια σχέση είναι ένας πίνακας με διακριτό

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

Σχεδιασµός µιας Β. Εισαγωγή. Μετατροπή σε σχεσιακό -> είσοδο σε ένα Σ Β. Εισαγωγή. Ιδέες Ο/Σ Σχέσεις Σχεσιακό Σ Β

Σχεδιασµός µιας Β. Εισαγωγή. Μετατροπή σε σχεσιακό -> είσοδο σε ένα Σ Β. Εισαγωγή. Ιδέες Ο/Σ Σχέσεις Σχεσιακό Σ Β Εισαγωγή Σχεδιασµός µιας Β ανάλυση ποιας πληροφορίας και της σχέσης ανάµεσα στα στοιχεία της περιγραφή της δοµής - σχήµα σε διάφορους συµβολισµούς ή µοντέλα Μοντέλο Οντοτήτων - Συσχετίσεων γραφικό µοντέλο

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

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

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

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

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

Βάσεις δεδομένων. (3 ο μάθημα) Ηρακλής Βαρλάμης Βάσεις δεδομένων (3 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα Σχεσιακό μοντέλο δεδομένων Σχέσεις, γνωρίσματα, πλειάδες, πεδία ορισμού Πράξεις ενημέρωσης σε σχέσεις Απεικόνιση μοντέλου οντοτήτωνσυσχετίσεων

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

Βάσεις Δεδομένων Ι Εξεταστική Περίοδος Φεβρουαρίου 2006

Βάσεις Δεδομένων Ι Εξεταστική Περίοδος Φεβρουαρίου 2006 Βάσεις Δεδομένων Ι Εξεταστική Περίοδος Φεβρουαρίου 2006 A Θέμα 1 ο (30%) 1. (10%) α) Ποια τα πλεονεκτήματα ενός B + -tree ευρετηρίου; β) Αναφέρετε τις διαφορές ανάμεσα στα αραιά και τα πυκνά ευρετήρια.

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

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

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

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

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

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

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

Ερωτήματα επιλογής με σύζευξη πινάκων

Ερωτήματα επιλογής με σύζευξη πινάκων ΚΕΦΑΛΑΙΟ 13 Ερωτήματα επιλογής με σύζευξη πινάκων Το κεφάλαιο αυτό σας εισάγει στον πραγματικό κόσμο των σχεσιακών βάσεων δεδομένων. Τα ερωτήματα που θα συναντήσετε έχουν πολλούς πίνακες στον όρο FROM,

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

Από το Μοντέλο Οντοτήτων Συσχετίσεων στο Σχεσιακό Μοντέλο

Από το Μοντέλο Οντοτήτων Συσχετίσεων στο Σχεσιακό Μοντέλο Από το Μοντέλο Οντοτήτων Συσχετίσεων στο Σχεσιακό Μοντέλο Μετατροπή Διαγράμματος Οντοτήτων Συσχετίσεων σε Σχεσιακό Μοντέλο, Αλγόριθμος Μετατροπής, Μετατροπή Οντότητας, Μετατροπή Συσχέτισης 1:1, Μετατροπή

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

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

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

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

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

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

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

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

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

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

Certified Data Base Designer (CDBD)

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

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

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

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

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

Τ.Ε.Ι ΘΕΣΣΑΛΟΝΙΚΗΣ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΔΒΔ (ΕΡΓΑΣΤΗΡΙΟ 4) Τελευταία ενημέρωση: 11/2011. Μετασχηματισμός διαγράμματος ER σε σχεσιακό σχήμα ΒΔ

Τ.Ε.Ι ΘΕΣΣΑΛΟΝΙΚΗΣ, ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΔΒΔ (ΕΡΓΑΣΤΗΡΙΟ 4) Τελευταία ενημέρωση: 11/2011. Μετασχηματισμός διαγράμματος ER σε σχεσιακό σχήμα ΒΔ Μετασχηματισμός διαγράμματος ER σε σχεσιακό σχήμα ΒΔ ΣΤΟΧΟΣ Στόχο του παρόντος εργαστηρίου αποτελεί η κατανόηση και η εφαρμογή της μεθοδολογίας του μετασχηματισμού ενός διαγράμματος ER στο αντίστοιχο σχεσιακό

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

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

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

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

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

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

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

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

Σύνολα Ασκήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σύνολα Ασκήσεων Βάσεις Δεδομένων 2018-2019 Ευαγγελία Πιτουρά 1 2 ο Σύνολο Ασκήσεων Άσκηση 3 Οι λύσεις είναι ενδεικτικές υπάρχουν και άλλες σωστές SQL ερωτήσεις για τα ερωτήματα της άσκησης. 2 (γ)(i) Τους

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

Μοντέλο Οντοτήτων-Συσχετίσεων

Μοντέλο Οντοτήτων-Συσχετίσεων Εισαγωγή Εισαγωγή Σχεδιασµός µιας Β ανάλυση ποιας πληροφορίας και της σχέσης ανάµεσα στα στοιχεία της περιγραφή της δοµής - σχήµα σε διάφορους συµβολισµούς ή µοντέλα Μοντέλο Οντοτήτων - Συσχετίσεων γραφικό

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

Βάσεις Δεδομένων Η γλώσσα 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) Ένας από τους βασικούς λόγους της απόλυτης επικράτησης των Σχεσιακών ΒΔ Εξασφαλίζει μεταφερσιμότητα

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

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

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

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

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

Εργαστήριο Βάσεων Δεδομένων Εργαστήριο Βάσεων Δεδομένων Άσκηση 2 Σκοπός της άσκησης είναι: 1. Με δεδομένο το σχεσιακό διάγραμμα, η υλοποίηση μιας βάσης σε MySQL. 2. Η εισαγωγή δεδομένων στη βάση. Για το κείμενο των προδιαγραφών της

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

Παράδειγμα 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 Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός

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

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

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

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

1 / 97

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

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

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

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

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