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

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

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

Transcript

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

2 Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ιόνιο Πανεπιστήμιο» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 1

3 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons 2

4 Προχωρημένη SQL & MySQL 2

5 Στο κεφάλαιο αυτό θα δούμε πιο αναλυτικά τη σχεδίαση βάσεων δεδομένων, χρησιμοποιώντας ως παράδειγμα έναν πίνακα ανακοινώσεων. Εξελιγμένες βάσεις δεδομένων, όπως ένα φόρουμ, απαιτούν ερωτήματα SQL που ονομάζονται ενώσεις (joins), και θα τα εξετάσουμε σε αυτό το κεφάλαιο. Επίσης θα δούμε μια ειδική κατηγορία συναρτήσεων οι οποίες χρησιμοποιούνται για την ομαδοποίηση των αποτελεσμάτων των ερωτημάτων. Τέλος θα δούμε κάποιες προχωρημένες έννοιες της MySQL όπως: ευρετήρια, αλλαγή της δομής των υπαρχόντων πινάκων, αναζητήσεις πλήρους κειμένου και συναλλαγές (transactions). 3

6 1. Σχεδίαση Βάσεων Δεδομένων Το πρώτο πράγμα για τη δημιουργία και τη χρήση μιας βάσης δεδομένων είναι να καθορίσετε τη δομή της (που ονομάζεται και σχήμα, schema). Η σχεδίαση μιας βάσης δεδομένων, η οποία λέγεται και μοντελοποίηση δεδομένων (data modeling), είναι κρίσιμη για την επιτυχημένη μακροπρόθεσμη διαχείριση των πληροφοριών. Με τη διαδικασία της κανονικοποίησης (normalization), εξαλείφετε προσεκτικά τους πλεονασμούς και άλλα προβλήματα που υπονομεύουν την ακεραιότητα της βάσης σας. 4

7 1.1 Κανονικοποίηση Σχεσιακή βάση δεδομένων είναι μια συλλογή δεδομένων οργανωμένων με συγκεκριμένο τρόπο. Ο Δρ. Codd δημιούργησε μια σειρά κανόνων, τις κανονικές μορφές (normal forms) που μας βοηθούν να οργανώνουμε τα δεδομένα μας. Πριν την κανονικοποίηση της βάσης πρέπει να οριστεί ο σκοπός της εφαρμογής που θα αναπτύξετε. Η κατανόηση του τρόπου προσπέλασης των δεδομένων καθορίζει τη μοντελοποίηση. Στο παράδειγμα που θα ακολουθήσει θα φτιάξουμε έναν πίνακα ανακοινώσεων όπου οι χρήστες θα στέλνουν μηνύματα και άλλοι χρήστες θα απαντούν. 5

8 Η βάση δεδομένων του παραδείγματος θα έχει όνομα forum. Στον πίνακα που ακολουθεί μπορείτε να δείτε ένα δείγμα γραμμής δεδομένων. 6

9 1.2 Κλειδιά Υπάρχουν δυο είδη κλειδιών: το πρωτεύον (primary) και το ξένο (foreign). Πρωτεύον κλειδί είναι ένα μοναδικό αναγνωριστικό που πρέπει να ακολουθεί τους παρακάτω κανόνες: Έχει πάντα τιμή (δεν μπορεί να είναι NULL) Η τιμή του δεν αλλάζει ποτέ Έχει μοναδική τιμή για κάθε εγγραφή του πίνακα Το καλύτερο πραγματικό παράδειγμα για το πρωτεύον κλειδί είναι το ΑΦΜ (δεν αλλάζει ποτέ και χαρακτηρίζει μοναδικά κάθε φυσικό πρόσωπο). Όταν σχεδιάζετε τη βάση μπορείτε να ορίσετε ένα αυθαίρετο πρωτεύον κλειδί για κάθε πίνακα. 7

10 Το ξένο κλειδί είναι ένα πεδίο πίνακα, ίδιο με το πρωτεύον κλειδί ενός άλλου πίνακα. Το ξένο και το πρωτεύον κλειδί συνδέουν τους δυο πίνακες μεταξύ τους. Το πρωτεύον κλειδί του πίνακα διευκολύνει την αναφορά στις εγγραφές του πίνακα. 8

11 Για να ορίσετε το πρωτεύον κλειδί στη βάση δεδομένων forum πρέπει να βρείτε ένα πεδίο που να πληροί τις 3 απαιτήσεις του πρωτεύοντος κλειδιού. Κανένα από τα πεδία δεν είναι κατάλληλο άρα δημιουργούμε ένα εμείς. Εδώ προσθέσαμε το πεδίο message ID. Ένα πρωτεύον κλειδί που δεν έχει άλλη σημασία ή σκοπό λέγεται αναπληρωματικό ή εναλλακτικό (surrogate) κλειδί. 9

12 1.3 Σχέσεις Στις βάσεις δεδομένων οι σχέσεις αναφέρονται στον τρόπο σύνδεσης των δεδομένων ενός πίνακα με τα δεδομένα ενός άλλου. Υπάρχουν 3 είδη σχέσεων μεταξύ δυο πινάκων: Αμφιμονοσήμαντη ή ένα προς ένα (one-to-one): ένα μοναδικό στοιχείο του πίνακα Α αντιστοιχεί σε ένα μοναδικό στοιχείο του πίνακα Β. Μονοσήμαντη ή ένα προς πολλά (one-to-many): ένα στοιχείο του πίνακα Α μπορεί να αντιστοιχεί σε πολλά στοιχεία του πίνακα Β. (η πιο συνηθισμένη) Πολυσήμαντη ή πολλά προς πολλά (many-to-many): πολλά στοιχεία του πίνακα Α αντιστοιχούν σε πολλά στοιχεία του πίνακα Β. 10

13 Οι σχέσεις και τα κλειδιά συνεργάζονται, κατά το ότι ένα κλειδί ενός πίνακα είναι συσχετισμένο με ένα κλειδί κάποιου άλλου. 11

14 1.4 Πρώτη Κανονική Μορφή Κανονικοιποίηση είναι η διαδικασία προσαρμογής της δομής μιας βάσης δεδομένων σύμφωνα με κάποιους κανόνες, τις μορφές. Η βάση δεδομένων σας θα πρέπει να ακολουθεί κάθε κανόνα πιστά και τις μορφές με τη σειρά. Για να συμφωνεί η βάση δεδομένων με την Πρώτη Κανονική Μορφή (First Normal Form 1NF) κάθε πίνακς πρέπει να έχει τις εξής ιδιότητες: 1. Κάθε στήλη πρέπει να έχει μόνο μια τιμή 2. Κανένας πίνακας δε μπορεί να περιέχει επαναλαμβανόμενες ομάδες σχετικών μεταξύ τους δεδομένων. 12

15 Για να κάνετε μια βάση δεδομένων συμβατή με 1NF πρέπει: 1. Να εντοπίσετε τα πεδία που περιέχουν πολλές μονάδες πληροφοριών, όπως το πεδίο στο παράδειγμα του forum με το όνομα actual name. 2. Διαιρέστε κάθε πεδίο σε ξεχωριστά πεδία, το πεδίο actual name διαιρέθηκε σε first name και last name κάθε ένα από τα οποία περιέχει μόνο μια τιμή. 3. Μετατρέψτε τις επαναλαμβανόμενες στήλες σε ξεχωριστό πίνακα. 4. Ελέγξτε ξανά αν όλες οι στήλες και οι πίνακες που δημιουργήσαμε είναι συμβατοί με την Πρώτη Κανονική Μορφή. 13

16 Ο πίνακας movies παραβιάζει τον πρώτο κανόνα 1NF γιατί περιέχει επαναλαμβανόμενες στήλες ίδιων δεδομένων (actor 1, actor 2) και επίσης οι στήλες ηθοποιών (actor) και σκηνοθετών (director) δεν είναι ατομικές. 14

17 Για να γίνει ο πίνακας ταινιών συμβατός με τη μορφή 1NF η συσχέτιση ηθοποιών με μια ταινία θα γίνεται σε αυτόν τον πίνακα. 15

18 1.5 Δεύτερη Κανονική Μορφή Για να είναι μια βάση δεδομένων στη Δεύτερη Κανονική Μορφή (2NF) πρέπει πρώτα να είναι ήδη στην 1NF. Στη συνέχεια κάθε στήλη του πίνακα που δεν είναι κλειδί πρέπει να εξαρτάται από πρωτεύον κλειδί. Οι στήλες που παραβαίνουν αυτόν τον κανόνα έχουν ίδιες τιμές σε πολλές γραμμές. Αυτές οι τιμές πρέπει να αποθηκευτούν σε δικό τους πίνακα και να συνδεθούν με τον αρχικό μέσω ενός κλειδιού. Για να γίνουν πιο κατανοητά όλα τα παραπάνω επιστρέφουμε στα προηγούμενα παραδείγματα. 16

19 Ο πίνακας movies θα περιέχει το σκηνοθέτη Martin Scorsese περισσότερες από 20 φορές. Έτσι καταστρατηγείται ο κανόνας 2NF επειδή η στήλη με το όνομα του σκηνοθέτη δεν αποτελεί κλειδί και δεν εξαρτάται από το πρωτεύον κλειδί (τον κωδικό της ταινίας). Λύση αποτελεί η δημιουργία ενός ξεχωριστού πίνακα σκηνοθετών (directors) που θα περιέχει τις πληροφορίες για τους σκηνοθέτες και θα αναθέτει ένα πρωτεύον κλειδί σε κάθε σκηνοθέτη. Για να συσχετίσουμε τους 2 πίνακες θα προσθέσουμε το πρωτεύον κλειδί του πίνακα directors ως ξένο κλειδί στον πίνακα movies. 17

20 Στον πίνακα movies-actors ο τίτλος της ταινίας και τα ονόματα των ηθοποιών καταστρατηγούν τον κανόνα 2NF (δεν είναι κλειδιά και δεν εξαρτώνται από το πρωτεύον κλειδί του πίνακα). Η βάση δεδομένων κινηματογραφικών ταινιών σε αυτή την απλή μορφή της χρειάζεται τέσσερις πίνακες. 18

21 Για να κάνετε μια βάση δεδομένων συμβατή με 2NF πρέπει: 1. Εντοπίστε τις στήλες που δεν είναι κλειδιά και δεν εξαρτώνται από το πρωτεύον κλειδί του πίνακα. 2. Δημιουργήστε τους κατάλληλους νέους πίνακες.(η πιο λογική τροποποίηση της βάσης δεδομένων forum είναι η δημιουργία 3 πινάκων: users, forums και messages) 19

22 3. Αναθέστε ή δημιουργήστε νέα πρωτεύοντα κλειδιά. (κάθε νέος πίνακας θα έχει ένα πρωτεύον κλειδί) 20

23 4. Δημιουργήστε τα αναγκαία ξένα κλειδιά και καθορίστε τις σχέσεις. Το τελευταίο βήμα για τη συμβατότητα με 2NF είναι να συσχετίσετε τους πίνακες με ξένα κλειδιά. Θυμηθείτε ότι το πρωτεύον κλειδί ενός πίνακα πολύ πιθανό να είναι ξένο κλειδί σε κάποιον άλλο. 21

24 1.6 Τρίτη Κανονική Μορφή Για να είναι μια βάση δεδομένων στην Τρίτη Κανονική Μορφή (3NF) πρέπει να είναι ήδη στη Δεύτερη Κανονική Μορφή (2NF) και όλες οι στήλες που δεν είναι κλειδιά να αμοιβαία ανεξάρτητες. Η βάση δεδομένων forum δεν έχει πρόβλημα και έτσι θα αναλύσουμε τα βήματα που πρέπει να ακολουθήσετε ώστε η βάση δεδομένων clients (περιέχει πληροφορίες των πελατών μιας επιχείρησης όπως όνομα, επώνυμο, τηλέφωνο, διεύθυνση, πόλη, νομός, ταχυδρομικός κωδικός) να είναι συμβατή με 3NF. 22

25 Για να κάνετε μια βάση δεδομένων συμβατή με 3NF πρέπει: 1. Εντοπίστε τυχόν αλληλοεξαρτώμενα πεδία των πινάκων (όπως η πόλη και ο νομός) 2. Δημιουργήστε τους κατάλληλους νέους πίνακες. (δημιουργήστε ξεχωριστούς πίνακες cities και states) 3. Ορίστε ή δημιουργήστε νέα πρωτεύοντα κλειδιά. (κάθε πίνακας πρέπει να έχει πρωτεύον κλειδί) 4. Δημιουργήστε τα αναγκαία ξένα κλειδιά για τη σύνδεση των πινάκων. 23

26 1.7 Δημιουργία της Βάσης Δεδομένων Τα τρία τελικά βήματα σχεδίασης της βάσης δεδομένων είναι τα εξής: 1. Προσεκτικός έλεγχος αν αποθηκεύονται όλες οι απαιτούμενες πληροφορίες. 2. Προσδιορισμός των τύπων των στηλών. 3. Ονομασία όλων των στοιχείων της βάσης δεδομένων. Αν κάνετε αλλαγές στους πίνακες πρέπει να ελέγχετε αν παραμένουν συμβατοί με τις κανονικές μορφές. Αφού ολοκληρωθεί το σχήμα μπορείτε να το υλοποιήσετε στη MySQL. 24

27 Το τελικό σχέδιο για τη βάση δεδομένων forum. 25

28 Δημιουργήστε τη βάση δεδομένων: 1. Προσπελάστε τη MySQL με όποιο πελάτη θέλετε. 2. Δημιουργήστε τη βάση δεδομένων forum. 3. Δημιουργήστε τον πίνακα forum Η σειρά δημιουργίας των πινάκων δεν έχει σημασία. 26

29 4. Δημιουργήστε τον πίνακα messages 5. Δημιουργήστε τον πίνακα users 27

30 6. Ελέγξτε τη δομή της βάσης δεδομένων Αν και αυτό το βήμα είναι προαιρετικό καλό είναι να πραγματοποιείται. 28

31 1.8 Συμπλήρωση της Βάσης Δεδομένων Συμπληρώστε τη βάση δεδομένων: 1. Προσθέστε μερικές νέες εγγραφές στον πίνακα forums 2. Προσθέστε μερικές εγγραφές στον πίνακα users 3. Προσθέστε νέες εγγραφές στον πίνακα messages 4. Επαναλάβετε τα βήματα 1 έως 3 για να συμπληρώσετε τη βάση. 29

32 2. Ενώσεις Επειδή οι σχεσιακές βάσεις δεδομένων έχουν πιο πολύπλοκη δομή, μερικές φορές για να ανακτήσετε τις πληροφορίες που χρειάζεστε πρέπει να χρησιμοποιήσετε ειδικές εντολές ερωτημάτων. Απλές εργασίες που απαιτούν δυο ξεχωριστά ερωτήματα μπορείτε να τις φέρετε σε πέρας με ένα ερώτημα χρησιμοποιώντας μια ένωση (join). Η ένωση είναι ένα ερώτημα της SQL που χρησιμοποιεί δυο ή περισσότερους πίνακες και παράγει έναν εικονικό πίνακα αποτελεσμάτων. Οι δυο κύριοι τύποι ενώσεων είναι οι εσωτερικές (inner) και οι εξωτερικές (outer), κάθε τύπος έχει διάφορους δευτερεύοντες τύπους. 30

33 Μια εσωτερική ένωση επιστρέφει όλες τις εγγραφές των καθοριζόμενων πινάκων που ικανοποιούν τις συνθήκες. Παράδειγμα: αν θέλετε να βρείτε όλα τα μηνύματα του φόρουμ kindling η κατάλληλη εσωτερική ένωση είναι η εξής: Αυτή η ένωση επιλέγει κάθε στήλη και από τους δυο πίνακες εφόσον ικανοποιούνται δυο συνθήκες. 1.Η στήλη forums.name πρέπει να έχει τιμή kindling 2.Η τιμή forum_id του πίνακα forums πρέπει να είναι ίση με την τιμή forum)id του πίνακα messages. 31

34 Λόγω της σύγκρισης ισότητας μεταξύ δυο πινάκων (messages.forum_id = forums.forum_id), η ένωση αυτή είναι γνωστή ως ισοένωση (equijoin). Οι εσωτερικές ενώσεις μπορούν να γραφούν και χωρίςς τον όρο INNER JOIN Εφόσον οι πίνακες που αναφέρονται στο ερώτημα έχουν στήλες με το ίδιο όνομα, πρέπει να χρησιμοποιείτε τη σύνταξη τελείας (πίνακας.στήλη). Αν δεν είστε σαφείς όταν αναφέρεστε στις στήλες σας θα συμβεί σφάλμα. 32

35 Η εξωτερική ένωση διαφέρει από την εσωτερική στο ότι μπορεί να επιστρέφει εγγραφές που δεν πληρούν κάποια συνθήκη. Υπάρχουν τρεις δευτερεύοντες τύποι εξωτερικών ενώσεων: αριστερή, δεξιά και πλήρης. Στις αριστερές εξωτερικές ενώσεις το πιο σημαντικό είναι ο πίνακας που παραθέτουμε πρώτο. Παράδειγμα αριστερής ένωσης: 33

36 Και στις εσωτερικές και στις εξωτερικές ενώσεις αν οι στήλες που συγκρίνονται για μια ισότητα έχουν ίδιο όνομα και στους δυο πίνακες, τότε απλοποιήστε το ερώτημα με τον όρο USING: Στις ενώσεις η έννοια των ψευδωνύμων της SQL διευκολύνει τη γραφή τους. Λόγω τη επιστροφής πολλών αποτελεσμάτων καλό είναι να ορίζουμε ακριβώς ποιες στήλες θέλουμε να εμφανίζονται. 34

37 2.1 Χρησιμοποιήστε Ενώσεις 1. Ανακτήστε το όνομα του φόρουμ και το θέμα του μηνύματος από κάθε εγγραφή του πίνακα messages. αυτό το ερώτημα, που περιλαμβάνει μια εσωτερική ένωση, στη θέση της τιμής forum_id του πίνακα messages θα εμφανίσει την τιμή name του πίνακα forums, για κάθε εγγραφή του πίνακα messages. Έτσι στο τελικό αποτέλεσμα δίπλα από κάθε θέμα μηνύματος εμφανίζεται το όνομα του αντίστοιχου φόρουμ. 35

38 2. Ανακτήστε το θέμα και την ημερομηνία δημοσίευσης κάθε μηνύματος του χρήστη funny man και αυτή η ένωση χρησιμοποιεί δυο πίνακες, τους users και messages. Η στήλη που τους συνδέει είναι η user_id, γι αυτό και τη συμπεριλάβαμε στον όρο USING. 36

39 3. Ανακτήστε τον κωδικό μηνύματος, το θέμα και το όνομα του φόρουμ για κάθε μήνυμα του χρήστη troutster. αυτή η ένωση ενσωματώνει και έναν τρίτο πίνακα. 4. Ανακτήστε το όνομα του χρήστη, το θέμα του μηνύματος και το όνομα του φόρουμ για κάθε χρήστη. 37

40 Μπορείτε να ενώσετε έναν πίνακα ακομά και με τον εαυτό του (αυτοένωση self-join). Στις συνθήκες των ενώσεων μπορείτε να συγκρίνετε οποιεσδήποτε στήλες, όχι μόνο πρωτεύοντα και ξένα κλειδιά. Μπορείτε να εκτελέσετε ενώσεις μεταξύ διαφορετικών βάσεων δεδομένων, χρησιμοποιώντας τη σύνταξη βάση δεδομένων.πίνακας.στήλη εφόσον οι βάσεις δεδομένων βρίσκονται στον ίδιο διακομιστή. Οι ενώσεις που δεν περιέχουν όρο WHERE λέγονται πλήρεις (FULL) και επιστρέφουν όλες τις εγγραφές και από τους δυο πίνακες. 38

41 3. Ομαδοποίηση επιλεγμένων αποτελεσμάτων Ο όρος GROUP BY συγκεντρώνει τα επιστρεφόμενα δεδομένα σε συναφείς ομάδες πληροφοριών. Παράδειγμα: χρησιμοποιήστε το παρακάτω ερώτημα για να ομαδοποιήσετε τα μηνύματα ανά φόρουμ: SELECT * FROM messages GROUP BY forum_id. Τα δεδομένα που επιστρέφονται διαφέρουν στο ότι τώρα οι συναφείς πληροφορίες είναι συγκεντρωμένες αντί να παρουσιάζονται ασύνδετες η μια από την άλλη. 39

42 3.1 Ομαδοποιήστε Δεδομενα 1. Υπολογίστε το πλήθος των εγγεγραμμένων χρηστών. SELECT COUNT(user_id) FROM users; Η COUNT() ίσως είναι η πιο δημοφιλής συνάρτηση ομαδοποίησης. Σας επιτρέπει να μετρήσετε γρήγορα τις εγγραφές ενός πίνακα. Σημειώστε ότι δεν περιλαμβάνουν απαραίτητα όρους GROUP BY όλα τα ερωτήματα που χρησιμοποιούν συναρτήσεις ομαδοποίησης. 2. Υπολογίστε πόσες φορές έχει στείλει μήνυμα κάθε χρήστης. 40

43 3. Βρείτε τους δυο χρήστες με τα περισσότερα μηνύματα. Ο όρος GROUP BY συγκεντρώνει όλες τις τιμές NULL μαζί. Όταν εφαρμόζετε τη συνάρτηση COUNT() να είστε προσεκτικοί γιατί μετράει μόνο τις μη NULL τιμές. 41

44 4. Δημιουργία Ευρετηρίων Τα ευρετήρια (indexes) είναι ένα ειδικό σύστημα που χρησιμοποιούν οι βάσεις δεδομένων για τη βελτίωση της απόδοσης των ερωτημάτων επιλογής (SELECT). Τα ευρετήρια τοποθετούνται σε μια ή περισσότερες στήλες οποιουδήποτε τύπου. Η MySQL επιτρέπει τη χρήση τουλάχιστον 16 ευρετηρίων σε κάθε πίνακα και κάθε ευρετήριο μπορεί να περιλαμβάνει μέχρι 15 στήλες. Αν και ένα ευρετήριο επιταχύνει τη διαδικασία ανάγνωσης από βάσεις δεδομένων, επιβραδύνει τα ερωτήματα που τροποποιούν τα δεδομένα μιας βάσης δεδομένων. 42

45 Τα ευρετήρια είναι πιο κατάλληλα για τις στήλες με τις εξής ιδιότητες: Χρησιμοποιούνται συχνά στον όρο WHERE των ερωτημάτων Χρησιμοποιούνται συχνά στον όρο ORDER BY των ερωτημάτων Χρησιμοποιούνται συχνά σε ερωτήματα ένωσης Έχουν πολλές διαφορετικές τιμές Η MySQL έχει 4 είδη ευρετηρίων: 1. INDEX (τυπικό) 2. UNIQUE (μοναδικό - κάθε γραμμή να έχει διαφορετική τιμή στήλης) 3. FULLTEXT (για αναζητήσεις πλήρους κειμένου) 4. PRIMARY KEY (ένα ειδικό ευρετήριο τύπου UNIQUE που έχετε ήδη χρησιμοποιήσει) 43

46 Μια στήλη θα έχει πάντα το ίδιο μοναδικό ευρετήριο. Η προσθήκη ευρετηρίου σε υπάρχοντες πίνακες απαιτεί τη χρήση της διαταγής ALTER. Η βασική σύνταξη της ALTER είναι: ALTER TABLE όνομα_πίνακα ΟΡΟΣ 44

47 Προσθέστε ένα ευρετήριο σε υπάρχοντα πίνακα: 1. Προσθέστε ένα ευρετήριο στη στήλη name του πίνακα forums ALTER TABLE forums ADD UNIQUE(name); Επειδή το πεδίο name μπορεί και αυτό να προσπελάζεται συχνά και η τιμή του πρέπει να είναι μοναδική σε κάθε γραμμή, προσθέστε στον πίνακα ένα ευρετήριο UNIQUE. 2. Προσθέστε ευρετήρια στον πίνακα messages 45

48 3. Προσθέστε ευρετήρια στον πίνακα users 4. Ελέγξτε την τρέχουσα δομή κάθε πίνακα Ο όρος DESCRIBE εμφανίζει πληροφορίες για τα ονόματα και τη σειρά των στηλών ενός πίνακα, για τους τύπους των στηλών και για τους τύπους των ευρετηρίων. 46

49 5. Χρήση Διαφορετικών Τύπων Πινάκων Η εφαρμογή βάσεων δεδομένων MySQL υποστηρίζει πολλούς διαφορετικούς τύπους πινάκων (ο τύπος ένος πίνακα λέγεται και μηχανή αποθήκευσης storage engine). Κάθε τύπος πίνακα υποστηρίζει διαφορετικές δυνατότητες, έχει τους δικούς του περιορισμούς και αποδίδει καλύτερα ή χειρότερα ανάλογα με τις περιστάσεις. Παρόλο που κάθε πίνακας έχει διαφορετικό τύπο ο τρόπος αλληλεπίδρασής σας με τον πίνακα όσον αφορά την εκτέλεση ερωτημάτων είναι γενικά ίδιος για όλους τους πίνακες. 47

50 Ο πιο σημαντικός τύπος πίνακα είναι ο MyISAM, ο προεπιλεγμένος τύπος πίνακα για όλα τα λειτουργικά συστήματα εκτός από τα Windows. Οι πίνακες MyISAM είναι ιδανικοί για τις περισσότερες εφαρμογές και χειρίζονται τα ερωτήματα SELECT και INSERT πολύ γρήγορα. Το κύριο μειονέκτημά τους είναι ότι δεν μπορούν να χειριστούν συναλλαγές. Ο πίνακας InnoDB είναι ο προεπιλεγμένος τύπος πίνακα των εγκαταστάσεων MySQL σε Windows. Είναι κατάλληλος για συναλλαγές και εκτελεί ερωτήματα ενημέρωσης χωρίς πρόβλημα. Είναι όμως πιο αργός από τον προηγούμενο και χρειάζεται περισσότερο χώρο δίσκου στο διακομιστή. Επίσης δεν υποστηρίζει ευρετήρια FULLTEXT 48

51 Για να καθορίσετε τη μηχανή αποθήκευσης κατά τον ορισμό ενός πίνακα, προσθέστε ένα σχετικό όρο στο τέλος της εντολής: Αν δεν καθορίσετε μηχανή αποθήκευσης θα χρησιμοποιηθεί ο προεπιλεγμένος τύπος του συγκεκριμένου διακομιστή MySQL. Για να αλλάξετε τον τύπο ενός πίνακα χρησιμοποιήστε μια διαταγή ALTER: ALTER TABLE όνομα_πίνακα ENGINE = MYISAM 49

52 Αλλάξτε τον τύπο ενός πίνακα: 1. Δείτε τις τρέχουσες πληροφορίες για τους πίνακες. SHOW TABLE STATUS; Αυτή η διαταγή εμφανίζει διάφορες χρήσιμες πληροφορίες για τους πίνακες μιας βάσης δεδομένων. Το αποτέλεσμα που επιστρέφει είναι λίγο δυσανάγνωστο. Το πρώτο στοιχείο κάθε γραμμής είναι το όνομα του πίνακα και το δεύτερο είναι η μηχανή αποθήκευσης. 50

53 2. Αν χρειάζεται, αλλάξτε τον τύπο του πίνακα messages σε MyISAM. ALTER TABLE messages ENGINE = MYISAM; 3. Αν θέλετε επαληθεύστε την αλλαγή της μηχανής αποθήκευσης εκτελώντας ξανά τη διαταγή SHOW TABLE STATUS. Η ίδια βάση δεδομένων μπορεί να περιέχει πίνακες διαφόρων τύπων. 51

54 6. Αναζητήσεις Πλήρους Κειμένου Οι αναζητήσεις πλήρους κειμένου απαιτούν ευρετήρια τύπου FULLTEXT που με τη σειρά τους απαιτούν πίνακες τύπου MyISAM. Η προσθήκη εγγράφων σε πίνακες με ευρετήρια τύπου FULLTEXT μπορεί να είναι πολύ πιο αργή λόγω του σύνθετου ευρετηρίου που απαιτείται. Μπορείτε να προσθέσετε ευρετήρια FULLTEXT σε πολλές στήλες. Ένα ευρετήριο FULLTEXT μπορεί να εφαρμοστεί σε ένα μόνο πίνακα κάθε φορά. 52

55 6.1 Εκτέλεση Βασικών Αναζητήσεων Πλήρους Κειμένου Αφού ορίσετε ένα ευρετήριο τύπου FULLTEXT σε μια ή περισσότερες στήλες, μπορείτε να ξεκινήσετε τις αναζητήσεις με τον όρο MATCH AGAINST σε μια συνθήκη WHERE: SELECT * FROM ονομα_πίνακα WHERE MATCH (στήλες) AGAINST (λέξεις_κλειδιά) Η MySQL θα εμφανίσει τις γραμμές που ταιριάζουν με τις λέξεις κλειδιά. 53

56 Η σειρά εμφάνισης υπολογίζεται με μαθηματικό τρόπο, όπως στις μηχανές αναζήτησης. Εδώ ισχύουν οι παρακάτω κανόνες: Οι συμβολοσειρές αναλύονται στις μεμονωμένες λέξειςκλειδιά. Οι λέξεις-κλειδιά με μήκος μικρότερο από τέσσερις χαρακτήρες αγνοούνται. Οι πολύ συνηθισμένες λέξεις, που ονομάζονται λέξεις διακοπής (stopwords), αγνοούνται. Αν περισσότερο από το 50% των εγγραφών ταιριάζουν με τις λέξεις-κλειδιά, δεν επιστρέφονται εγγραφές. Όταν ο πίνακας είναι αραιός απλώς δεν υπάρχουν αρκετές εγγραφές ώστε η MySQL να επιστρέψει συναφή αποτελέσματα. 54

57 Εκτελέστε αναζητήσεις πλήρους κειμένου: 1. Συμπληρώστε προσεκτικά τον πίνακα messages, φροντίζοντας να προσθέσετε εκτενή σώματα μηνυμάτων 2. Εκτελέστε μια απλή αναζήτηση πλήρους κειμένου με τη λέξη-κλειδί database. 3. Εκτελέστε την ίδια αναζήτηση πλήρους κειμένου, αυτή τη φορά εμφανίζοντας και τη συνάφεια. 55

58 4. Εκτελέστε μια αναζήτηση πλήρους κειμένου με πολλές λέξεις-κλειδιά. Η MySQL διαθέτει πολλές εκατοντάδες προεπιλεγμένες λέξεις διακοπής. Το ελάχιστο μήκος των λέξεων-κλειδιών (εξ ορισμού τέσσερις χαρακτήρες) είναι μια ρύθμιση της MySQL που μπορείτε να αλλάξετε. Στις αναζητήσεις πλήρους κειμένου, εξ ορισμού δε γίνεται διάκριση πεζών-κεφαλαίων. 56

59 6.2 Λογικές Αναζητήσεις Πλήρους Κειμένου Μπορούμε να εκτελέσουμε πιο σύνθετες αναζητήσεις με τη λογική (Boolean) κατάσταση αναζήτησης πλήρους κειμένου. Για το σκοπό αυτό προσθέτουμε τη φράση IN BOOLEAN MODE στον όρο AGAINST: Η λογική κατάσταση αναζήτησης διαθέτει διάφορους τελεστές για να καθορίζουμε τον ακριβή τρόπο χειρισμού κάθε λέξης-κλειδιού: 57

60 Όταν χρησιμοποιείτε λογική αναζήτηση, υπάρχουν αρκετές διαφορές από την αναζήτηση πλήρους κειμένου (FULLTEXT): Αν πριν από μια λέξη κλειδί δεν υπάρχει τελεστής, αυτή η λέξη είναι προαιρετική, αλλά αν υπάρχει ταύτιση, αυτή θα αξιολογηθεί ως περισσότερο ακριβής. Αποτελέσματα επιστρέφονται ακόμα και αν το κείμενο αναζήτησης υπάρχει σε περισσότερες από τις μισές εγγραφές. Τα αποτελέσματα δεν ταξινομούνται αυτόματα με βάση τη συνάφεια. Ένας βασικός κανόνας είναι ότι υπάρχει ελάχιστο μήκος για το κείμενο αναζήτησης. 58

61 59

62 Εκτελέστε λογικές αναζητήσεις πλήρους κειμένου: 1. Εκτελέστε μια απλή αναζήτηση πλήρους κειμένου για τις λέξεις HTML, XHTML, ή (X)HTML. Για να γίνουν τα αποτελέσματα πιο ευανάγνωστα χρησιμοποιήσαμε την παράμετρο \G η οποία ορίζει στην mysql να παρουσιάσει τα αποτελέσματα κατακόρυφα και όχι οριζόντια. 2. Βρείτε τις εγγραφές που περιέχουν τη λέξη database, με έμφαση στη φράση normal form 60

63 6.3 Βελτιστοποίηση Βάσης Δεδομένων Η απόδοση της βάσης δεδομένων σας εξαρτάται κυρίως από τη δομή της και τα ευρετήρια. Όταν δημιουργείτε βάσεις δεδομένων προσπαθήστε τα εξής: Να επιλέγετε την πιο κατάλληλη μηχανή αποθήκευσης. Να χρησιμοποιείτε για κάθε στήλη το μικρότερο δυνατό τύπο δεδομένων. Να ορίζετε τις στήλες ως NOT NULL, όπου είναι δυνατό. Να χρησιμοποιείτε ακέραιους ως πρωτεύοντα κλειδιά. Να ορίζετε με προσοχή τα ευρετήρια, επιλέγοντας τον κατάλληλο τύπο και εφαρμόζοντάς τα στις κατάλληλες στήλες. Αν γίνεται, να περιορίζετε τα ευρετήρια σε συγκεκριμένο πλήθος χαρακτήρων. 61

64 Εκτός από τις συμβουλές αυτές, υπάρχουν δυο απλές τεχνικές βελτιστοποίησης βάσεων δεδομένων. Ένας τρόπος είναι η εκτέλεση μιας διαταγής OPTIMIZE σε τέτοιους πίνακες. Το ερώτημα απαλλάσσει έναν πίνακα από περιττές επιβαρύνσεις, επιταχύνοντας έτσι την αλληλεπίδραση με αυτόν. OPTIMIZE TABLE όνομα_πίνακα Ο άλλος τρόπος είναι να καταλάβετε πως θα εκτελέσει το ερώτημα η MySQL. Αυτό μπορεί να επιτευχθεί με τη χρήση της λέξης κλειδιού EXPLAIN της SQL. 62

65 7. Συναλλαγές Μια συναλλαγή βάσης δεδομένων είναι μια σειρά ερωτημάτων που εκτελούνται σε μια περίοδο εργασίας. Με τις συναλλαγές μπορείτε να ορίσετε σημεία εκκίνησης και διακοπής και μετά να οριστικοποιείτε ή να ανακαλείτε τα ερωτήματα σύμφωνα με τις ανάγκες. Για συναλλαγές στη MySQL πρέπει να χρησιμοποιείτε μόνο πίνακες τύπου InnoDB. Για να ξεκινήσετε μια νέα συναλλαγή πληκτρολογήστε START TRANSACTION; Όταν τελειώσετε είτε δίνετε τη διαταγή COMMIT για την οριστικοποίηση είτε τη ROLLBACK για να αναιρέσετε το αποτέλεσμα όλων των ερωτημάτων. 63

66 Αφού οριστικοποιήσετε ή ανασκευάσετε τα ερωτήματα, η συναλλαγή θεωρείται ολοκληρωμένη και η MySQL επιστρέφει σε μια κατάσταση αυτόματης οριστικοποίησης. Κάποιοι τύποι ερωτημάτων δεν ανασκευάζονται όπως: ερωτήματα δημιουργίας, τροποποίησης, περικοπής ή διαγραφής πινάκων, δημιουργίας ή διαγραφής βάσεων δεδομένων. Οι συναλλαγές αναφέρονται σε συγκεκριμένη σύνδεση με τη βάση δεδομένων. 64

67 Εκτελέστε συναλλαγές: 1. Συνδεθείτε στον πελάτη mysql και επιλέξτε τη βάση δεδομένων test. 2. Δημιουργήστε ένα νέο πίνακα με το όνομα accounts 65

68 3. Συμπληρώστε τον πίνακα. 4. Ξεκινήστε μια συναλλαγή και εμφανίστε τα τρέχοντα περιεχόμενα του πίνακα. 5. Αφαιρέστε 100$ από το λογαριασμό του David Sedaris 66

69 6. Προσθέστε 100$ στο λογαριασμό της Sarah Vowell 7. Ελέγξτε τα αποτελέσματα SELECT * FROM accounts; 8. Ανασκευάστε τη συναλλαγή ROLLBACK; 9. Ελέγξτε τα αποτελέσματα SELECT * FROM accounts; 10. Επαναλάβετε τα βήματα 4 έως Οριστικοποιήστε τη συναλλαγή και επαληθεύστε τα αποτελέσματα 67

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

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

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

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

Βάσεις Δεδομένων. Ενότητα 5: ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών Βάσεις Δεδομένων Ενότητα 5: ΚΑΝΟΝΙΚΟΠΟΙΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

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

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

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

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

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

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

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

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

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

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

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

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

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access Κεφάλαιο 2 Χειρισμός πινάκων... 27 Περιεχόμενα Κεφάλαιο 1 Εισαγωγή στην Access... 9 Γνωριμία με την Access... 12 Δημιουργία βάσης δεδομένων... 22 Άνοιγμα και κλείσιμο βάσης δεδομένων... 24 Ερωτήσεις ανακεφαλαίωσης... 25 Πρακτική εξάσκηση...

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

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

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

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

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

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

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

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

Ενότητα. Σχεδίαση Βάσεων Δεδομένων Ενότητα 3 Σχεδίαση Βάσεων Δεδομένων 2 3 3.1 Εισαγωγή Μία βάση δεδομένων αποτελείται από δεδομένα για διάφορα θέματα τα οποία όμως σχετίζονται μεταξύ τους και είναι καταχωρημένα με συγκεκριμένο τρόπο. Όλα

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

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

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

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

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

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

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

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

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

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

Λίγα λόγια από το συγγραφέα...7

Λίγα λόγια από το συγγραφέα...7 Περιεχόμενα Λίγα λόγια από το συγγραφέα...7 Κεφάλαιο 1: Σχεδιασμός βάσης δεδομένων και δημιουργία πίνακα...9 Κεφάλαιο 2: Περαιτέρω τροποποίηση δομής πίνακα...41 Κεφάλαιο 3: Σχέσεις...84 Κεφάλαιο 4: Ερωτήματα...105

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

Σχεδιασμός των Πινάκων μίας Βάσης Δεδομένων

Σχεδιασμός των Πινάκων μίας Βάσης Δεδομένων Σχεδιασμός των Πινάκων μίας Βάσης Δεδομένων 3 ΚΥΡΙΑ ΣΗΜΕΙΑ ΤΟΥ ΚΕΦΑΛΑΙΟΥ Επιλογή τύπου δεδομένων και ιδιότητες πεδίων Δημιουργία πινάκων Συσχετισμός πινάκων ΑΡΧΕΙΑ ΕΡΓΑΣΙΑΣ ΠΑΡΑΓΓΕΛΙΕΣ, ΠΑΡΑΓΓΕΛΙΕΣ ΤΕΛΙΚΟ

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

Οδηγίες Χρήσης της MySQL

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

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

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

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

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

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων Ενότητα 4 Επεξεργασία πινάκων 36 37 4.1 Προσθήκη πεδίων Για να εισάγετε ένα πεδίο σε ένα πίνακα που υπάρχει ήδη στη βάση δεδομένων σας, βάζετε τον κέρσορα του ποντικιού στο πεδίο πάνω από το οποίο θέλετε

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

Οδηγίες Χρήσης της MySQL

Οδηγίες Χρήσης της MySQL ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΗΜΕΙΩΣΕΙΣ ΣΕ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Οδηγίες Χρήσης της MySQL Διδάσκων: Γιάννης Θεοδωρίδης Συντάκτης Κειμένου: Βαγγέλης Κατσικάρος Απρίλιος 2007 1 Περιεχόμενα Εισαγωγή...2

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

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

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

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

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

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

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

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο)

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Επιστημονικός συνεργάτης Εργαστηρίου: Στέλλα Λάμπουρα Εαρινό εξάμηνο Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί

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

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

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

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

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

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

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

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

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

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

Δομές Δεδομένων. Ενότητα 11: Τεχνικές Κατακερματισμού. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής.

Δομές Δεδομένων. Ενότητα 11: Τεχνικές Κατακερματισμού. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Ενότητα 11: Τεχνικές Κατακερματισμού Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ 1 Βάση Δεδομένων: Με το όρο Βάση Δεδομένων εννοούμε ένα σύνολο δεδομένων που είναι οργανωμένο

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

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

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

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

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25 Περιεχόμενα Κεφάλαιο 1 Εισαγωγή στην Access...9 Γνωριμία με την Access... 12 Δημιουργία βάσης δεδομένων... 18 Άνοιγμα και κλείσιμο βάσης δεδομένων... 21 Ερωτήσεις ανακεφαλαίωσης... 22 Πρακτική εξάσκηση...

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS Μια βάση δεδομένων είναι μια οργανωμένη συλλογή πληροφοριών, οι οποίες είναι αποθηκευμένες σε κάποιο αποθηκευτικό μέσο (π.χ σκληρό δίσκο). Οι πληροφορίες τις οποίες καταχωρούμε και

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

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

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

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

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

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

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

Εργαστήριο «Βάσεις Οικολογικών Δεδομένων και Εφαρμογές»

Εργαστήριο «Βάσεις Οικολογικών Δεδομένων και Εφαρμογές» 2 Ενότητα 5 Φίλτρα & Ερωτήματα 3 4 5.1 Φίλτρα Για να εμφανίσετε επιλεκτικά κάποιες εγγραφές που πληρούν κάποια κριτήρια μπορείτε να χρησιμοποιήσετε το φιλτράρισμα με βάση την επιλογή, φιλτράρισμα εκτός

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

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

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

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

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

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

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

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

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

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

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Σχεδίαση Βάσεων Δεδομένων

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Σχεδίαση Βάσεων Δεδομένων Ενότητα 3 Σχεδίαση Βάσεων Δεδομένων 17 18 3.1 Εισαγωγή Μία βάση δεδομένων αποτελείται από δεδομένα για διάφορα θέματα τα οποία όμως σχετίζονται μεταξύ τους και είναι καταχωρημένα με συγκεκριμένο τρόπο.

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

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

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

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

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

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

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

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

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

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος cman@unipi.gr Το ευρετήριο (index) είναι ένα αντικείμενο δεδομένων μέσα στη βάση δεδομένων που καταγράφει τις γραμμές

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

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

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

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

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

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

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

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

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

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

Ενότητα. Επεξεργασία πινάκων

Ενότητα. Επεξεργασία πινάκων Ενότητα 4 Επεξεργασία πινάκων 2 3 4.1 Προσθήκη πεδίων Για να εισάγετε ένα πεδίο σε ένα πίνακα που υπάρχει ήδη στη βάση δεδομένων σας, βάζετε τον κέρσορα του ποντικιού στο πεδίο πάνω από το οποίο θέλετε

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

BlackBerry Internet Service. Οδηγός χρήστη

BlackBerry Internet Service. Οδηγός χρήστη BlackBerry Internet Service Οδηγός χρήστη Δημοσίευση: 2014-01-08 SWD-20140108171026083 Περιεχόμενα 1 Γρήγορα αποτελέσματα... 7 Πληροφορίες για τα σχέδια υπηρεσίας ανταλλαγής μηνυμάτων της υπηρεσίας BlackBerry

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

Αικατερίνη Καμπάση, PhD. Τμήμα Προστασίας και Συντήρησης Πολιτισμικής Κληρονομιάς Α.Τ.Ε.Ι. Ιονίων Νήσων

Αικατερίνη Καμπάση, PhD. Τμήμα Προστασίας και Συντήρησης Πολιτισμικής Κληρονομιάς Α.Τ.Ε.Ι. Ιονίων Νήσων Αικατερίνη Καμπάση, PhD Τμήμα Προστασίας και Συντήρησης Πολιτισμικής Κληρονομιάς Α.Τ.Ε.Ι. Ιονίων Νήσων Ζάκυνθος 2011 2 ΠΕΡΙΕΧΟΜΕΝΑ ΕΝΟΤΗΤΑ 1: ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ 5 1.1 Βάσεις Δεδομένων 7 1.2

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

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

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

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

ΣΧΕΣΙΑΚΕΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ

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

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

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

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

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

Πληροφορική 2. Βάσεις Δεδομένων (Databases)

Πληροφορική 2. Βάσεις Δεδομένων (Databases) Πληροφορική 2 Βάσεις Δεδομένων (Databases) 1 2 Επίπεδα αρχεία (flat files) Επίπεδο αρχείο είναι ένα αρχείο που αποτελείται από ένα σταθερό, μικρό αριθμό πεδίων. Οι εγγραφές του αρχείου μπορεί να μην ακολουθούν

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

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

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

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

Περιεχόμενα. 1 Tο βιβλίο "με μια ματιά" Εισαγωγή στη Microsoft Access Γνωριμία με τις βάσεις δεδομένων της Access...

Περιεχόμενα. 1 Tο βιβλίο με μια ματιά Εισαγωγή στη Microsoft Access Γνωριμία με τις βάσεις δεδομένων της Access... Περιεχόμενα Ευχαριστίες...11 1 Tο βιβλίο "με μια ματιά"... 13 Χωρίς τεχνικούς όρους!...13 Σύντομη παρουσίαση...14 Μερικές συμβάσεις...16 Μία τελευταία λέξη (ή και δύο)...16 2 Εισαγωγή στη Microsoft Access

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

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ ΕΝΟΤΗΤΑ 1.1 ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ ΔΙΔΑΚΤΙΚΟI ΣΤOΧΟΙ Στο τέλος της ενότητας αυτής πρέπει να μπορείτε: να επεξηγείτε τις έννοιες «βάση δεδομένων» και «σύστημα διαχείρισης βάσεων δεδομένων» να αναλύετε

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

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

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

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

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

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

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

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

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

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

Οδηγός γρήγορης εκκίνησης του PowerSuite

Οδηγός γρήγορης εκκίνησης του PowerSuite Το PowerSuite είναι η ολοκληρωμένη λύση απόδοσης για τον υπολογιστή σας. Ενσωματώνοντας το RegistryBooster, το DriverScanner και το SpeedUpMyPC σε ένα ενιαίο περιβάλλον εργασίας σάρωσης, το PowerSuite

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

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

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

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

Εργαστήριο 8o. Ερωτήματα επιλογής Παραμετρικά ερωτήματα Ερωτήματα δημιουργίας πεδίων. Ευάγγελος Γ. Καραπιδάκης

Εργαστήριο 8o. Ερωτήματα επιλογής Παραμετρικά ερωτήματα Ερωτήματα δημιουργίας πεδίων. Ευάγγελος Γ. Καραπιδάκης Εργαστήριο 8o Ερωτήματα επιλογής Παραμετρικά ερωτήματα Ερωτήματα δημιουργίας πεδίων Ερωτήματα Τα Ερωτήματα μας επιτρέπουν να βλέπουμε τα δεδομένα που επιθυμούμε, με τη σειρά που επιθυμούμε. Μας δίνουν

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

Kεφάλαιο 11 Λίστες και Ανάλυση Δεδομένων Kεφάλαιο 12 Εργαλεία ανάλυσης πιθανοτήτων Kεφάλαιο 13 Ανάλυση δεδομένων...

Kεφάλαιο 11 Λίστες και Ανάλυση Δεδομένων Kεφάλαιο 12 Εργαλεία ανάλυσης πιθανοτήτων Kεφάλαιο 13 Ανάλυση δεδομένων... Μέρος 2 Kεφάλαιο 11 Λίστες και Ανάλυση Δεδομένων... 211 Kεφάλαιο 12 Εργαλεία ανάλυσης πιθανοτήτων... 241 Kεφάλαιο 13 Ανάλυση δεδομένων... 257 Kεφάλαιο 14 Συναρτήσεις Μέρος Β... 285 Kεφάλαιο 15 Ευρετήριο

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

Βάσεις Δεδομένων. Ενότητα 3: Σχεδιασμός και Διαχείριση Βάσεων Δεδομένων. Αθανάσιος Σπυριδάκος Τμήμα Διοίκησης Επιχειρήσεων

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

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

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

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

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

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

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

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

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

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

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα

Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα Kεφ.2: Σχεσιακό Μοντέλο (επανάληψη) Κεφ.6.1: Σχεσιακή Άλγεβρα Database System Concepts, 6 th Ed. Silberschatz, Korth and Sudarshan See www.db-book.com for conditions on re-use Παράδειγμα Σχέσης attributes

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

Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση

Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση Συναρτησιακές Εξαρτήσεις και Κανονικοποίηση Κανονικές Μορφές - Πρώτη κανονική μορφή (1NF) - Δεύτερη κανονική μορφή (2NF) - Τρίτη κανονική μορφή (3NF) 1 Κανονικοποίηση Κανονικές Μορφές Οι σχέσεις μπορούν

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) MASTER IN OFFICE microsoft access ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) MASTER IN OFFICE microsoft access ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) MASTER IN OFFICE microsoft access ΕΚΔΟΣΗ 1.0 ΤΙ ΕΙΝΑΙ ΤΟ MASTER IN OFFICE Το Master in Office είναι κατάλληλο για άτομα που έχουν κάποια εμπειρία στο Office (πχ. κάτοχοι πτυχίου

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

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα 7: Βάσεις Δεδομένων (Θεωρία) Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών Σπουδών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο Βάσεις Δεδομένων Εισαγωγή Ανάλυση Απαιτήσεων Φροντιστήριο 1 ο 16-10-2008 Εισαγωγή - Ορισμοί Βάση Δεδομένων είναι μία συλλογή από σχετιζόμενα αντικείμενα Ένα σύστημα διαχείρισης βάσεων δεδομένων (ΣΔΒΔ)

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

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

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

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

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

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

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

www.costaschatzinikolas.gr

www.costaschatzinikolas.gr ECDL CORE ΕΝΟΤΗΤΑ 5 Χρήση Βάσεων Δεδομένων Microsoft Access Επαναληπτικές Ερωτήσεις Εξετάσεων ECDL CORE ΕΝΟΤΗΤΑ 5 Χρήση Βάσεων Δεδομένων Microsoft Access Επαναληπτικές Ερωτήσεις Εξετάσεων Δημιουργία -

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

Βενετόκλειο Λύκειο Ρόδου Εφαρμογές πληροφορικής Γ' Λυκείου. Εργαστηριακή Άσκηση

Βενετόκλειο Λύκειο Ρόδου Εφαρμογές πληροφορικής Γ' Λυκείου. Εργαστηριακή Άσκηση Βενετόκλειο Λύκειο Ρόδου Εφαρμογές πληροφορικής Γ' Λυκείου Εργαστηριακή Άσκηση 1. Καταχωρίστε τα παρακάτω δεδομένα στους πίνακες της βάσης δεδομένων Ταινίες ΚωδικόςΤαινίας Τίτλος Κατηγορία ΈτοςΠαραγωγής

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

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

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

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

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

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

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις 1) Ερωτήσεις Σωστού/Λάθους (ΣΛ) Το πακέτο λογισμικού Excel της Microsoft είναι λογισμικό διαχείρισης ΒΔ (ΣΛ) Το πακέτο λογισμικού Access της Microsoft είναι λογισμικό

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

6 Εισαγωγή στο Wordpress 3.x

6 Εισαγωγή στο Wordpress 3.x Περιεχόμενα 1 Εγκατάσταση του WordPress... 11 Ελάχιστες απαιτήσεις... 11 Easy PHP... 12 Εγκατάσταση Easy PHP... 12 Βήματα εγκατάστασης EasyPHP με εικόνες... 13 Το EasyPHP στα Ελληνικά... 17 Κατέβασμα και

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

Το βιβλίο διευθύνσεων των Windows

Το βιβλίο διευθύνσεων των Windows Το βιβλίο διευθύνσεων των Windows Αν στέλνουμε email συχνά σε κάποιους, τότε για να μην πληκτρολογούμε τις διευθύνσεις τους κάθε φορά, τις αποθηκεύουμε στο Βιβλίο Διευθύνσεων. Έτσι όταν θα θέλουμε να τους

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

PHP 3. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

PHP 3. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών PHP 3 Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Δ. Ζήνδρος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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