ΕΦΑΡΜΟΓΕΣ Η/Υ ΣΤΗ ΔΑΣΟΠΟΝΙΑ

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

Download "ΕΦΑΡΜΟΓΕΣ Η/Υ ΣΤΗ ΔΑΣΟΠΟΝΙΑ"

Transcript

1 ΤΕΙ ΛΑΡΙΣΑΣ ΠΑΡΑΡΤΗΜΑ ΚΑΡΔΙΤΣΑΣ ΤΜΗΜΑ ΔΑΣΟΠΟΝΙΑΣ Σημειώσεις στο μάθημα: ΕΦΑΡΜΟΓΕΣ Η/Υ ΣΤΗ ΔΑΣΟΠΟΝΙΑ Μέρος Ι: Βασικές έννοιες Αντώνιος Καραγεώργος Εαρινό εξάμηνο

2 1 Βάσεις Δεδομένων Εισαγωγή στις Βάσεις Δεδομένων Τα Δεδομένα και οι Πληροφορίες Η Οργάνωση Αρχείων Προβλήματα της Οργάνωσης Αρχείων Οι Βάσεις Δεδομένων και τα ΣΔΒΔ (DBMS) Η Αρχιτεκτονική των ΣΔΒΔ Οι Οντότητες (Entities) Οι Ιδιότητες (Attributes) Τα Στιγμιότυπα (Snapshots) Το Πρωτεύον Κλειδί (Primary Key) Οι Συσχετίσεις (Relationships) Το Ιεραρχικό Μοντέλο Βάσεων Δεδομένων Το Δικτυωτό Μοντέλο Βάσεων Δεδομένων Το Σχεσιακό Μοντέλο Βάσεων Δεδομένων Τα Σχεσιακά ΣΔΒΔ (RDBMS) Το Μοντέλο Οντοτήτων Συσχετίσεων Οι Οντότητες Οι Ιδιότητες (Χαρακτηριστικά) των Οντοτήτων Τα Κλειδιά Οι Συσχετίσεις Μεταξύ Οντοτήτων Οι Διμελείς Συσχετίσεις Το Διάγραμμα Οντοτήτων Συσχετίσεων Λογικός Σχεδιασμός μιας Βάσης Δεδομένων Η Δομημένη Γλώσσα Ερωτημάτων SQL Τι Είναι η SQL Οι Πίνακες Βάσεων Δεδομένων (Database Tables) Τα Ερωτήματα της SQL (SQL Queries) Χειρισμός Δεδομένων της SQL (Data Manipulation) Ορισμός Δεδομένων της SQL (Data Definition) Η SQL και οι Ενεργές Σελίδες Διακομιστή Η Εντολή Select της SQL Το Where Clause της SQL Οι Λογικοί Τελεστές And και Or Η Εντολή Update Ενωση Πινάκων (Join) Δημιουργία Βάσης Δεδομένων και Πίνακα Διαγραφή Βάσης Δεδομένων και Πίνακα Η Εντολή Alter Table Τα βασικά στοιχεία της MS Access Σκοπός Σχεσιακές βάσεις δεδομένων Δουλεύοντας με την Ms Access Τύποι αντικειμένων μιας βάσης δεδομένων της Access Δημιουργία βάσης δεδομένων στην Access Άνοιγμα βάσης δεδομένων της Access Μέρος 3 ο : Πίνακες στην Ms Access Δημιουργία νέου Πίνακα Δομή Πίνακα Ονόματα Πεδίων Πίνακα Τύπος Πεδίων Μέγεθος Πεδίων

3 3.4.6 Οι υπόλοιπες ιδιότητες των Πεδίων Περιγραφή Πεδίων Πρωτεύον Κλειδί Σχέσεις μεταξύ πινάκων Ερωτήματα στην Ms Access Τύποι Ερωτημάτων Ερωτήματα Εύρεσης Διπλοτύπων Ερωτήματα Επιλογής Χαρακτήρες Μπαλαντέρ και Λογικοί Τελεστές Ερωτήματα Διασταύρωσης Φόρμες στην Ms Access Δημιουργία Απλής Φόρμας Άνοιγμα Φόρμας

4 1 Η Θεωρία των Βάσεων Δεδομένων 1.1 Εισαγωγή στις Βάσεις Δεδομένων Η αλματώδης ανάπτυξη της επιστήμης της πληροφορικής και των επικοινωνιών τα τελευταία χρόνια έχει καταστήσει την πληροφορία ως ένα από τα βασικότερα και πολυτιμότερα αγαθά. Είναι κοινός τόπος σήμερα η εκτίμηση ότι το αγαθό της πληροφορίας είναι επιθυμητό απ όλους τους εργαζόμενους αλλά και τους εκπαιδευόμενους, ώστε να είναι πιο αποδοτικοί, ανταγωνιστικοί αλλά και παραγωγικοί στην εργασία τους. Τα συστήματα βάσεων δεδομένων τα χρησιμοποιούμε για να μπορούμε να αποθηκεύσουμε, να επεξεργαστούμε αλλά και να εκμεταλλευτούμε αποδοτικά αυτόν τον τεράστιο όγκο των πληροφοριών που αυξάνονται με αλματώδεις ρυθμούς καθημερινά. 1.2 Τα Δεδομένα και οι Πληροφορίες Με τον όρο πληροφορία αναφερόμαστε συνήθως σε ειδήσεις, γεγονότα και έννοιες που αποκτάμε από την καθημερινή μας επικοινωνία και τα θεωρούμε ως αποκτηθείσα γνώση, ενώ τα δεδομένα μπορούν να είναι μη κατάλληλα επεξεργασμένα και μη ταξινομημένα σύνολα πληροφοριών. Ένας αυστηρός ορισμός για το τι είναι δεδομένα και τι είναι πληροφορία, σύμφωνα με την επιτροπή ANSI των ΗΠΑ, είναι ο εξής : Δεδομένα (data) είναι μια παράσταση, όπως γράμματα, αριθμοί, σύμβολα κ.ά. στα οποία μπορούμε να δώσουμε κάποια σημασία (έννοια). Πληροφορία (information) είναι η σημασία που δίνουμε σ ένα σύνολο από δεδομένα, τα οποία μπορούμε να επεξεργαστούμε βάσει προκαθορισμένων κανόνων και να βγάλουμε έτσι κάποια χρήσιμα συμπεράσματα. Με τις πληροφορίες περιορίζεται η αβεβαιότητα που έχουμε για διάφορα πράγματα και βοηθιόμαστε έτσι στο να λάβουμε σωστές αποφάσεις. Τα δεδομένα μπορούν να θεωρηθούν ως τρόποι αναπαράστασης εννοιών και γεγονότων που μπορούν να υποστούν διαχείριση και επεξεργασία. Η συλλογή και αποθήκευση ενός τεράστιου όγκου δεδομένων όπως απαιτούν οι κοινωνικές συνθήκες σήμερα, δεν λύνει τελείως το πρόβλημα της σωστής οργάνωσης και ταξινόμησης των δεδομένων. Τα δεδομένα θα πρέπει να οργανωθούν με τέτοιο τρόπο έτσι ώστε να μπορούμε να τα εντοπίζουμε και να τα αξιοποιούμε εύκολα και γρήγορα και τη στιγμή που τα χρειαζόμαστε. Ένα κλασικό παράδειγμα μη σωστής οργάνωσης δεδομένων θα ήταν για παράδειγμα ο τηλεφωνικός κατάλογος της πόλης της Θεσσαλονίκης, όπου οι συνδρομητές δεν θα ήταν καταχωρημένοι αλφαβητικά σύμφωνα με το επώνυμο και το όνομά τους, αλλά εντελώς τυχαία. Ένας τέτοιος τηλεφωνικός κατάλογος θα περιείχε μια τεράστια ποσότητα δεδομένων αλλά θα ήταν ουσιαστικά άχρηστος. 4

5 Ένα άλλο παράδειγμα μη σωστής οργάνωσης δεδομένων θα ήταν μια πολύ μεγάλη βιβλιοθήκη με χιλιάδες τόμους βιβλίων και χωρίς να διαθέτει κάποιο υποτυπώδες σύστημα οργάνωσης και ταξινόμησης των βιβλίων. Ούτε οι υπάλληλοι της βιβλιοθήκης θα μπορούσαν να κάνουν τη δουλειά τους αλλά ούτε και οι επισκέπτες θα μπορούσαν να αξιοποιήσουν την πληθώρα των πληροφοριών που περιέχονται στα βιβλία. Εκτός λοιπόν από τη μόνιμη αποθήκευση των δεδομένων, χρειαζόμαστε και κάποιους τρόπους ευέλικτης και αποδοτικής οργάνωσής τους. Χαρακτηριστικά παραδείγματα δεδομένων που απαιτούν σωστή και αποδοτική οργάνωση είναι τα εξής : Τα στοιχεία υπαλλήλων, πελατών, προμηθευτών και παραγγελιών μιας εμπορικής επιχείρησης. Τα στοιχεία υλικών μιας αποθήκης. Τα στοιχεία ταινιών, πελατών και δανεισμών μιας βιντεολέσχης. Τα στοιχεία υπαλλήλων, γιατρών, ασθενών αλλά και υλικών ενός νοσοκομείου. Τα στοιχεία βιβλίων, χρηστών (δανειστών) και δανεισμών μιας βιβλιοθήκης. 1.3 Η Οργάνωση Αρχείων Ο πιο γνωστός τρόπος οργάνωσης δεδομένων με τη χρήση ηλεκτρονικών υπολογιστών είναι σε αρχεία εγγραφών. Για να κατανοήσουμε καλύτερα ορισμένες έννοιες, θα εξετάσουμε την περίπτωση ενός αρχείου πελατών και παραγγελιών μιας εμπορικής επιχείρησης. Για να οργανώσουμε σωστά το αρχείο μας, θα πρέπει να δημιουργήσουμε καρτέλες για τους πελάτες, αλλά και για τις παραγγελίες τους αργότερα, που θα πρέπει να περιέχουν τα εξής στοιχεία ανά πελάτη : Κωδικός Επώνυμο Όνομα Διεύθυνση ΤΚ Πόλη Τηλέφωνο ΑΦΜ ΔΟΥ Η αντιστοίχηση του παλιού τρόπου οργάνωσης με τις καρτέλες σε σχέση με τον σύγχρονο ηλεκτρονικό τρόπο οργάνωσης, έχει ως εξής : Συρτάρι Αρχείο Δεδομένων Καρτέλα πελάτη Εγγραφή του αρχείου δεδομένων Στοιχείο της καρτέλας Πεδίο της εγγραφής Ένα αρχείο (file) θα μπορούμε να το χαρακτηρίσουμε σαν ένα σύνολο που αποτελείται από οργανωμένα ομοειδή στοιχεία. Τα στοιχεία ενός αρχείου μπορούμε να τα οργανώσουμε σε λογικές ενότητες και το σύνολο των στοιχείων που περιέχει μια λογική ενότητα καλείται εγγραφή (record). Το κάθε στοιχείο της εγγραφής καλείται πεδίο (field). 5

6 Το πεδίο αποτελεί και τη μικρότερη δυνατή υποδιαίρεση των στοιχείων ενός αρχείου. Ένα πεδίο χαρακτηρίζεται από τον μέγιστο αριθμό των χαρακτήρων (bytes) που απαιτούνται για την καταχώρησή του στη μνήμη του υπολογιστή και που αποκαλείται μήκος του πεδίου (field length). Σε μια οργάνωση αρχείου όπως είναι οι πελάτες μιας εμπορικής επιχείρησης που είδαμε νωρίτερα, τα αντίστοιχα πεδία όλων των εγγραφών καταλαμβάνουν τον ίδιο αριθμό σε bytes που είναι αυτός που έχουμε ορίσει κατά τη δημιουργία του αρχείου. Για παράδειγμα, αν ορίσαμε ότι το πεδίο Επώνυμο θα έχει μήκος 15 χαρακτήρες, τότε το πεδίο της εγγραφής του πελάτη με επώνυμο Παπαδόπουλος, αλλά και το πεδίο της εγγραφής του πελάτη με επώνυμο Βες θα καταλαμβάνουν από 15 bytes στη μνήμη του υπολογιστή, ενώ αν ένας πελάτης ονομάζεται Παπαχριστοδουλόπουλος, τότε θα γίνει αποκοπή του επωνύμου του και θα καταχωρηθούν στη μνήμη του υπολογιστή μόνο τα 15 πρώτα γράμματα, δηλ. τα Παπαχριστοδουλό. Ένα πεδίο χαρακτηρίζεται ακόμη και από το είδος των δεδομένων που μπορεί να περιέχει, όπως : Αλφαριθμητικό (alphanumeric), μπορεί να περιέχει γράμματα, ψηφία ή και ειδικούς χαρακτήρες. Αριθμητικό (numeric), μπορεί να περιέχει μόνο αριθμούς. Αλφαβητικό (alphabetic), μπορεί να περιέχει μόνο γράμματα (αλφαβητικούς χαρακτήρες). Ημερομηνίας (date), μπορεί να περιέχει μόνο ημερομηνίες. κ.ά. Δυαδικό (binary), μπορεί να περιέχει ειδικού τύπου δεδομένα, όπως εικόνες, ήχους Λογικό (logical), μπορεί να περιέχει μόνο μία από δύο τιμές, οι οποίες αντιστοιχούν σε δύο διακριτές καταστάσεις και μπορούν να χαρακτηρισθούν σαν 0 και 1 ή σαν αληθές (true) και ψευδές (false). Σημειώσεων (memo), μπορεί να περιέχει κείμενο με μεταβλητό μήκος, το οποίο μπορεί να είναι και αρκετά μεγάλο και συνήθως αποθηκεύεται σαν ξεχωριστό αρχείο από το κύριο αρχείο. Όσον αφορά τις εγγραφές, χρήσιμοι ορισμοί είναι οι εξής : Μήκος εγγραφής (record length) καλείται το άθροισμα που προκύπτει από τα μήκη των πεδίων που την αποτελούν. Δομή εγγραφής (record layout) ή γραμμογράφηση καλείται ο τρόπος με τον οποίο οργανώνουμε τα πεδία μιας εγγραφής. Διάβασμα (read) από αρχείο σημαίνει τη μεταφορά των δεδομένων του αρχείου, που γίνεται συνήθως ανά μία εγγραφή, από το μέσο αποθήκευσης (σκληρό δίσκο ή δισκέτα) στην κεντρική μνήμη του υπολογιστή για επεξεργασία. 6

7 Γράψιμο (write) σε αρχείο σημαίνει μεταφορά των δεδομένων του αρχείου, που γίνεται συνήθως ανά μία εγγραφή, από την κεντρική μνήμη του υπολογιστή στο μέσο αποθήκευσης (σκληρό δίσκο ή δισκέτα). 1.4 Προβλήματα της Οργάνωσης Αρχείων Στα αρχικά στάδια της οργάνωσης αρχείων, ήταν πολύ συνηθισμένη πρακτική η δημιουργία ξεχωριστών εφαρμογών (προγραμμάτων) και ξεχωριστών αρχείων, όπως για παράδειγμα η δημιουργία ενός αρχείου πελατών και ενός άλλου ανεξάρτητου αρχείου για τις παραγγελίες των πελατών. Τα προβλήματα που προέκυψαν από την πρακτική αυτή είναι τα εξής : Πλεονασμός των δεδομένων (data redundancy). Υπάρχει η περίπτωση να έχουμε επανάληψη των ίδιων δεδομένων σε αρχεία διαφορετικών εφαρμογών. Για παράδειγμα, αν έχουμε ένα αρχείο πελατών και ένα αρχείο παραγγελιών αυτών των πελατών, είναι σχεδόν σίγουρο ότι θα υπάρχουν κάποια στοιχεία των πελατών που θα υπάρχουν και στα δύο αρχεία. Ασυνέπεια των δεδομένων (data inconsistency). Αυτό μπορεί να συμβεί όταν υπάρχουν τα ίδια στοιχεία των πελατών (πλεονασμός) και στο αρχείο πελατών και στο αρχείο παραγγελιών και χρειασθεί να γίνει κάποια αλλαγή στη διεύθυνση ή στα τηλέφωνα κάποιου πελάτη, οπότε είναι πολύ πιθανό να γίνει η διόρθωση μόνο στο ένα αρχείο και όχι και στο άλλο. Αδυναμία μερισμού δεδομένων (data sharing). Μερισμός δεδομένων σημαίνει δυνατότητα για κοινή χρήση των στοιχείων κάποιων αρχείων. Για παράδειγμα, ο μερισμός δεδομένων θα ήταν χρήσιμος αν με την παραγγελία ενός πελάτη μπορούμε να έχουμε πρόσβαση την ίδια στιγμή στο αρχείο πελατών για να δούμε το υπόλοιπο του πελάτη και μετά στο αρχείο της αποθήκης για να δούμε αν είναι διαθέσιμα τα προϊόντα που παρήγγειλε ο συγκεκριμένος πελάτης. Η αδυναμία μερισμού δεδομένων δημιουργεί καθυστέρηση στη λήψη αποφάσεων και στην εξυπηρέτηση των χρηστών. Αδυναμία προτυποποίησης. Έχει να κάνει με την ανομοιομορφία και με την διαφορετική αναπαράσταση και οργάνωση των δεδομένων στα αρχεία των εφαρμογών. Η αδυναμία αυτή δημιουργεί προβλήματα προσαρμογής των χρηστών καθώς και προβλήματα στην ανταλλαγή δεδομένων μεταξύ διαφορετικών συστημάτων. 1.5 Οι Βάσεις Δεδομένων και τα ΣΔΒΔ (DBMS) Για να δοθεί μια λύση σ όλα τα παραπάνω προβλήματα, και με βάση το γεγονός ότι η χρήση των ηλεκτρονικών υπολογιστών και συνεπώς η ηλεκτρονική καταχώρηση και επεξεργασία δεδομένων αυξήθηκε κατακόρυφα ήδη από τη δεκαετία του 70 στις μεγάλες επιχειρήσεις και άρα είχαμε πάρα πολλές εφαρμογές να επεξεργάζονται δεδομένα σε πάρα πολλά αρχεία ταυτόχρονα, προτάθηκε η συνένωση όλων των αρχείων μιας εφαρμογής. Εκτός, όμως, από τη συνένωση των αρχείων, απαιτείτο και μια σωστή οργάνωσή τους. Δημιουργήθηκαν έτσι οι Τράπεζες Πληροφοριών ή Βάσεις Δεδομένων (Data Bases). 7

8 Μια Βάση Δεδομένων (ΒΔ) είναι ένα σύνολο αρχείων με υψηλό βαθμό οργάνωσης τα οποία είναι συνδεδεμένα μεταξύ τους με λογικές σχέσεις, έτσι ώστε να μπορούν να χρησιμοποιούνται από πολλές εφαρμογές και από πολλούς χρήστες ταυτόχρονα. Υπάρχει ένα ειδικό λογισμικό το οποίο μεσολαβεί ανάμεσα στις αρχεία δεδομένων και τις εφαρμογές που χρησιμοποιούν οι χρήστες και αποκαλείται Σύστημα Διαχείρισης Βάσης Δεδομένων (ΣΔΒΔ) ή DBMS (Data Base Management System). Το ΣΔΒΔ είναι στην ουσία ένα σύνολο από προγράμματα και υπορουτίνες που έχουν να κάνουν με τον χειρισμό της βάσης δεδομένων, όσον αφορά τη δημιουργία, τροποποίηση, διαγραφή στοιχείων, με ελέγχους ασφαλείας κ.ά. Οι χρήστες των εφαρμογών αντλούν τα στοιχεία που τους ενδιαφέρουν από τη βάση δεδομένων χωρίς να είναι σε θέση να γνωρίζουν με ποιο τρόπο είναι οργανωμένα τα δεδομένα σ αυτήν. Το ΣΔΒΔ παίζει τον ρόλο του μεσάζοντα ανάμεσα στον χρήστη και τη βάση δεδομένων και μόνο μέσω του ΣΔΒΔ μπορεί ο χρήστης να αντλήσει πληροφορίες από τη βάση δεδομένων. Ένα ΣΔΒΔ μπορεί να είναι εγκατεστημένο σ έναν μόνο υπολογιστή ή και σ ένα δίκτυο υπολογιστών και μπορεί να χρησιμοποιείται από έναν χρήστη ή και από πολλούς χρήστες. Ένα Σύστημα Βάσης Δεδομένων (ΣΒΔ) ή DBS (Data Base System) αποτελείται από το υλικό, το λογισμικό, τη βάση δεδομένων και τους χρήστες. Είναι δηλαδή ένα σύστημα με το οποίο μπορούμε να αποθηκεύσουμε και να αξιοποιήσουμε δεδομένα με τη βοήθεια ηλεκτρονικού υπολογιστή. Αναλυτικά : Το υλικό (hardware) αποτελείται όπως είναι γνωστό από τους ηλεκτρονικούς υπολογιστές, τα περιφερειακά, τους σκληρούς δίσκους, τις μαγνητικές ταινίες κ.ά., όπου είναι αποθηκευμένα τα αρχεία της βάσης δεδομένων αλλά και τα προγράμματα που χρησιμοποιούνται για την επεξεργασία τους. Το λογισμικό (software) είναι τα προγράμματα που χρησιμοποιούνται για την επεξεργασία των δεδομένων (στοιχείων) της βάσης δεδομένων. Η βάση δεδομένων (data base) αποτελείται από το σύνολο των αρχείων όπου είναι αποθηκευμένα τα δεδομένα του συστήματος. Τα στοιχεία αυτά μπορεί να βρίσκονται αποθηκευμένα σ έναν φυσικό υπολογιστή αλλά και σε περισσότερους. Όμως, στον χρήστη δίνεται η εντύπωση ότι βρίσκονται συγκεντρωμένα στον ίδιο υπολογιστή. Τα δεδομένα των αρχείων αυτών είναι ενοποιημένα (data integration), δηλ. δεν υπάρχει πλεονασμός (άσκοπη επανάληψη) δεδομένων και μερισμένα (data sharing), δηλ. υπάρχει δυνατότητα ταυτόχρονης προσπέλασης των δεδομένων από πολλούς χρήστες. Ο κάθε χρήστης έχει διαφορετικά δικαιώματα και βλέπει διαφορετικό κομμάτι της βάσης δεδομένων, ανάλογα με τον σκοπό για τον οποίο συνδέεται. Οι χρήστες (users) μιας βάσης δεδομένων χωρίζονται στις εξής κατηγορίες : Τελικοί χρήστες (end users). Χρησιμοποιούν κάποια εφαρμογή για να παίρνουν στοιχεία από μια βάση δεδομένων, έχουν τις λιγότερες δυνατότητες επέμβασης στα στοιχεία της βάσης δεδομένων, χρησιμοποιούν ειδικούς κωδικούς πρόσβασης και το σύστημα τούς επιτρέπει ανάλογα πρόσβαση σε συγκεκριμένο κομμάτι της βάσης δεδομένων. Προγραμματιστές εφαρμογών (application programmers). Αναπτύσσουν τις εφαρμογές του ΣΒΔ σε κάποια από τις γνωστές γλώσσες προγραμματισμού. 8

9 Διαχειριστής δεδομένων (data administrator DA). Έχει τη διοικητική αρμοδιότητα και ευθύνη για την οργάνωση της βάσης δεδομένων και την απόδοση δικαιωμάτων πρόσβασης στους χρήστες. Διαχειριστής βάσης δεδομένων (database administrator DBA). Λαμβάνει οδηγίες από τον διαχειριστή δεδομένων και είναι αυτός που διαθέτει τις τεχνικές γνώσεις και αρμοδιότητες για τη σωστή και αποδοτική λειτουργία του ΣΔΒΔ. 1.6 Η Αρχιτεκτονική των ΣΔΒΔ Όπως είδαμε νωρίτερα, ένα ΣΔΒΔ (Σύστημα Διαχείρισης Βάσης Δεδομένων) έχει σαν αποστολή τη διαχείριση των δεδομένων των αρχείων της βάσης, δηλ. την προσθήκη, διαγραφή, τροποποίηση εγγραφών, την αναζήτηση μέσα στις εγγραφές κ.ά.). Το ΣΔΒΔ δέχεται αιτήσεις από τους χρήστες των εφαρμογών και επικοινωνεί με τα αρχεία της βάσης δεδομένων για να τις διεκπεραιώσει. Αυτή η κοινή διεπαφή (interface) των εφαρμογών με τα αρχεία αποκαλείται λογική διεπαφή. Οι εφαρμογές που δημιουργούμε δεν απασχολούνται με τον τρόπο που είναι αποθηκευμένα τα δεδομένα, πόσο χώρο καταλαμβάνουν κοκ και αυτή η ιδιότητα είναι γνωστή ως ανεξαρτησία δεδομένων. Αυτό σημαίνει πρακτικά ότι οποιαδήποτε αλλαγή στον τρόπο οργάνωσης των αρχείων της βάσης δεδομένων δεν θα συνεπάγεται και αλλαγή στις εφαρμογές ένα πρόβλημα που ταλαιπωρούσε πολύ τους προγραμματιστές παλαιοτέρων εποχών. Ακόμη, η προσθήκη, η κατάργηση ή και η τροποποίηση κάποιων εφαρμογών δεν θα έχει καμία επίπτωση στον τρόπο οργάνωσης των αρχείων της βάσης δεδομένων. Στα ΣΔΒΔ έχει επικρατήσει η λεγόμενη αρχιτεκτονική των τριών επιπέδων (βαθμίδων), όπου τα τρία επίπεδα είναι τα εξής : Εσωτερικό επίπεδο (internal level), έχει να κάνει με την αποθήκευση των αρχείων στον σκληρό δίσκο, δηλ. την πραγματική ή φυσική κατάστασή τους. Εξωτερικό επίπεδο (external level), έχει να κάνει με τους χρήστες είτε αυτοί είναι απλοί χειριστές, είτε προγραμματιστές ή και οι διαχειριστές της βάσης δεδομένων. Εννοιολογικό επίπεδο (conceptual level), είναι ένα ενδιάμεσο επίπεδο που διασυνδέει τα δύο άλλα επίπεδα και έχει να κάνει με τη λογική σχεδίαση των αρχείων της βάσης δεδομένων. 1.7 Οι Οντότητες (Entities) Με τον όρο οντότητα (entity) εννοούμε ένα αντικείμενο, ένα πρόσωπο, μια κατάσταση και γενικά ο,τιδήποτε μπορεί να προσδιορισθεί σαν ανεξάρτητη ύπαρξη (αυτόνομη μονάδα του φυσικού κόσμου). Για παράδειγμα, σε μια βάση δεδομένων μιας εμπορικής εταιρείας, οντότητες μπορεί να είναι οι εργαζόμενοι, οι πελάτες, οι προμηθευτές, οι παραγγελίες, τα είδη της αποθήκης (προϊόντα) κ.ά. 9

10 Το Μοντέλο Οντοτήτων Συσχετίσεων (Entity Relationship Model, ER Model) είναι μια διαγραμματική αναπαράσταση της δομής μιας βάσης δεδομένων και χρησιμοποιείται κατά τη φάση του λογικού σχεδιασμού της βάσης. Δηλαδή, δεν ασχολείται με τον τρόπο που αποθηκεύονται τα δεδομένα της βάσης, αλλά με την ταυτοποίηση των δεδομένων και με τον τρόπο με τον οποίο αυτά συσχετίζονται μεταξύ τους. Θα δούμε ένα παράδειγμα μιας εταιρείας, η οποία περιέχει δεδομένα που αφορούν τους υπαλλήλους της (employees), τα τμήματά της (departments) και τα έργα (projects) που έχουν αναλάβει αυτά τα τμήματα. Ένα τμήμα της εταιρείας μπορεί να εποπτεύει ένα ή περισσότερα έργα (projects) και ένας υπάλληλος ανήκει σ ένα μόνο τμήμα της εταιρείας αλλά μπορεί να απασχολείται ταυτόχρονα σε πολλά έργα, τα οποία δεν είναι υποχρεωτικό να παρακολουθούνται από το ίδιο τμήμα. 1.8 Οι Ιδιότητες (Attributes) Με τον όρο ιδιότητα ή χαρακτηριστικό ή και πεδίο (attribute) μιας οντότητας, αναφερόμαστε σ ένα από τα συστατικά της στοιχεία που την περιγράφουν και την κάνουν να ξεχωρίζει από τα άλλα στοιχεία της ίδιας οντότητας. Για παράδειγμα, η οντότητα ΠΕΛΑΤΗΣ μπορεί να έχει ως ιδιότητες (χαρακτηριστικά) τον κωδικό, το επώνυμο, το όνομα, τη διεύθυνση, το τηλέφωνο, το ΑΦΜ κ.ά., με τη βοήθεια των οποίων μπορούμε να ξεχωρίσουμε τους πελάτες μεταξύ τους. Επίσης, η οντότητα ΠΑΡΑΓΓΕΛΙΑ μπορεί να έχει ως ιδιότητες (χαρακτηριστικά) τον κωδικό, τον αριθμό παραστατικού, την ημερομηνία, τον κωδικό πελάτη, το προϊόν κ.ά., με τη βοήθεια των οποίων μπορούμε να ξεχωρίσουμε τις παραγγελίες μεταξύ τους Στο παράδειγμα της εταιρείας, μπορούμε να ορίσουμε έναν τύπο οντότητας για τους υπαλλήλους της εταιρείας (EMPLOYEE), έναν τύπο οντότητας για τα τμήματα που έχει η εταιρεία (DEPARTMENT) και έναν τύπο οντότητας για τα έργα που έχει αναλάβει η εταιρεία (PROJECT). Καθένας από τους παραπάνω τύπους οντοτήτων περιγράφεται από ένα όνομα και από το σύνολο των πεδίων που περιέχει. Οι πληροφορίες αυτές αποτελούν το σχήμα (schema) της οντότητας. 1.9 Τα Στιγμιότυπα (Snapshots) Το κάθε διαφορετικό (αυτόνομο) στοιχείο μιας οντότητας αποκαλείται στιγμιότυπο (snapshot) ή και εμφάνιση της οντότητας. Για παράδειγμα, στην οντότητα ΠΕΛΑΤΗΣ, άλλο στιγμιότυπο είναι ο πελάτης με επώνυμο Παπαδόπουλος και άλλο στιγμιότυπο είναι ο πελάτης με επώνυμο Σουμπάσης Το Πρωτεύον Κλειδί (Primary Key) Πρωτεύον κλειδί ή πεδίο κλειδί (primary key) μιας οντότητας καλείται εκείνη η ιδιότητα (ή ο συνδυασμός ιδιοτήτων) που έχει μοναδική τιμή για όλα τα στιγμιότυπα (εμφανίσεις) της οντότητας. Για παράδειγμα, στην οντότητα ΠΕΛΑΤΗΣ πρωτεύον κλειδί 10

11 είναι ο κωδικός πελάτη, στην οντότητα ΠΑΡΑΓΓΕΛΙΑ πρωτεύον κλειδί μπορεί να είναι ο κωδικός παραγγελίας ή ο αριθμός παραστατικού κοκ. Υπάρχουν περιπτώσεις όπου το πεδίο κλειδί ενός τύπου οντότητας μπορεί να μην είναι απλό αλλά σύνθετο, να αποτελείται δηλαδή από πολλά απλά πεδία και τότε η συνθήκη της μοναδικότητας για την τιμή του κλειδιού δεν εφαρμόζεται σε κάθε πεδίο του σύνθετου κλειδιού αλλά στο σύνολο του συνδυασμού αυτών των πεδίων Οι Συσχετίσεις (Relationships) Με τον όρο συσχέτιση (relationship) αναφερόμαστε στον τρόπο σύνδεσης (επικοινωνίας) δύο ξεχωριστών οντοτήτων, ώστε να μπορούμε να αντλούμε στοιχεία (πληροφορίες) από τον συνδυασμό τους. Για παράδειγμα, η οντότητα ΓΙΑΤΡΟΣ συσχετίζεται με την οντότητα ΑΣΘΕΝΗΣ αλλά και με την οντότητα ΚΛΙΝΙΚΗ στη βάση δεδομένων ενός νοσοκομείου. Μπορούμε να δεχθούμε ότι ένας γιατρός παρακολουθεί (συσχετίζεται με) πολλούς ασθενείς, αλλά ένας ασθενής παρακολουθείται από (συσχετίζεται με) έναν μόνο γιατρό και επίσης ένας γιατρός συσχετίζεται με (ανήκει σε) μία μόνο κλινική, αλλά μια κλινική συσχετίζεται με (απασχολεί) πολλούς γιατρούς. Στο παράδειγμα της εταιρείας, η οντότητα EMPLOYEE συσχετίζεται με την οντότητα DEPARTMENT και η οντότητα DEPARTMENT συσχετίζεται με την οντότητα PROJECTS. Ένας υπάλληλος ανήκει σ ένα μόνο τμήμα και ένα τμήμα μπορεί να έχει πολλούς υπαλλήλους. Επίσης, ένα τμήμα εποπτεύει πολλά έργα αλλά ένα έργο εποπτεύεται από ένα μόνο τμήμα Το Ιεραρχικό Μοντέλο Βάσεων Δεδομένων Υπάρχουν τρία βασικά μοντέλα που έχουν επικρατήσει στις βάσεις δεδομένων, το ιεραρχικό, το δικτυωτό και το σχεσιακό, και τα οποία αναπτύχθηκαν με βάση αντίστοιχες δομές. Το ιεραρχικό μοντέλο (hierarchical) έχει μια ιεραρχική δομή που θυμίζει δένδρο. Οι οντότητες μοιάζουν με απολήξεις από κλαδιά δένδρων και τοποθετούνται σε επίπεδα ιεραρχίας. Τα κλαδιά παριστάνουν τις συσχετίσεις ανάμεσα στις οντότητες. Από μια οντότητα που βρίσκεται σ ένα ανώτερο επίπεδο εκκινούν πολλά κλαδιά, καθένα από τα οποία καταλήγει σε μια οντότητα που βρίσκεται σ ένα χαμηλότερο επίπεδο. Αλλά, σε κάθε οντότητα που βρίσκεται σ ένα χαμηλότερο επίπεδο αντιστοιχεί μία και μόνο μία οντότητα που βρίσκεται σ ένα ανώτερο επίπεδο. Το μοντέλο αυτό ήταν το πρώτο που εμφανίσθηκε αλλά σήμερα θεωρείται δύσχρηστο και ξεπερασμένο. 11

12 1.13 Το Δικτυωτό Μοντέλο Βάσεων Δεδομένων Και στο δικτυωτό (network) μοντέλο, τα στοιχεία τοποθετούνται σ ένα επίπεδο ιεραρχίας, αλλά κάθε στοιχείο μπορεί να συσχετισθεί με πολλά στοιχεία είτε σ ένα κατώτερο ή σ ένα ανώτερο επίπεδο Το Σχεσιακό Μοντέλο Βάσεων Δεδομένων Το σχεσιακό (relational) μοντέλο έχει επικρατήσει σήμερα στην αναπαράσταση των δεδομένων καθώς διαθέτει σημαντικά πλεονεκτήματα ως προς τα άλλα δύο και οι βάσεις δεδομένων που σχεδιάζονται σύμφωνα μ αυτό αποκαλούνται σχεσιακές (relational databases). Με τις σχεσιακές βάσεις δεδομένων διαθέτουμε έναν σαφή, απλό και εύκολα κατανοητό τρόπο για να μπορέσουμε να αναπαραστήσουμε και να διαχειριστούμε τα δεδομένα μας. Υστερούν μόνο σε ταχύτητα υπολογισμών και σε χώρο αποθήκευσης, αλλά μόνο όταν έχουμε να κάνουμε με πολύ μεγάλες βάσεις δεδομένων. Στο μοντέλο αυτό οι βάσεις δεδομένων περιγράφονται με αυστηρές μαθηματικές έννοιες και ο χρήστης βλέπει τις οντότητες και τις συσχετίσεις με τη μορφή πινάκων (tables) και σχέσεων (relations) αντίστοιχα. Ένας πίνακας (table) αποτελείται από γραμμές (rows) και στήλες (columns), όπου τοποθετούμε τα στοιχεία σε οριζόντια και κάθετη μορφή. Η κάθε στήλη του πίνακα χαρακτηρίζει κάποια ιδιότητα της οντότητας και αποκαλείται χαρακτηριστικό (attribute) ή πεδίο (field), ενώ η κάθε γραμμή του πίνακα περιέχει όλες τις πληροφορίες (στήλες) που αφορούν ένα στοιχείο της οντότητας και αποκαλείται πλειάδα (tuple) ή εγγραφή (record). Κάθε πεδίο του πίνακα μπορεί να πάρει ορισμένες μόνο τιμές, οι οποίες μπορεί να καθορίζονται από τον τύπο δεδομένων της ιδιότητας, όπως ονόματα ή αριθμοί για παράδειγμα, ή και από αυτό που εκφράζει, όπως το ότι δεν μπορούμε να έχουμε αρνητικό βάρος ή αρνητικό ΑΦΜ, για παράδειγμα. Το σύνολο των αποδεκτών τιμών μιας οντότητας αποκαλείται πεδίο ορισμού (domain). Για να μπορέσουμε να κατανοήσουμε τις σχεσιακές βάσεις δεδομένων, ένα πολύ χαρακτηριστικό παράδειγμα αποτελεί ένας πίνακας πελατών και ένας πίνακας παραγγελιών μιας εμπορικής εταιρείας. Τα πεδία που μπορούμε να ορίσουμε στους πίνακες αυτούς είναι τα εξής : ΠΙΝΑΚΑΣ (ΟΝΤΟΤΗΤΑ) ΠΕΛΑΤΕΣ (ΚωδικόςΠελάτη, Επώνυμο, Όνομα, Διεύθυνση, ΤΚ, Πόλη, ΑΦΜ, Υπόλοιπο) ΠΙΝΑΚΑΣ (ΟΝΤΟΤΗΤΑ) ΠΑΡΑΓΓΕΛΙΕΣ (ΚωδικόςΠελάτη, ΚωδικόςΠαραγγελίας, Ημερομηνία, Είδος, Ποσότητα, ΤιμήΜονάδας) 12

13 Βλέπουμε ότι οι δύο πίνακες έχουν ένα κοινό πεδίο (στήλη), τον ΚωδικόςΠελάτη, και αυτό είναι απαραίτητο στις σχεσιακές βάσεις δεδομένων για να μπορέσουμε να κάνουμε τη δουλειά μας και να συνδυάσουμε πληροφορίες και από τους δύο πίνακες. Όπως είναι εύκολα κατανοητό, η βασικότερη εργασία που έχουμε να κάνουμε κατά τον σχεδιασμό μιας σχεσιακής βάσης δεδομένων είναι να ορίσουμε τους πίνακες που θα χρησιμοποιήσουμε καθώς και τα πεδία που θα περιέχει ο καθένας απ αυτούς. Η διαδικασία αυτή αποκαλείται κατασκευή του σχήματος (schema) μιας βάσης δεδομένων. Οι κανόνες που πρέπει να ακολουθούμε πιστά κατά τον σχεδιασμό μιας σχεσιακής βάσης δεδομένων είναι οι εξής : Η κάθε οντότητα πρέπει να παριστάνεται ως ένας ξεχωριστός πίνακας. Η κάθε στήλη του πίνακα αντιστοιχεί σε μια ιδιότητα της οντότητας. Η κάθε γραμμή του πίνακα αντιστοιχεί σε μια εμφάνιση της οντότητας. Η κάθε γραμμή πρέπει να είναι μοναδική, δηλ. αποκλείεται να υπάρχουν δύο ή και περισσότερες γραμμές που να περιέχουν τα ίδια ακριβώς στοιχεία. Η σειρά εμφάνισης των γραμμών δεν έχει καμία σημασία. Η κάθε στήλη έχει μια δική της μοναδική ονομασία. Οι τιμές που ανήκουν στην ίδια στήλη πρέπει να είναι του ιδίου τύπου, δηλ. ή όλες αριθμοί ή όλες αλφαριθμητικές κοκ. Η στήλη που αποτελεί το πρωτεύον κλειδί (primary key) μιας οντότητας, δεν πρέπει να είναι ποτέ κενή (null). Αποκλείεται να υπάρχουν δύο ή και περισσότερες γραμμές που να περιέχουν την ίδια τιμή στο πρωτεύον κλειδί. Το πρωτεύον κλειδί μιας οντότητας αποκαλείται ξένο κλειδί (foreign key) σε μια άλλη οντότητα, με την οποία υπάρχει συσχετισμός. Μπορεί να υπάρχουν πολλές γραμμές που να έχουν την ίδια τιμή στο ξένο κλειδί Τα Σχεσιακά ΣΔΒΔ (RDBMS) Τα Σχεσιακά Συστήματα Διαχείρισης Βάσεων Δεδομένων (ΣΣΔΒΔ) ή RBMS (Relational DataBase Management Systems) αναπτύχθηκαν με βάση το σχεσιακό μοντέλο και έχουν επικρατήσει πλήρως στον χώρο. Κατά τον σχεδιασμό και τη δημιουργία μιας σχεσιακής βάσης δεδομένων, οι πίνακες αποτελούν το μοναδικό δομικό και απαραίτητο στοιχείο για μπορέσουν να αναπαρασταθούν οι πληροφορίες που περιέχονται στη βάση δεδομένων. Για να μπορέσουμε να προσθέσουμε, διαγράψουμε ή τροποποιήσουμε τα στοιχεία που περιέχονται σε μια βάση δεδομένων, χρησιμοποιούμε ειδικές γλώσσες προγραμματισμού που αποκαλούνται γλώσσες ερωταπαντήσεων (query languages). Η γλώσσα που αποτελεί σήμερα ένα διεθνές πρότυπο για την επικοινωνία των χρηστών με τα Σχεσιακά ΣΔΒΔ είναι η SQL (Structured Query Language) ή Δομημένη Γλώσσα Ερωτημάτων. Μπορεί να λειτουργήσει αυτόνομα αλλά και σε συνεργασία μ άλλες γλώσσες προγραμματισμού. 13

14 Μια άλλη, φιλική προς τον χρήστη γλώσσα προγραμματισμού για να μπορούμε να υποβάλουμε ερωτήματα σε σχεσιακές βάσεις δεδομένων και να λαμβάνουμε απαντήσεις είναι η QBE (Query By Example), η οποία χρησιμοποιεί φόρμες για τη γραφική απεικόνιση των ερωτημάτων μας. Σήμερα, υπάρχουν εξελιγμένα εργαλεία διαχείρισης σε γραφικό και φιλικό προς τον χρήστη περιβάλλον για να κάνουμε τα εξής : Δημιουργία πινάκων Δημιουργία φορμών Δημιουργία ερωτημάτων Δημιουργία εκθέσεων (αναφορών) Τα Σχεσιακά ΣΔΒΔ τα διακρίνουμε στα μεγάλα, τα οποία αφορούν κυρίως μεγάλους οργανισμούς και επιχειρήσεις, έχουν τεράστιο όγκο δεδομένων και πολλούς χρήστες ταυτόχρονα, και τέτοια συστήματα είναι τα Oracle, Ingres, Informix, SQL Server κ.ά. και τα μικρά, τα οποία αφορούν κυρίως απλούς χρήστες, όπως είναι η Microsoft Access, η Paradox, η FoxPro κ.ά Το Μοντέλο Οντοτήτων Συσχετίσεων Το μοντέλο που έχει επικρατήσει σήμερα για να παραστήσει τις έννοιες ή τη δομή μιας βάσης δεδομένων είναι το Μοντέλο Οντοτήτων Συσχετίσεων (ΟΣ). Οι βασικές (θεμελιώδεις) έννοιες του μοντέλου αυτού είναι οι εξής : Οντότητες Ιδιότητες ή Χαρακτηριστικά Συσχετίσεις Για να αναπαραστήσουμε ένα Μοντέλο Οντοτήτων Συσχετίσεων χρησιμοποιούμε ειδικά διαγράμματα, όπου τα ορθογώνια συμβολίζουν τις οντότητες, οι ρόμβοι τις συσχετίσεις και οι ελλείψεις τις ιδιότητες. Με ευθείες γραμμές συνδέουμε τις οντότητες που συσχετίζονται με κάποιο τρόπο μεταξύ τους. Όλα τα παραπάνω αποτελούν τη λογική δομή μιας βάσης δεδομένων, μια εργασία που είναι απαραίτητο να γίνει πριν από την καταχώριση και την επεξεργασία των στοιχείων (πληροφοριών) της βάσης δεδομένων. Το μοντέλο οντοτήτων συσχετίσεων αποτελεί μια γενική περιγραφή των γενικών στοιχείων που απαρτίζουν μια βάση δεδομένων και απεικονίζει την αντίληψη που έχουμε για τα δεδομένα (εννοιολογικό), χωρίς να υπεισέρχεται σε λεπτομέρειες υλοποίησης Οι Οντότητες Με τον όρο οντότητα (entity) αναφερόμαστε σε κάθε αντικείμενο, έννοια, πρόσωπο ή κατάσταση που έχει μια ανεξάρτητη ύπαρξη. Είναι κάτι που ξεχωρίζει και μπορούμε να συγκεντρώσουμε πληροφορίες (στοιχεία) γι αυτό. Η οντότητα είναι αντίστοιχη με την 14

15 έννοια της εγγραφής που συναντάμε στα αρχεία και στους πίνακες αλλά και με την έννοια του αντικειμένου στις σύγχρονες αντικειμενοστραφείς γλώσσες προγραμματισμού. Παραδείγματα οντοτήτων είναι τα εξής : ΠΕΛΑΤΗΣ, ΠΑΡΑΓΓΕΛΙΑ, ΠΡΟΜΗΘΕΥΤΗΣ, ΑΠΟΘΗΚΗ, ΜΑΘΗΤΗΣ, ΚΑΘΗΓΗΤΗΣ, ΑΘΛΗΤΗΣ, ΑΓΩΝΙΣΜΑ, ΧΩΡΑ, ΠΟΛΕΙΣ κ.ά. Μια βάση δεδομένων μπορεί να περιέχει πολλές διαφορετικές οντότητες, οι οποίες απεικονίζονται με ορθογώνια παραλληλόγραμμα και συσχετίζονται μεταξύ τους ανά δύο Οι Ιδιότητες (Χαρακτηριστικά) των Οντοτήτων Με τον όρο ιδιότητες (properties) ή χαρακτηριστικά (attributes) αναφερόμαστε στα συστατικά (δομικά) στοιχεία που προσδιορίζουν (αποτελούν) μια οντότητα. Η ιδιότητα είναι αντίστοιχη με την έννοια του πεδίου που συναντάμε στα αρχεία και στους πίνακες αλλά και με την έννοια της μεταβλητής στις γλώσσες προγραμματισμού. Για παράδειγμα, η οντότητα ΓΙΑΤΡΟΣ μπορεί να αποτελείται από τις ιδιότητες (χαρακτηριστικά) ΑριθμόςΜητρώου, Επώνυμο, Όνομα, Πατρώνυμο, Ειδικότητα, Βαθμός, ΈτοςΓέννησης, Διεύθυνση, ΑΦΜ, Τηλέφωνο, Κινητό κ.ά., ενώ η οντότητα ΑΘΛΗΤΗΣ μπορεί να αποτελείται από τις ιδιότητες (χαρακτηριστικά) ΚωδικόςΑθλητή, Επώνυμο, Όνομα, Πατρώνυμο, Αγώνισμα, Επίδοση, Σύλλογος, ΈτοςΓέννησης, Διεύθυνση, Τηλέφωνο, Κινητό κ.ά. Απ όλες τις ιδιότητες μιας οντότητας, υπάρχει μία μόνο ιδιότητα, και σπανιότερα ένας συνδυασμός δύο ή και περισσοτέρων ιδιοτήτων, η τιμή της οποίας είναι μοναδική και προσδιορίζει την κάθε εμφάνιση (στιγμιότυπο) της οντότητας και αποκαλείται πρωτεύον κλειδί (primary key). Το πρωτεύον κλειδί εμφανίζεται στα διαγράμματα με υπογράμμιση ή με έντονη γραφή ή έχει ως πρόθεμα τον χαρακτήρα #. Στο διάγραμμα οντοτήτων συσχετίσεων οι ιδιότητες απεικονίζονται με σχήματα ελλειπτικής μορφής, τα οποία ενώνονται με ευθείες γραμμές με την οντότητα στην οποία ανήκουν Τα Κλειδιά Όπως είδαμε και νωρίτερα, με τον όρο κλειδί (key) ή πιο σωστά πρωτεύον κλειδί (primary key) αναφερόμαστε σε μια ιδιότητα (πεδίο), ή σπανιότερα σ ένα σύνολο ιδιοτήτων (πεδίων), η τιμή της οποίας είναι μοναδική σ ολόκληρη την οντότητα (πίνακας). Στην πράξη, το πρωτεύον κλειδί έχει διαφορετική τιμή για κάθε εμφάνιση της οντότητας ή για κάθε γραμμή (εγγραφή) του πίνακα και ποτέ δεν μπορεί να έχει μηδενική (κενή) τιμή (null). Προσοχή, άλλο πράγμα είναι ο αριθμός 0 και άλλο πράγμα είναι η κενή τιμή (null), δηλ. η μη ύπαρξη τιμής. Ο συνδυασμός δύο ή και περισσοτέρων ιδιοτήτων (πεδίων) για τη δημιουργία ενός πρωτεύοντος κλειδιού αποκαλείται σύνθετο κλειδί. Ένα παράδειγμα σύνθετου κλειδιού θα μπορούσε να είναι ο συνδυασμός των ιδιοτήτων Επώνυμο, Όνομα και Πατρώνυμο, 15

16 εφόσον φυσικά είμαστε απολύτως βέβαιοι ότι δεν υπάρχουν δύο ή και περισσότερα άτομα με κοινές τιμές στις παραπάνω ιδιότητες. Ξένο κλειδί αποκαλείται μια ιδιότητα (πεδίο) που είναι πρωτεύον κλειδί σε μια οντότητα (πίνακας) αλλά που υπάρχει και σε μια άλλη οντότητα (πίνακας) σαν απλή ιδιότητα. Τα ξένα κλειδιά είναι απαραίτητα για να μπορέσουμε να κάνουμε τις συσχετίσεις (συνδέσεις, επικοινωνίες) ανάμεσα στις οντότητες (πίνακες). Για παράδειγμα, στην οντότητα ΣΥΛΛΟΓΟΣ, το πεδίο ΚωδικόςΣυλλόγου είναι πρωτεύον κλειδί, ενώ στην οντότητα ΑΘΛΗΤΗΣ, το πεδίο ΚωδικόςΣυλλόγου είναι ξένο κλειδί και είναι απαραίτητο για να μπορέσουμε να υλοποιήσουμε τη συσχέτιση ΑΝΗΚΕΙ, δηλ. να αντλήσουμε την πληροφορία ποιοι αθλητές ανήκουν σε ποιους συλλόγους. Προφανώς, στην οντότητα ΣΥΛΛΟΓΟΣ, το πεδίο Κωδικός Συλλόγου θα έχει μοναδικές τιμές, ενώ στην οντότητα ΑΘΛΗΤΗΣ, το πεδίο Κωδικός Συλλόγου θα έχει επαναλαμβανόμενες τιμές και αυτό γιατί πολλοί αθλητές θα ανήκουν στον ίδιο σύλλογο, αλλά ένας αθλητής ανήκει υποχρεωτικά σ έναν και μόνο έναν σύλλογο. Σ ένα άλλο παράδειγμα, στην οντότητα ΓΙΑΤΡΟΣ, το πεδίο ΚωδικόςΓιατρού είναι πρωτεύον κλειδί, ενώ στην οντότητα ΑΣΘΕΝΗΣ, το πεδίο ΚωδικόςΓιατρού είναι ξένο κλειδί και είναι απαραίτητο για να μπορέσουμε να υλοποιήσουμε τη συσχέτιση ΠΑΡΑΚΟΛΟΥΘΕΙΤΑΙ, δηλ. να αντλήσουμε την πληροφορία ποιοι ασθενείς παρακολουθούνται από ποιους γιατρούς. Προφανώς, στην οντότητα ΓΙΑΤΡΟΣ, το πεδίο ΚωδικόςΓιατρού θα έχει μοναδικές τιμές, ενώ στην οντότητα ΑΣΘΕΝΗΣ, το πεδίο ΚωδικόςΓιατρού θα έχει επαναλαμβανόμενες τιμές και αυτό γιατί πολλοί ασθενείς θα παρακολουθούνται από τον ίδιο γιατρό, αλλά ένας ασθενής παρακολουθείται μόνο από έναν γιατρό. Αυτό αποτελεί βέβαια μια παραδοχή που κάνουμε για να μπορέσουμε να υλοποιήσουμε μια συσχέτιση σαν την παραπάνω σε μια βάση δεδομένων ενός Νοσοκομείου, αλλά μπορεί να θεωρήσει κάποιος ότι ένας ασθενής μπορεί να παρακολουθείται από πολλούς γιατρούς ταυτόχρονα, οπότε θα πρέπει να μεταβάλλουμε και τον τρόπο συσχέτισης των παραπάνω οντοτήτων Οι Συσχετίσεις Μεταξύ Οντοτήτων Ο σωστός σχεδιασμός και προσδιορισμός των οντοτήτων και των ιδιοτήτων τους αποτελούν τα θεμελιώδη βήματα για τη σωστή σχεδίαση και υλοποίηση μιας βάσης δεδομένων. Μια συσχέτιση συνδέει δύο ή και περισσότερες οντότητες μεταξύ τους και παριστάνεται στο διάγραμμα οντοτήτων συσχετίσεων μ έναν ρόμβο. Οι συσχετίσεις είναι απαραίτητες για να μπορέσουμε να αντλήσουμε πληροφορίες που αφορούν δύο ή και περισσότερες οντότητες, όπως για παράδειγμα ποιοι πελάτες έκαναν παραγγελίες κάποια συγκεκριμένη χρονική περίοδο (συσχέτιση ΠΑΡΑΓΓΕΛΝΕΙ) ή ποιοι αθλητές ανήκουν σε ποιους συλλόγους (συσχέτιση ΑΝΗΚΕΙ) ή ποιοι αθλητές έλαβαν μέρος σε αγωνίσματα μια συγκεκριμένη χρονιά (συσχέτιση ΣΥΜΜΕΤΕΧΕΙ) κοκ. Όταν οι οντότητες που συμμετέχουν σε μια συσχέτιση είναι δύο, η συσχέτιση αποκαλείται διμελής ή δυαδική. Ο βαθμός μιας συσχέτισης είναι ίσος με το πλήθος των οντοτήτων που συμμετέχουν σ αυτήν. Μια συσχέτιση μπορεί και η ίδια να έχει ιδιότητες που να περιγράφουν ορισμένα χαρακτηριστικά της, όπως για παράδειγμα η συσχέτιση 16

17 ΠΑΡΑΓΓΕΛΙΑ ανάμεσα στις οντότητες ΠΕΛΑΤΗΣ και ΠΡΟΪΟΝ μπορεί να περιέχει τις ιδιότητες (πεδία) ΚωδικόςΠελάτη, ΚωδικόςΠροϊόντος, ΚωδικόςΠαραγγελίας, ΗμερομηνίαΠαραγγελίας, Ποσότητα κ.ά. Στην περίπτωση αυτή το σωστό είναι να δημιουργήσουμε μια ακόμα οντότητα, την οντότητα ΠΑΡΑΓΓΕΛΙΑ, η οποία και θα περιέχει όλες τις παραπάνω ιδιότητες, και να μετονομάσουμε την προηγούμενη συσχέτιση από ΠΑΡΑΓΓΕΛΙΑ σε ΣΥΝΑΛΛΑΓΗ, που δεν θα περιέχει τώρα ιδιότητες. Έτσι, η παραπάνω συσχέτιση θα μετατραπεί από διμελή σε τριμελή. Όταν σχεδιάζουμε μια βάση δεδομένων, θα πρέπει να εκχωρούμε ιδιότητες μόνο στις οντότητες και να έχουμε τις συσχετίσεις απλά και μόνο για να κατανοούμε τις λογικές συνδέσεις ανάμεσα στις οντότητες Οι Διμελείς Συσχετίσεις Οι διμελείς συσχετίσεις μεταξύ οντοτήτων είναι αυτές που θα μας απασχολήσουν ιδιαίτερα και υπάρχουν τρία βασικά είδη συνδέσεων σ αυτές, τα εξής : Ένα-προς-ένα (1:1), όπου μια εμφάνιση της μιας οντότητας συνδέεται με μία και μόνο μία εμφάνιση της άλλης οντότητας. Για παράδειγμα, η οντότητα ΣΥΛΛΟΓΟΣ έχει έναν μόνο προπονητή, ενώ η οντότητα ΠΡΟΠΟΝΗΤΗΣ συνδέεται μ έναν και μόνο έναν σύλλογο. Σ ένα άλλο παράδειγμα, η οντότητα ΝΟΜΟΣ έχει μία μόνο πόλη σαν πρωτεύουσα, ενώ η οντότητα ΠΡΩΤΕΥΟΥΣΑ αντιστοιχεί σ έναν και μόνο έναν νομό. Στην περίπτωση των διμελών συσχετίσεων του τύπου ένα-προς-ένα, μπορούμε να ενώσουμε τα στοιχεία και των δύο ιδιοτήτων και να δημιουργήσουμε μια μοναδική οντότητα (πίνακα). Ένα-προς-πολλά (1:Μ), όπου μια εμφάνιση της μιας οντότητας συνδέεται με πολλές εμφανίσεις της άλλης οντότητας αλλά κάθε εμφάνιση της δεύτερης οντότητας συνδέεται με μία και μόνο μία εμφάνιση της πρώτης οντότητας. Για παράδειγμα, ένας ΠΕΛΑΤΗΣ κάνει πολλές παραγγελίες, αλλά μια ΠΑΡΑΓΓΕΛΙΑ αντιστοιχεί σ έναν και μόνο έναν πελάτη. Σ ένα άλλο παράδειγμα, ένας ΣΥΛΛΟΓΟΣ έχει πολλούς αθλητές, αλλά ένας ΑΘΛΗΤΗΣ ανήκει σ έναν και μόνο έναν σύλλογο. Οι διμελείς συσχετίσεις του τύπου έναπρος-ένα είναι οι πιο συχνά συναντώμενες και οι πιο βολικές στη διαχείριση. Πολλά-προς-πολλά (Μ:Ν), όπου σε μια εμφάνιση της μιας οντότητας αντιστοιχούν πολλές εμφανίσεις της άλλης οντότητας και σε κάθε εμφάνιση της δεύτερης οντότητας αντιστοιχούν πολλές εμφανίσεις της πρώτης οντότητας. Για παράδειγμα, ένας ΑΘΛΗΤΗΣ συμμετέχει σε πολλούς αγώνες αλλά και σ έναν ΑΓΩΝΑ λαμβάνουν μέρος πολλοί αθλητές. Σ ένα άλλο παράδειγμα, ένας ΚΑΘΗΓΗΤΗΣ διδάσκει σε πολλούς μαθητές αλλά και ένας ΜΑΘΗΤΗΣ διδάσκεται από πολλούς καθηγητές. Για να μπορέσουμε να διαχειριστούμε μια διμελή σχέση του τύπου πολλά-προς-πολλά, θα πρέπει να δημιουργήσουμε έναν τρίτο πίνακα που θα περιέχει δύο μόνο ιδιότητες (πεδία), δηλ. τα πεδία κλειδιά των δύο οντοτήτων, οπότε ο συνδυασμός τους θα είναι και το πεδίο κλειδί (σύνθετο κλειδί) του νέου πίνακα. 17

18 1.22 Το Διάγραμμα Οντοτήτων Συσχετίσεων Για να μπορέσουμε να διαμορφώσουμε το διάγραμμα οντοτήτων συσχετίσεων, θα πρέπει να ακολουθήσουμε τα εξής βήματα : Να ορίσουμε τις οντότητες (πίνακες) που θα ανήκουν στη βάση δεδομένων που θέλουμε να δημιουργήσουμε. Να ορίσουμε τις ιδιότητες (πεδία) και τα πρωτεύοντα κλειδιά της κάθε οντότητας (πίνακα). Να ορίσουμε τις συσχετίσεις ανάμεσα στις οντότητες. Δημιουργούμε το διάγραμμα οντοτήτων συσχετίσεων, όπου θα απεικονίσουμε τις οντότητες, τις ιδιότητές τους και τις συσχετίσεις τους. Θα δούμε το διάγραμμα οντοτήτων συσχετίσεων για μια βάση δεδομένων με ομάδες (συλλόγους) ποδοσφαίρου, όπου θα έχουμε τις οντότητες ΑΘΛΗΤΗΣ, ΣΥΛΛΟΓΟΣ, ΠΡΟΠΟΝΗΤΗΣ και ΑΓΩΝΑΣ. Οι συσχετίσεις ανάμεσα στις οντότητες αυτές θα είναι οι εξής : ΑΘΛΗΤΗΣ ΣΥΛΛΟΓΟΣ : ένα-προς-πολλά (1:Μ) ΣΥΛΛΟΓΟΣ ΠΡΟΠΟΝΗΤΗΣ : ένα-προς-ένα (1:1) ΑΘΛΗΤΗΣ ΑΓΩΝΑΣ : πολλά-προς-πολλά (Μ:Ν) 18

19 Κωδικός Αθλητή Επώνυμο Όνομα Ημερομηνία Γέννησης ΑΘΛΗΤΗΣ Διακρίσεις Απολαβές Μ ΣΥΜΜΕΤΕΧΕΙ ΑΝΗΚΕΙ Ν Κωδικός Συλλόγου Επωνυμία Κωδικός Αγώνα Ημερομηνία Τέλεσης ΑΓΩΝΑΣ Αποτέλεσμα Κωδικός Διαιτητή ΣΥΛΛΟΓΟΣ Κωδικός Συλλόγου 2 Κωδικός Συλλόγου 1 Γήπεδο Έδρα 1 ΕΧΕΙ 1 Επώνυμο Κωδικός Προπονητή Όνομα ΠΡΟΠΟΝΗΤΗΣ Διακρίσεις Απολαβές 19

20 1.23 Λογικός Σχεδιασμός μιας Βάσης Δεδομένων Αφού έχουμε δημιουργήσει το διάγραμμα οντοτήτων συσχετίσεων και έχουμε επιλέξει το σχεσιακό μοντέλο δεδομένων για την υλοποίηση της βάσης δεδομένων, ακολουθούμε τη διαδικασία της κανονικοποίησης και είμαστε έτοιμοι για την καταχώριση των στοιχείων της βάσης δεδομένων. Ανάλογα τώρα με το είδος της διμελούς συσχέτισης, διακρίνουμε τις εξής περιπτώσεις ως προς τον λογικό σχεδιασμό που θα πρέπει να ακολουθήσουμε : Αν η συσχέτιση των δύο πινάκων είναι ένα-προς-ένα, τότε μπορούμε είτε να συνενώσουμε τους δύο πίνακες, με τις αντίστοιχες εγγραφές φυσικά, ή να προσθέσουμε το ένα από τα δύο πεδία κλειδιά σαν ξένο κλειδί στον άλλον πίνακα ή τέλος να δημιουργήσουμε έναν καινούργιο πίνακα με μόνα πεδία τα πεδία κλειδιά των δύο πινάκων (σύνθετο κλειδί). Η προτιμότερη διαδικασία είναι η πρώτη, δηλ. η συνένωση των δύο πινάκων σ έναν ενιαίο πίνακα. Αν η συσχέτιση των δύο πινάκων είναι ένα-προς-πολλά, τότε μπορούμε είτε να προσθέσουμε το ένα από τα δύο πεδία κλειδιά σαν ξένο κλειδί στον άλλον πίνακα ή να δημιουργήσουμε έναν καινούργιο πίνακα με μόνα πεδία τα πεδία κλειδιά των δύο πινάκων (σύνθετο κλειδί). Η προτιμότερη διαδικασία είναι η πρώτη, δηλ. η προσθήκη του ξένου κλειδιού στην πλευρά πολλά της σχέσης. Αν η συσχέτιση των δύο πινάκων είναι πολλά-προς-πολλά, τότε το μόνο που μπορούμε και πρέπει να κάνουμε είναι να δημιουργήσουμε έναν καινούργιο πίνακα με μόνα πεδία τα πεδία κλειδιά των δύο πινάκων (σύνθετο κλειδί), όπου το κάθε πεδίο κλειδί από μόνο του γίνεται ξένο κλειδί. Οι δύο αρχικοί πίνακες δεν μεταβάλλονται. 20

21 2 Η Δομημένη Γλώσσα Ερωτημάτων SQL 2.1 Τι Είναι η SQL Η SQL αποτελεί μια στάνταρτ γλώσσα του ANSI για να μπορούμε να έχουμε πρόσβαση σε βάσεις δεδομένων. Τα αρχικά SQL σημαίνουν Structured Query Language, δηλ. Δομημένη Γλώσσα Ερωτημάτων. Η SQL μάς δίνει τη δυνατότητα να έχουμε πρόσβαση σε μια βάση δεδομένων (database). Η SQL αποτελεί μια στάνταρτ γλώσσα του ANSI (ANSI standard language). Η SQL μπορεί να εκτελέσει ερωτήματα (queries) σχετικά με μια βάση δεδομένων. Η SQL μπορεί να ανακτήσει δεδομένα από μια βάση δεδομένων. Η SQL μπορεί να εισαγάγει νέες εγγραφές σε μια βάση δεδομένων. Η SQL μπορεί να διαγράψει εγγραφές από μια βάση δεδομένων. Η SQL μπορεί να ενημερώσει εγγραφές σε μια βάση δεδομένων. Η SQL είναι πολύ εύκολη στην εκμάθηση. Η SQL αποτελεί ένα στάνταρτ του ANSI (American National Standards Institute) για να μπορούμε να έχουμε πρόσβαση σε συστήματα βάσεων δεδομένων. Οι εντολές της SQL χρησιμοποιούνται για να ανακτήσουμε (retrieve) και να ενημερώσουμε (update) δεδομένα σε μια βάση δεδομένων (database). Η SQL συνεργάζεται με προγράμματα βάσεων δεδομένων όπως είναι τα εξής : Access, Informix, Microsoft SQL Server, Oracle, Sybase και πολλά άλλα. 2.2 Οι Πίνακες Βάσεων Δεδομένων (Database Tables) Οι βάσεις δεδομένων (databases) περιέχουν αντικείμενα (objects) που ονομάζονται Πίνακες (Tables). Οι Εγγραφές (Records) των δεδομένων απο-θηκεύονται σ αυτούς τους πίνακες. Οι Πίνακες αναγνωρίζονται με τα ονόματά τους, όπως "Persons", "Orders", "Suppliers" κ.ά. Οι Πίνακες περιέχουν Στήλες (Columns) και Γραμμές (Rows) με δε-δομένα. Οι Γραμμές (Rows) περιέχουν εγγραφές (records), όπως μία εγγραφή για κάθε άτομο. Οι Στήλες (Columns) περιέχουν δεδομένα, όπως First Name, Last Name, Address και City. Ακολουθεί ένα παράδειγμα ενός Πίνακα που ονομάζεται "Persons" : LastName FirstName Address City Παπαδόπουλος Δημήτριος Τυρνόβου 15 Φλώρινα 21

22 Αντωνιάδης Αντώνιος Π. Μελά 100 Φλώρινα Γεωργιάδης Νικόλαος Φον Κοζάνη 10 Κοζάνη Τα LastName, FirstName, Address και City είναι οι Στήλες (Columns) του πίνακα. Οι Γραμμές (Rows) περιέχουν τρεις εγγραφές για τρία άτομα. 2.3 Τα Ερωτήματα της SQL (SQL Queries) Με την SQL, μπορούμε να κάνουμε ένα ερώτημα (Query) σε μια βάση δεδομένων και να έχουμε ένα αποτέλεσμα (Result) σε μορφή πίνακα (tabu-lar form). Ενα ερώτημα σαν το εξής : SELECT LastName FROM Persons θα δώσει ένα αποτέλεσμα σαν το εξής : LastName Παπαδόπουλος Αντωνιάδης Γεωργιάδης Πρέπει να έχουμε υπόψη μας ότι μερικά συστήματα βάσεων δεδομένων απαιτούν το σύμβολο ; (semicolon) στο τέλος μιας εντολής SQL. Δεν θα χρησιμοποιήσουμε εδώ το σύμβολο ;. 2.4 Χειρισμός Δεδομένων της SQL (Data Manipulation) Οπως υπονοεί και το όνομά της, η SQL είναι μια σύνταξη για την εκτέλεση ερωτημάτων (queries). Αλλά η γλώσσα της SQL περιλαμβάνει επίσης μια σύνταξη για την ενημέρωση εγγραφών, την εισαγωγή νέων εγγραφών και τη διαγραφή υπαρχόντων εγγραφών. Αυτές οι εντολές ερωτημάτων και ενημέρωσης αποτελούν μαζί τη Γλώσσα Χειρισμού Δεδομένων (Data Manipulation Language, DML) που αποτελεί κομμάτι της SQL : SELECT - εξάγει δεδομένα από μια βάση δεδομένων. UPDATE - ενημερώνει δεδομένα σε μια βάση δεδομένων. 22

23 DELETE - διαγράφει δεδομένα από μια βάση δεδομένων. INSERT - εισάγει νέα δεδομένα σε μια βάση δεδομένων. 2.5 Ορισμός Δεδομένων της SQL (Data Definition) Η Γλώσσα Ορισμού Δεδομένων (Data Definition Language, DDL), που αποτελεί μέρος της SQL, επιτρέπει τη δημιουργία και τη διαγραφή πινάκων μιας βάσης δεδομένων. Μπορούμε επίσης να ορίσουμε indexes (keys), να καθορίσουμε συνδέσμους (links) ανάμεσα στους πίνακες και να επιβάλλουμε περιορισμούς ανάμεσα στους πίνακες μιας βάσης δεδομένων. Οι σημαντικότερες εντολές DDL στην SQL είναι οι εξής : CREATE TABLE - δημιουργεί έναν νέον πίνακα σε μια βάση δεδομένων. ALTER TABLE - τροποποιεί έναν πίνακα σε μια βάση δεδομένων. DROP TABLE - διαγράφει έναν πίνακα από μια βάση δεδομένων. CREATE INDEX - δημιουργεί έναν index (search key). DROP INDEX - διαγράφει έναν index. 2.6 Η SQL και οι Ενεργές Σελίδες Διακομιστή Η SQL αποτελεί ένα σημαντικό κομμάτι της ASP, επειδή το Ενεργό Αντικείμενο Δεδομένων (Active Data Object, ADO) που χρησιμοποιείται στην ASP (Active Server Pages) για να μπορούμε να έχουμε πρόσβαση σε βάσεις δεδομένων, βασίζεται στην SQL για την πρόσβαση στα δεδομένα. 2.7 Η Εντολή Select της SQL Η εντολή SELECT επιλέγει στήλες (columns) δεδομένων από μια βάση δεδομένων. Το αποτέλεσμα αποθηκεύεται σε μορφή πίνακα και αποκαλείται result set. Την χρησιμοποιούμε για να εμφανίζουμε (επιλέγουμε) πληροφορίες από έναν πίνακα ως εξής : SELECT ονόματα_στηλών FROM όνομα_πίνακα Παράδειγμα : Επιλογή Στηλών από έναν Πίνακα Για να επιλέξουμε τις στήλες "LastName" και "FirstName", χρησιμοποιούμε μια εντολή SELECT, ως εξής : SELECT LastName, FirstName FROM Persons Το αποτέλεσμα : 23

24 LastName Παπαδόπουλος Αντωνιάδης Γεωργιάδης FirstName Δημήτριος Αντώνιος Νικόλαος Παράδειγμα : Επιλογή όλων των Στηλών Για να επιλέξουμε όλες τις στήλες από τον πίνακα "Person", χρησιμοποιούμε το σύμβολο * αντί για όνομα στήλης, ως εξής : SELECT * FROM Persons Το αποτέλεσμα : LastName FirstName Address City Παπαδόπουλος Δημήτριος Τυρνόβου 15 Φλώρινα Αντωνιάδης Αντώνιος Π. Μελά 100 Φλώρινα Γεωργιάδης Νικόλαος Φον Κοζάνη 10 Κοζάνη 2.8 Το Where Clause της SQL Το WHERE clause χρησιμοποιείται για να καθορίσουμε ένα κριτήριο επιλογής (selection criteria). Για να μπορέσουμε να επιλέξουμε δεδομένα υπό συνθήκη από έναν πίνακα, πρέπει να προσθέσουμε ένα WHERE clause σε μια εντολή SELECT, ως εξής : SELECT στήλη FROM πίνακα WHERE στήλη συνθήκη τιμή Με το WHERE clause, μπορούμε να χρησιμοποιήσουμε αυτές τις συνθήκες : Τελεστής (Operator) Συνθήκη (Condition) = Ίσο <> Όχι ίσο > Μεγαλύτερο από < Μικρότερο από >= Μεγαλύτερο από ή ίσο με 24

25 <= Μικρότερο από ή ίσο με LIKE Επεξηγείται παρακάτω Σε μερικές εκδόσεις της SQL, ο τελεστής για το όχι ίσο (<>), μπορεί να γραφεί ως εξής :!=. Παράδειγμα : Επιλογή Ατόμων από μια Πόλη Για να επιλέξουμε μόνο τα άτομα που κατοικούν στην πόλη Φλώρινα, προσθέτουμε ένα WHERE clause στην εντολή SELECT, ως εξής : SELECT * FROM Persons WHERE City='Φλώρινα' Το αποτέλεσμα : LastName FirstName Address City Year Παπαδόπουλος Δημήτριος Τυρνόβου 15 Φλώρινα Αντωνιάδης Αντώνιος Π. Μελά 100 Φλώρινα Εχουμε χρησιμοποιήσει μονά εισαγωγικά (single quotes) στις τιμές των συνθηκών στα παραδείγματα. Η SQL χρησιμοποιεί μονά εισαγωγικά στις αλφαριθμητικές τιμές (κείμενο). Τα περισσότερα συστήματα βάσεων δεδομένων αποδέχονται και τα διπλά εισαγωγικά (double quotes). Οι αριθμητικές τιμές δεν πρέπει να περικλείονται σε εισαγωγικά. Για τις τιμές κειμένου (αλφαριθμητικές) : Αυτό είναι σωστό : SELECT * FROM Persons WHERE FirstName='Δημήτριος' Αυτό δεν είναι σωστό : SELECT * FROM Persons WHERE FirstName=Δημήτριος Για τις αριθμητικές τιμές : Αυτό είναι σωστό : SELECT * FROM Persons WHERE Year>1965 Αυτό δεν είναι σωστό : SELECT * FROM Persons WHERE Year>'1965' 25

26 2.9 Οι Λογικοί Τελεστές And και Or Τα AND και OR ενώνουν δύο ή περισσότερες συνθήκες σ ένα WHE-RE clause. Ο τελεστής AND εμφανίζει μια γραμμή αν ΟΛΕΣ οι συνθήκες είναι αληθείς (true), ενώ ο τελεστής OR εμφανίζει μια γραμμή αν ΟΠΟΙΑΔΗΠΟΤΕ από τις συνθήκες είναι αληθής (true). Ο αρχικός πίνακας είναι ο εξής : LastName FirstName Address City Παπαδόπουλος Δημήτριος Τυρνόβου 15 Φλώρινα Γεωργιάδης Αντώνιος Π. Μελά 100 Φλώρινα Γεωργιάδης Νικόλαος Ι. Καραβίτη 2 Φλώρινα Παράδειγμα Χρησιμοποιούμε το AND για να εμφανίσουμε αυτούς που το όνομά τους είναι "Νικόλαος" και το επώνυμό τους είναι "Γεωργιάδης" : SELECT * FROM Persons WHERE FirstName='Νικόλαος' AND LastName='Γεωργιάδης' Αποτέλεσμα : LastName FirstName Address City Γεωργιάδης Νικόλαος Ι. Καραβίτη 2 Φλώρινα Παράδειγμα Χρησιμοποιούμε το OR για να εμφανίσουμε αυτούς που το όνομά τους είναι "Νικόλαος" ή το επώνυμό τους είναι "Γεωργιάδης" : SELECT * FROM Persons WHERE firstname='νικόλαος' OR lastname='γεωργιάδης' Αποτέλεσμα : 26

27 LastName FirstName Address City Γεωργιάδης Αντώνιος Π. Μελά 100 Φλώρινα Γεωργιάδης Νικόλαος Ι. Καραβίτη 2 Φλώρινα Παράδειγμα Μπορούμε επίσης να συνδυάσουμε τα AND και OR, χρησιμοποιώντας παρενθέσεις για να σχηματίσουμε πολύπλοκες εκφράσεις : SELECT * FROM Persons WHERE (FirstName='Αντώνιος' OR FirstName='Νικόλαος') AND LastName='Γεωργιάδης' Αποτέλεσμα : LastName FirstName Address City Γεωργιάδης Αντώνιος Π. Μελά 100 Φλώρινα Γεωργιάδης Νικόλαος Ι. Καραβίτη 2 Φλώρινα 2.10 Η Εντολή Update Η εντολή UPDATE ενημερώνει ή αλλάζει γραμμές. Η σύνταξή της είναι ως εξής : UPDATE όνομα_πίνακα SET όνομα_στήλης=νέα_τιμή WHERE όνομα_στήλης=τιμή Αρχικός πίνακας Person : LastName FirstName Address City Σουμπάση Μαρία Καλλέργη 15 Φλώρινα Σιάμκουρης Ιωάννης Π. Μελά 90 Καστοριά Νικολάου Ταγμ. Ναούμ 30 Ενημέρωση μίας Στήλης σε μια Γραμμή Θέλουμε να προσθέσουμε ένα όνομα στο άτομο που έχει το επώνυμο "Νικολάου" : 27

28 UPDATE Person SET FirstName = 'Αθηνά' WHERE LastName = 'Νικολάου' Ενημέρωση Πολλών Στηλών σε μια Γραμμή Για το ίδιο άτομο θέλουμε να αλλάξουμε τη διεύθυνση και να προσθέσουμε ένα όνομα για την πόλη : UPDATE Person SET Address = 'Μεγαρόβου 12', City ='Φλώρινα' WHERE LastName = 'Νικολάου' Αποτέλεσμα : LastName FirstName Address City Σουμπάση Μαρία Καλλέργη 15 Φλώρινα Σιάμκουρης Ιωάννης Π. Μελά 90 Καστοριά Νικολάου Αθηνά Μεγαρόβου 12 Φλώρινα 2.11 Ενωση Πινάκων (Join) Μερικές φορές πρέπει να επιλέξουμε δεδομένα από δύο πίνακες για να δημιουργήσουμε ένα πιο πολύπλοκο αποτέλεσμα. Θα πρέπει να κάνουμε μια ένωση (join). Οι πίνακες μιας βάσης δεδομένων μπορούν να συσχετιστούν μεταξύ τους με κλειδιά (keys). Ένα πρωτεύον κλειδί (primary key) είναι μια στήλη με μια μοναδική τιμή στην κάθε γραμμή. Ο σκοπός είναι να ενώσει τα δεδομένα μαζί από διάφορους πίνακες, χωρίς να έχουμε επανάληψη όλων των δεδομένων σε κάθε πίνακα. Στον πίνακα "Employees" παρακάτω, η στήλη "ID" είναι το πρωτεύον κλειδί (primary key), που σημαίνει ότι δεν μπορούν να υπάρχουν δύο γραμμές που να έχουν το ίδιο ID. Το ID είναι αυτό που ξεχωρίζει δύο άτομα ακόμη κι αν έχουν το ίδιο όνομα. Στους πίνακες παραδειγμάτων παρακάτω, προσέχουμε τα εξής : Η στήλη "ID" είναι το πρωτεύον κλειδί του πίνακα "Employees". Η στήλη "ID" του πίνακα "Orders" χρησιμοποιείται για να αναφερόμαστε στα άτομα του πίνακα "Employees", χωρίς να χρησιμοποιούμε τα ονόματά τους. Πίνακας Employees : 28

29 D Name Νικολάου Αθηνά Γεωργιάδης Ηλίας Παπαδόπουλος Στέφανος Σουμπάσης Ιωάννης Πίνακας Orders : D Product Printer Computer Scanner Παράδειγμα Ποιοι έχουν παραγγείλει προϊόντα και τι έχουν παραγγείλει; SELECT Employees.Name, Orders.Product FROM Employees, Orders WHERE Employees.ID = Orders.ID Αποτέλεσμα : Name Νικολάου Αθηνά Παπαδόπουλος Στέφανος Παπαδόπουλος Στέφανος Product Printer Computer Scanner 29

30 Παράδειγμα Ποιοι έχουν παραγγείλει εκτυπωτή (printer); SELECT Employees.Name FROM Employees, Orders WHERE Employees.ID = Orders.ID AND Orders.Product = 'Printer' Αποτέλεσμα : Name Νικολάου Αθηνά 2.12 Δημιουργία Βάσης Δεδομένων και Πίνακα Για να δημιουργήσουμε μια βάση δεδομένων, μπορούμε να δώσουμε την εξής εντολή : CREATE DATABASE όνομα_βάσης_δεδομένων Για να δημιουργήσουμε έναν πίνακα σε μια βάση δεδομένων, μπορούμε να δώσουμε την εξής εντολή : CREATE TABLE όνομα_πίνακα ( όνομα_στήλης_1 τύπος_δεδομένων, όνομα_στήλης_2 τύπος_δεδομένων, ) Παράδειγμα Θα δημιουργήσουμε έναν πίνακα με όνομα "Person", με τέσσερις στήλες με ονόματα "LastName", "FirstName", "Address" και "Age" : CREATE TABLE Person ( 30

31 LastName varchar, FirstName varchar, Address varchar, Age number ) Θα ορίσουμε ένα μέγιστο μήκος για μερικές στήλες : CREATE TABLE Person ( LastName varchar(30), FirstName varchar, Address varchar, Age number(3) ) Ο τύπος δεδομένων (data type) καθορίζει τι είδος δεδομένων θα περιέχει η στήλη. Ο παρακάτω πίνακας περιέχει τους πιο συνηθισμένους τύπους δεδομένων της SQL : Τύπος Δεδομένων Περιγραφή (Description) (Data Type) char(size) varchar(size) number(size) number(size, d) date Περιέχει ένα string σταθερού μήκους που μπορεί να περιέχει γράμματα, αριθμούς και ειδικούς χαρακτήρες. Το σταθερό μέγεθος καθορίζεται στις παρενθέσεις. Περιέχει ένα string μεταβλητού μήκους που μπορεί να περιέχει γράμματα, αριθμούς και ειδικούς χαρακτήρες. Το μέγιστο μέγεθος καθορίζεται στις παρενθέσεις. Περιέχει έναν αριθμό, όπου ο μέγιστος αριθμός των ψηφίων καθορίζεται στις παρενθέσεις. Περιέχει έναν αριθμό, όπου ο μέγιστος αριθμός των ψηφίων καθορίζεται στο size και ο μέγιστος αριθμός των ψηφίων στα δεξιά της υποδιαστολής καθορίζεται στο d. Περιέχει μια ημερομηνία. 31

32 2.13 Διαγραφή Βάσης Δεδομένων και Πίνακα Για να διαγράψουμε μια βάση δεδομένων, χρησιμοποιούμε την εξής εντολή : DROP DATABASE όνομα_βάσης_δεδομένων Για να διαγράψουμε έναν πίνακα, χρησιμοποιούμε την εξής εντολή : DROP TABLE όνομα_πίνακα Για να διαγράψουμε τα δεδομένα ενός πίνακα χωρίς να διαγράψουμε τον πίνακα, χρησιμοποιούμε την εξής εντολή : DELETE TABLE όνομα_πίνακα 2.14 Η Εντολή Alter Table Η εντολή ALTER TABLE χρησιμοποιείται για να προσθέσουμε ή να διαγράψουμε στήλες από έναν υπάρχοντα πίνακα. Η σύνταξή της για τις δύο αυτές περιπτώσεις είναι ως εξής : ALTER TABLE όνομα_πίνακα ADD όνομα_στήλης τύπος_δεδομένων ALTER TABLE όνομα_πίνακα DROP όνομα_στήλης Πίνακας Person : LastName FirstName Address Σταύρου Μαρίνα Σαρανταπόρου 10 Παράδειγμα Για να προσθέσουμε μια στήλη με όνομα "City" στον πίνακα "Person", δίνουμε την εξής εντολή : ALTER TABLE Person ADD City varchar(30) Αποτέλεσμα : LastName FirstName Address City Σταύρου Μαρίνα Σαρανταπόρου 10 Παράδειγμα 32

33 Για να διαγράψουμε (drop) τη στήλη "Address" του πίνακα "Person", δίνουμε την εξής εντολή : ALTER TABLE Person DROP Address Αποτέλεσμα : LastName FirstName City Σταύρου Μαρίνα 33

34 34

35 Τα βασικά στοιχεία της Access 2.15 Σκοπός Ο σκοπός ενός συστήματος βάσεων δεδομένων όπως η Microsoft Access είναι να σας βοηθά στην αποθήκευση και ανάκτηση δεδομένων. Η Microsoft Access είναι ένα ισχυρό πρόγραμμα βάσεων δεδομένων, σχεδιασμένο ώστε να παρακολουθεί επιτυχώς τα δεδομένα σας. Είναι επίσης ένα από τα απλούστερα στην εκμάθηση και χρήση προγράμματα του είδους Σχεσιακές βάσεις δεδομένων Μια βάση δεδομένων είναι μία συλλογή πληροφοριών οι οποίες είναι με λογικό τρόπο οργανωμένες. Κλασσικά παραδείγματα βάσεων δεδομένων είναι οι τηλεφωνικοί κατάλογοι, οι εγκυκλοπαίδειες, τα λεξικά κ.ο.κ. Ο Πίνακας 1.1 πελατών: παρουσιάζει ένα παράδειγμα απλής βάσης δεδομένων - μία λίστα Όνομα Διεύθυνση Πόλη Νομός Τ.Κ. Κωδ. Πελάτη Νικολάου Γεώργιος Τσιμισκή 34 Θεσ/νίκη Θεσ/νίκης Βελλίδης Αγ. Ανδρέα Αθανάσιος 3 Κοζάνη Κοζάνης Καλιγά Β. Όλγας Ελένη 222 Θεσ/νίκη Θεσ/νίκης Ιωαννίδης Κων/πόλεως Δημήτριος 55 Καβάλα Καβάλας Οι βάσεις δεδομένων μπορούν βέβαια να τηρούνται και σε χαρτί. Με τη χρήση όμως Ηλεκτρονικών Υπολογιστών έχουμε τη δυνατότητα να εποπτεύουμε, να διευρύνουμε, να ανιχνεύουμε γρήγορα και απλά. Το θεμελιώδες συστατικό μιας βάσης δεδομένων της Microsoft Access είναι ο πίνακας. Ένας πίνακας αποτελείται από γραμμές και στήλες δεδομένων. Η Microsoft Access είναι ένα απλό παράδειγμα εφαρμογής σχεσιακών βάσεων δεδομένων. Επιτρέπει δηλαδή στον χρήστη να συνδέει (σχετίζει) δύο ή περισσότερους πίνακες όταν αυτοί έχουν στήλες με κοινούς τύπους δεδομένων. Ένας πίνακας μιας βάσης δεδομένων αποτελείται από στήλες οι οποίες ονομάζονται πεδία. Κάθε στήλη προσδιορίζεται με ένα όνομα του πεδίου. Οι γραμμές του 35

36 πίνακα ονομάζονται εγγραφές. Έτσι στο παράδειγμα του Πίνακα 1.1 έχουμε τα πεδία: Όνομα, Διεύθυνση, Πόλη, Νομός, Τ.Κ., Κωδ. Πελάτη και τις εγγραφές Νικολάου, Βελλίδης, Καλιγά, Ιωαννίδης Δουλεύοντας με την Ms Access Τύποι αντικειμένων μιας βάσης δεδομένων της Access Όταν ανοίγετε μια βάση δεδομένων, η Access εμφανίζει το παράθυρο της βάσης δεδομένων. Το παράθυρο της βάσης δεδομένων είναι το σημείο μέσω του οποίου δημιουργείτε, τροποποιείτε και εμφανίζετε οποιονδήποτε από τους έξι τύπους αντικειμένων της Access, όπως περιγράφονται στον παρακάτω πίνακα : Αντικείμενο Πίνακας Ερώτημα Φόρμα Περιγραφή Αποθηκεύει τα δεδομένα σε μορφή γραμμών και στηλών, παρόμοια με ένα φύλλο εργασίας. Εξάγει δεδομένα από τον πίνακα βασιζόμενο σε κριτήρια τα οποία παρέχει ο χρήστης. Τα ερωτήματα επιτρέπουν στον χρήστη να βλέπει πεδία από περισσότερους του ενός πίνακες. Εμφανίζει δεδομένα από ένα πίνακα ή ερώτημα, χρησιμοποιώντας, μία καθοριζόμενη από το χρήστη ειδική μορφή. Οι φόρμες δίνουν στους χρήστες την δυνατότητα να εμφανίζουν, να επεξεργάζονται και 36

37 να εκτυπώνουν τα δεδομένα. Οι φόρμες μπορούν να χρησιμοποιούνται για την εμφάνιση δεδομένων από περισσότερους του ενός πίνακες ή ερωτήματα, και μπορούν να σχεδιάζονται ώστε να δείχνουν πανομοιότυπες με τις έντυπες φόρμες. Αναφορά Εμφανίζει και εκτυπώνει δεδομένα από ένα πίνακα ή ερώτημα, χρησιμοποιώντας, μία καθοριζόμενη από το χρήστη ειδική μορφή. Δεν μπορείτε να επεξεργαστείτε τα δεδομένα που εμφανίζει μια αναφορά. Οι αναφορές μπορούν να περιέχουν δεδομένα από περισσότερους του ενός πίνακες ή ερωτήματα, καθώς επίσης και υπολογιζόμενα πεδία τα οποία βασίζονται σε δεδομένα που περιέχονται στους πίνακες Μακροεντολή Αυτοματοποιεί κοινές ενέργειες βάσεων δεδομένων, εκτελώντας μία Λειτουργική Μονάδα ομάδα βημάτων τα οποία καθορίζει ο χρήστης. Αυτοματοποιεί πολύπλοκες λειτουργίες τις οποίες δεν μπορούν να εκτελέσουν οι μακροεντολές. Οι λειτουργικές μονάδες είναι γραμμένες με την γλώσσα προγραμματισμού Visual Basic Δημιουργία βάσης δεδομένων στην Access Για να δημιουργήσετε μια νέα βάση δεδομένων πελατών ακολουθείστε τα εξής βήματα : 1. Κάντε κλικ στο κουμπί Δημιουργία Βάσης Δεδομένων της γραμμής εργαλείων. Θα εμφανιστεί το παράθυρο διαλόγου Δημιουργία. 2. Κάντε κλικ στο εικονίδιο Κενή Βάση Δεδομένων και ΟΚ. 3. Αλλάξτε το όνομα που βλέπετε στο πλαίσιο Όνομα Αρχείου από βδ1 σε κάποιο όνομα που εσείς θέλετε (π.χ. ΔΙΑΧΕΙΡΙΣΗ ΠΑΡΑΓΓΕΛΙΩΝ) και στη συνέχεια κάντε κλικ στο Δημιουργία. 37

38 Άνοιγμα βάσης δεδομένων της Access Για να δημιουργήσετε μια νέα βάση δεδομένων πελατών ακολουθείστε τα εξής βήματα : Επιλέξτε κατά σειρά Αρχείο, Άνοιγμα Βάσης Δεδομένων. Η Access εμφανίζει το παράθυρο διαλόγου Άνοιγμα. Επιλέξτε τον φάκελο (directory) που είναι αποθηκευμένη η βάση σας. Κάντε κλικ στο όνομα της βάσης που θέλετε να ανοίξετε. Κάντε κλικ στο κουμπί Άνοιγμα Μέρος 3 ο : Πίνακες στην Ms Access Δημιουργία νέου Πίνακα Αφού δημιουργήσετε μια νέα βάση δεδομένων, στη συνέχεια πρέπει να δημιουργήσετε και να σχεδιάσετε τη δομή κάθε πίνακα που θέλετε να χρησιμοποιήσετε για εισαγωγή και επεξεργασία δεδομένων, δημιουργία ερωτημάτων και αναφορών Δομή Πίνακα Για να δημιουργήσετε τη δομή ενός Πίνακα, ακολουθήστε τα εξής βήματα : Από το παράθυρο βάσης δεδομένων κάντε κλικ στην καρτέλα Πίνακες. Κάντε κλικ στο κουμπί Δημιουργία. Η Access εμφανίζει το παράθυρο διαλόγου Δημιουργία Πίνακα. 38

39 Κάντε κλικ στο Προβολή Σχεδίασης και στη συνέχεια στο OK. Ο Πίνακας ανοίγει σε προβολή σχεδίασης. Κάθε γραμμή στο παράθυρο του Πίνακα που βλέπετε στην προβολή σχεδίασης αντιπροσωπεύει τον ορισμό ενός πεδίου (στήλης) στον πίνακα που δημιουργείτε. Η πρώτη στήλη του πίνακα περιέχει το όνομα του κάθε πεδίου. Η δεύτερη ορίζει τον τύπο των δεδομένων, η τρίτη περιέχει μία προαιρετική περιγραφή των δεδομένων ή της χρήσης του πεδίου Ονόματα Πεδίων Πίνακα Όταν δημιουργούμε ένα πίνακα, πρέπει να δίνουμε προσοχή στα ονόματα των πεδίων. Συνήθως επιλέγουμε ονόματα που περιγράφουν το περιεχόμενο των πεδίων. Επίσης καλό θα είναι αν το πεδίο υπάρχει σε περισσότερους του ενός πίνακες, να χρησιμοποιούμε το ίδιο όνομα. Για να ονομάσετε ένα πεδίο, πληκτρολογείστε το όνομα του στη στήλες όνομα πεδίου του παραθύρου σχεδίασης Πίνακα Τύπος Πεδίων Σε μία στήλη (πεδίο) ενός πίνακα μπορούμε να αποθηκεύσουμε δεδομένα από έναν από αρκετούς διαφορετικούς τύπους δεδομένων. Για να βεβαιωθούμε ότι εισάγεται ο σωστός τύπος δεδομένων σε κάθε πεδίο, πρέπει να καθορίσουμε τον τύπο του πεδίου. Η στήλη Τύπος Δεδομένων του παραθύρου σχεδίασης Πίνακα λέει στην Access ποιος είναι ο τύπος δεδομένων του κάθε πεδίου. Ο παρακάτω Πίνακας εξηγεί τους αποδεκτούς τύπους δεδομένων. Τύπος δεδομένων Αποθηκεύει Κείμενο Οποιονδήποτε συνδυασμό μέχρι και 255 γραμμάτων, αριθμών και κενών διαστημάτων. Υπόμνημα Ένα πεδίο κειμένου μεταβλητού μεγέθους, το οποίο μπορεί να αποθηκεύσει ολόκληρες παραγράφους ή ακόμα και σελίδες κειμένου. Αριθμός Οποιονδήποτε αριθμό με ή χωρίς δεκαδικά ψηφία. Ημερομηνία/Ώρα Ημερομηνίες και ώρες (με αυτόματη μορφοποίηση). Νομισματική Μονάδα Τιμές οι οποίες αντιπροσωπεύουν χρηματικά ποσά. Τα σύμβολα νομισματικής μονάδας (ανάλογα με τις επιλεγμένες Τοπικές Ρυθμίσεις των Windows 95) προστίθενται αυτόματα. Αυτόματη Αρίθμηση Αριθμοί οι οποίοι αυξάνονται αυτόματα σε κάθε νέα εγγραφή. Ναι/Όχι Λογικές τιμές του στυλ : Ναι ή Όχι, Αληθές ή Ψευδές. Αντικείμενο OLE Οποιαδήποτε δεδομένα δυαδικής μορφής, 39

40 Μέγεθος Πεδίων συμπεριλαμβανομένων και αντικειμένων που προέρχονται από την λειτουργία διασύνδεσης και ενσωμάτωσης αντικειμένων (OLE) των Windows, όπως π.χ. γραφικά, ήχοι και εικόνα βίντεο. Για τα πεδία με τύπο "Κείμενο" ή "Αριθμός" έχουμε τη δυνατότητα να προσαρμόσουμε (από το παράθυρο σχεδίασης Πίνακα) τις ιδιότητες των πεδίων, όπως το μέγεθος (μέγιστος αριθμός δεδομένων που μπορούμε να εισάγουμε). Για τα πεδία Κειμένου, η Access χρησιμοποιεί μόνο το χώρο που είναι απαραίτητος για την αποθήκευση των εισαγόμενων δεδομένων, ακόμα και αν το καθορισμένο μέγεθος του πεδίου επιτρέπει μεγαλύτερες καταχωρήσεις. Για το πεδία Αριθμού όμως δεσμεύει ένα σταθερό ποσό χώρου αποθήκευσης, ανάλογο του μεγέθους που ορίζουμε Οι υπόλοιπες ιδιότητες των Πεδίων Η Access επιτρέπει να καθορίσουμε και άλλες ιδιότητες για τα πεδία, εκτός από το μέγεθος τους. Η περιοχή ιδιοτήτων του παραθύρου σχεδίασης Πίνακα μπορεί να χρησιμοποιηθεί για τον καθορισμό οποιασδήποτε ή όλων των ιδιοτήτων που περιγράφονται στον παρακάτω Πίνακα Ιδιότητα Πεδίου Μέγεθος Μορφή Δεκαδικές θέσεις Μάσκα Εισαγωγής Λεζάντα Προεπιλεγμένη Τιμή Κανόνας Επικύρωσης Κείμενο Επικύρωσης Με Ευρετήριο Περιγραφή Για τους τύπους δεδομένων Κείμενο και Αριθμός, ορίζει το μέγιστο μέγεθος των δεδομένων που μπορείτε να εισάγετε στο πεδίο αυτό. Ελέγχει τον τρόπο με τον οποίο εμφανίζει και εκτυπώνει δεδομένα η Access. Για τους τύπους δεδομένων Αριθμός και Νομισματική Μονάδα, καθορίζει το πλήθος των δεκαδικών ψηφίων που θα εμφανίζονται και θα εκτυπώνονται. Παρέχει ένα προκαθορισμένο μοτίβο εμφάνισης για τα δεδομένα που εισάγετε σ' ένα πεδίο. Παρέχει μια ετικέτα η οποία μπορεί να χρησιμοποιηθεί αντί του ονόματος του πεδίου σε φόρμες και αναφορές. Συμπληρώνει με μια προκαθορισμένη τιμή κάθε νέα εγγραφή που προσθέτουμε στον πίνακα. Μπορούμε να αλλάξουμε την τιμή αυτή κατά την διάρκεια της καταχώρησης. Ελέγχει τα δεδομένα που εισάγουμε σ' ένα πεδίο έναντι κάποιων κριτηρίων, με στόχο να αποτρέψει την καταχώρηση άκυρων δεδομένων. Το μήνυμα που θα εμφανίζει η Access εάν εισάγουμε δεδομένα τα οποία δεν συμφωνούν με το κριτήρια της ιδιότητας Κείμενο Επικύρωσης. Δημιουργεί ένα ευρετήριο για το πεδίο, επιταχύνοντας έτσι τις 40

41 αναζητήσεις δεδομένων σ' αυτό το πεδίο Περιγραφή Πεδίων Η Access μας επιτρέπει να δημιουργήσουμε και να εισάγουμε μια περιγραφή για κάθε όνομα πεδίου στη στήλη Περιγραφή του παραθύρου σχεδίασης Πίνακα. Η περιγραφή αυτή θα εμφανίζεται στο τέλος της οθόνης για να υπενθυμίζει στο χρήστη ποιος είναι ο σκοπός κάθε πεδίου Πρωτεύον Κλειδί Ένα πρωτεύον κλειδί είναι ένα πεδίο το οποίο αποθηκεύει δεδομένα τα οποία με τη σειρά τους προσδιορίζουν με μοναδικό τρόπο κάθε εγγραφή. Καθορίζουμε ένα πεδίο σαν πρωτεύον κλειδί με στόχο να διασφαλίσουμε ότι δε θα εισάγονται διπλότυπες τιμές στη βάση δεδομένων. Για παράδειγμα σε ένα πίνακα με στοιχεία πελατών μπορούμε να ορίσουμε σαν πρωτεύον κλειδί το πεδίο Αστυνομική Ταυτότητα, αφού δεν υπάρχουν δύο άτομα με ίδιο αριθμό Αστυνομικής ταυτότητας. Η Access μας επιτρέπει τον ορισμό περισσοτέρων του ενός πεδίων σαν πρωτεύον κλειδί, με σκοπό τον κατά το δυνατό καλύτερο προσδιορισμό της μοναδικότητας των εγγραφών ενός πίνακα. Ένα πεδίο που έχει καθορισθεί σαν πρωτεύον κλειδί επιτυγχάνει τα εξής : α) Η Access μας εμποδίζει να εισάγουμε διπλότυπα δεδομένα στα πεδία που έχουμε καθορίσει σαν πρωτεύον κλειδί. β) Η Access δημιουργεί ευρετήριο για τα πεδία που έχουμε καθορίσει σαν πρωτεύον κλειδί. Το ευρετήριο επιταχύνει τις διαδικασίες αναζήτησης και ταξινόμησης με βάση τα πεδία του πρωτεύοντος κλειδιού. γ) Σε προβολή Φύλλου δεδομένων, η Access εμφανίζει τα δεδομένα με τη σειρά την οποία υπαγορεύει το πεδίο πρωτεύοντος κλειδιού. Για να δημιουργήσουμε ένα πρωτεύον κλειδί στην προβολή σχεδίασης του πίνακα, τοποθετούμε τον δείκτη του ποντικιού στον επιλογέα εγγραφής του πεδίου που θέλουμε να ορίσουμε σαν πρωτεύον κλειδί (αν θέλουμε περισσότερα του ενός πεδία πρωτεύοντος κλειδιού κρατώντας το Ctrl πατημένο επιλέγουμε τα πεδία) και κάνουμε κλικ. Στη συνέχεια από το μενού Επεξεργασία επιλέγουμε Πρωτεύον Κλειδί ή κάνουμε κλικ στο αντίστοιχο κουμπί της γραμμής εργαλείων. 41

42 Σχέσεις μεταξύ πινάκων Όταν θέλουμε να συνδέουμε μία εγγραφή ενός Πίνακα με κάποια ή κάποιες εγγραφές από κάποιον άλλο Πίνακα τότε δημιουργούμε μια Σχέση μεταξύ των δύο αυτών Πινάκων. Για να δημιουργήσουμε μια σχέση μεταξύ δυο Πινάκων πρέπει να υπάρχουν στους δύο Πίνακες δύο πεδία (από ένα σε κάθε Πίνακα) με ίδιους τύπους δεδομένων. Για να δημιουργήσουμε μία σχέση μεταξύ δύο Πινάκων επιλέγουμε το μενού Εργαλεία και από εκεί την επιλογή Σχέσεις, ή κάνουμε κλικ στο αντίστοιχο κουμπί. Στη συνέχεια επιλέγουμε τους Πίνακες (δύο ή περισσότερους) μεταξύ των οποίων θα δημιουργήσουμε τις σχέσεις. 42

43 Ξέροντας τα πεδία με βάση τα οποία θα δημιουργήσουμε τη Σχέση κάνουμε κλικ στο ένα από αυτά και το σέρνουμε στο άλλο (drag and drop). Εμφανίζεται το παράθυρο διαλόγου : Με την Ενεργοποίηση Ακεραιότητας Συσχετισμού επιλέγουμε όταν κάνουμε καταχωρήσεις στον Σχετιζόμενο Πίνακα (Παραγγελίες : στην εικόνα) η τιμή που βάζουμε στο πεδίο σύνδεσης με τον άλλο Πίνακα (Πελατολόγιο) να υπάρχει ήδη σε αυτόν στο αντίστοιχο πεδίο σύνδεσης. Στο παράδειγμα της εικόνας αν επιλέξουμε την Ενεργοποίηση Ακεραιότητας Συσχετισμού τότε ο Κωδικός Αγοραστή που εισάγουμε στον Πίνακα Παραγγελιών απαιτείται να υπάρχει ήδη στον Πίνακα Πελατολόγιο. Ο τύπος συνδέσμου έχει να κάνει με την εμφάνιση σε ερωτήματα ή φόρμες των δεδομένων. Αν θεωρήσουμε ότι έχουμε δυο Πίνακες Α και Β, μας δίνονται οι εξής επιλογές: Τύπος Συνδέσμου 1. Να περιλαμβάνονται μόνο οι γραμμές όπου τα συνδεδεμένα πεδία και από τους δύο πίνακες είναι ίσα. Περιγραφή Δεν εμφανίζονται εγγραφές από τον Πίνακα Α που η τιμές τους στο πεδίο σύνδεσης δεν υπάρχουν και στο πεδίο σύνδεσης του 43

44 Πίνακα Β και το αντίστροφο. 2. Να περιλαμβάνονται όλες οι εγγραφές από τον Πίνακα Α και μόνο εκείνες από τον Πίνακα Β που έχουν την ίδια τιμή στα συνδεδεμένα πεδία. Δεν εμφανίζονται εγγραφές από τον Πίνακα Β που η τιμές τους στο πεδίο σύνδεσης δεν υπάρχουν και στο πεδίο σύνδεσης του Πίνακα Α. 3. Να περιλαμβάνονται όλες οι εγγραφές από τον Πίνακα Β και μόνο εκείνες από τον Πίνακα Α που έχουν την ίδια τιμή στα συνδεδεμένα πεδία. Δεν εμφανίζονται εγγραφές από τον Πίνακα Α που η τιμές τους στο πεδίο σύνδεσης δεν υπάρχουν και στο πεδίο σύνδεσης του Πίνακα Β Ερωτήματα στην Ms Access Ένα Ερώτημα εξάγει και εμφανίζει δεδομένα (εγγραφές) από έναν ή περισσότερους πίνακες βασιζόμενο σε κριτήρια τα οποία παρέχει ο χρήστης Τύποι Ερωτημάτων Η Access διαθέτει τους εξής τύπους ερωτημάτων : α) Ερωτήματα Εύρεσης Διπλοτύπων β) Ερωτήματα Επιλογής γ) Ερωτήματα Διασταύρωσης δ) Ερωτήματα Εύρεσης Αταίριαστων Ερωτήματα Εύρεσης Διπλοτύπων Αυτό είναι ένα ερώτημα εύρεσης εγγραφών με διπλότυπες τιμές πεδίων σε ένα πίνακα. Για να δημιουργήσουμε ένα τέτοιο ερώτημα επιλέγουμε Δημιουργία (από την καρτέλα Ερωτήματα), και στη συνέχεια τον Οδηγό Εύρεσης Διπλοτύπων. Έπειτα επιλέγουμε στη σειρά τον Πίνακα και κατόπιν το πεδίο ή τα πεδία στα οποία θέλουμε να κάνουμε έλεγχο για διπλότυπες τιμές. Στη συνέχεια επιλέγουμε ποια πεδία θα εμφανίζονται κατά την εκτέλεση του ερωτήματος μαζί με τα υπό έλεγχο πεδία που έχουμε ήδη επιλέξει Ερωτήματα Επιλογής Τα ερωτήματα επιλογής επιλέγουν μόνο συγκεκριμένες εγγραφές από την βάση δεδομένων, ανάλογα με τις παραμέτρους που καθορίζει ο χρήστης. Για να 44

45 δημιουργήσουμε ένα τέτοιο ερώτημα επιλέγουμε Δημιουργία (από την καρτέλα Ερωτήματα), και στη συνέχεια την Προβολή Σχεδίασης. Κατόπιν επιλέγουμε τον Πίνακα από τον οποίο θα εξάγουμε τα δεδομένα μας. Η Access μας εμφανίζει το παράθυρο Ερωτήματος Επιλογής. Όταν δημιουργούμε ένα ερώτημα στην Access πρέπει να καθορίζουμε ποια πεδία ενός Πίνακα θέλουμε να εμφανίζονται. Έτσι στο παράθυρο Ερωτήματος Επιλογής και ενώ ο δρομέας αναβοσβήνει στο πλαίσιο Πεδίο κάνουμε κλικ στο πρώτο πεδίο που θέλουμε να εμφανίζεται στο ερώτημα, και το 'σέρνουμε' στο πλαίσιο πεδίο ή κάνοντας κλικ στο βελάκι που εμφανίζεται στο πλαίσιο πεδίο το επιλέγουμε. Με τον ίδιο τρόπο επιλέγουμε και τα υπόλοιπα πεδία που θα εμφανίζονται στο ερώτημα μας. Για κάθε ένα από τα πεδία αυτά μπορούμε να ζητήσουμε να γίνει Ταξινόμηση σε αύξουσα ή φθίνουσα σειρά με βάση το πεδίο που εμείς θα ζητήσουμε. Επίσης τσεκάροντας το πλαίσιο Εμφάνιση επιλέγουμε αν ένα πεδίο θα εμφανίζεται κατά την εκτέλεση του ερωτήματος (μπορεί να συμμετέχει στο ερώτημα, αλλά να μην εμφανίζεται στα αποτελέσματα). Στα Κριτήρια μπορούμε να δώσουμε μία τιμή ζητώντας ουσιαστικά από το ερώτημα την εμφάνιση στα αποτελέσματα μόνο εκείνων των εγγραφών που οι τιμή που θέσαμε στα κριτήρια ενός πεδίου υπάρχει στο αντίστοιχο πεδίο των εγγραφών αυτών. Έτσι ουσιαστικά ζητάμε ένα Ακριβές Ταίριασμα Χαρακτήρες Μπαλαντέρ και Λογικοί Τελεστές Η Access σας παρέχει τη δυνατότητα κατασκευής εκφράσεων σαν κριτήρια αναζήτησης. Αυτό είναι χρήσιμο για παράδειγμα αν δεν θυμάστε επ' ακριβώς την ορθογραφία για κάποια τιμή ενός πεδίου ή αν θέλετε να εξάγετε εγγραφών με κομμάτι τιμής (π.χ. επίθετα που ξεκινούν από Παπα ) κοινό. Ο παρακάτω πίνακας μας δίνει παραδείγματα χρήσης των χαρακτήρων Μπαλαντέρ. 45

46 Παράδειγμα Εξήγηση Βρίσκει *πουλος Οποιουσδήποτε χαρακτήρες πριν την κατάληξη πουλος Παπαδόπουλος, Σωτηρόπουλος κ.ο.κ. Με* Οποιουσδήποτε χαρακτήρες μετά το Μελετίου, Μεντή κ.ο.κ. Με Ιωάνν?? Οποιουσδήποτε δύο χαρακτήρες στη συγκεκριμένη θέση μέσα στη λέξη Ιωάννου, Ιωάννης?όπος Οποιονδήποτε χαρακτήρα στη Τόπος, Κόπος κ.ο.κ. συγκεκριμένη θέση #49 Οποιοδήποτε στοιχείο στη 149, 249, 349, 449 κ.ο.κ. συγκεκριμένη θέση 4#6 Οποιοδήποτε ψηφίο στη συγκεκριμένη θέση 406, 416, 426, 436 κ.ο.κ. Χρ[ήώ]μα Οποιονδήποτε χαρακτήρα που Χρήμα, Χρώμα περιλαμβάνεται στις αγκύλες στη συγκεκριμένη θέση Κρ[!άέ]μα Οποιονδήποτε χαρακτήρα εκτός από Κρίμα, αλλά όχι Κράμα αυτούς που περιλαμβάνονται στις και Κρέμα αγκύλες στη συγκεκριμένη θέση Κρ[ά-έ]μα Οποιονδήποτε χαρακτήρα ο οποίος εμπίπτει μεταξύ αυτών που περιλαμβάνονται στις αγκύλες στη συγκεκριμένη θέση Κράμα και Κρέμα, αλλά όχι Κρίμα <Τ Οποιαδήποτε λέξη που αλφαβητικά είναι μικρότερη του Τ Γιώργος, Κώστας, αλλά όχι Χρήστος >1/2/97 Οποιαδήποτε ημερομηνία μετά την 3/9/97 αλλά όχι 3/9/96 1/2/97 <Κ> Οτιδήποτε εκτός από Κ Γιώργος, αλλά όχι Κ Between Ε and Κ Οποιαδήποτε λέξη ή γράμμα μεταξύ Ιωάννης, αλλά όχι (αλφαβητικά) του Ε και του Κ, Λευτέρης συμπεριλαμβανομένων του Ε και του Κ Null Κενό πεδίο Οποιοδήποτε κενό πεδίο, αλλά όχι ένα πεδίο με κενό διάστημα 46

47 Ερωτήματα Διασταύρωσης Τα ερωτήματα Διασταύρωσης εμφανίζουν τιμές ενός πεδίου αφού πρώτα τις συνοψίσουν (αθροίζουν, μετρούν, βρίσκουν μέσο όρο, βρίσκουν μικρότερη ή μεγαλύτερη τιμή κ.λπ.) και τις ομαδοποιούν με βάση κάποια κριτήρια που εμείς θέτουμε. Για να δημιουργήσουμε ένα Ερώτημα Διασταύρωσης επιλέγουμε Δημιουργία (από την καρτέλα Ερωτήματα) και στη συνέχεια τον Οδηγό Ερωτημάτων Διασταύρωσης. Στη συνέχεια επιλέγουμε τον Πίνακα από τον οποίο θα προέλθει το ερώτημά μας. Έπειτα, στην ερώτηση, ποιες τιμές πεδίων θέλετε ως κεφαλίδες σειρών, απαντάμε επιλέγοντας έως και τρία πεδία (κριτήρια) με βάση τα οποία θα γίνει η ομαδοποίηση των εγγράφων, ενώ στην ερώτηση ποιες τιμές του πεδίου θέλετε ως κεφαλίδες στήλης, απαντάμε επιλέγοντας ένα τρία πεδία (κριτήρια) με βάση το οποίο θα γίνει η ομαδοποίηση σε στήλες. Π.χ. σε ένα Πίνακα παραγγελιών, ο πελάτης ή ο κωδικός του, μπορεί να αποτελεί κεφαλίδα γραμμής, ενώ το προϊόν ή ο κωδικός του, κεφαλίδα στήλης Φόρμες στην Ms Access Η πινακοειδής μορφή του φύλλου δεδομένων της Access είναι μόνο ένας τρόπος για να βλέπουμε τα δεδομένα μας. Ένας ευκολότερος τρόπος για να βλέπουμε, να εισάγουμε ή να τροποποιούμε δεδομένα είναι με τη χρήση Φορμών Δημιουργία Απλής Φόρμας Για να δημιουργήσουμε μια απλή φόρμα κάνουμε τα εξής: Από την καρτέλα φόρμες επιλέγουμε Δημιουργία και στη συνέχεια τον Οδηγό Φορμών. Έπειτα επιλέγουμε τον πίνακα ή το ερώτημα προέλευσης των δεδομένων της φόρμας. Στη συνέχεια επιλέγουμε τα πεδία που θα εμφανίζονται στην φόρμα και τη διάταξη της φόρμας. Υπάρχουν δύο διατάξεις που μπορούμε να ακολουθήσουμε: α) Οι φόρμες σε μορφή Πίνακα 47

48 β) Οι φόρμες μιας στήλης Αφού επιλέξουμε τη διάταξη επιλέγουμε το στυλ και στη συνέχεια τον Τίτλο της φόρμας Άνοιγμα Φόρμας Όταν ανοίγουμε μία φόρμα έχουμε τη δυνατότητα να βλέπουμε, να εισάγουμε ή να τροποποιούμε δεδομένα. Εμφανίζεται στο κάτω μέρος της φόρμας η εξής γραμμή: Έτσι μετακινούμαστε στις εγγραφές από τα αντίστοιχα κουμπιά με τα βελάκια για να δούμε ή να τροποποιήσουμε τις εγγραφές μας ή δημιουργούμε μια κενή εγγραφή για καταχώρηση νέων δεδομένων 48

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

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

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

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

ΔΕΔΟΜΕΝΑ ΚΑΙ ΠΛΗΡΟΦΟΡΙΕΣ ΔΕΔΟΜΕΝΑ ΚΑΙ ΠΛΗΡΟΦΟΡΙΕΣ Δεδομένα (data) είναι μια παράσταση, όπως γράμματα, αριθμοί, σύμβολα κ.ά. στα οποία μπορούμε να δώσουμε κάποια σημασία (έννοια). Πληροφορία (information) είναι η σημασία που δίνουμε

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

Η Θεωρία των Βάσεων Δεδομένων

Η Θεωρία των Βάσεων Δεδομένων Εισαγωγή στις Βάσεις Δεδομένων Η Θεωρία των Βάσεων Δεδομένων Η αλματώδης ανάπτυξη της επιστήμης της πληροφορικής και των επικοινωνιών τα τελευταία χρόνια έχει καταστήσει την πληροφορία ως ένα από τα βασικότερα

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

ΕΥΡΕΣΗ ΠΡΟΫΠΗΡΕΣΙΑΣ ΩΡΟΜΗΣΘΙΩΝ ΚΑΘΗΓΗΤΩΝ, ΜΕ ΤΗΝ ΧΡΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ

ΕΥΡΕΣΗ ΠΡΟΫΠΗΡΕΣΙΑΣ ΩΡΟΜΗΣΘΙΩΝ ΚΑΘΗΓΗΤΩΝ, ΜΕ ΤΗΝ ΧΡΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ Α.Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΥΡΕΣΗ ΠΡΟΫΠΗΡΕΣΙΑΣ ΩΡΟΜΗΣΘΙΩΝ ΚΑΘΗΓΗΤΩΝ, ΜΕ ΤΗΝ ΧΡΗΣΗ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ ΠΑΡΙΣΙΔΗΣ ΙΩΑΝΝΗΣ (ΑΕΜ 561) ΝΟΕΜΒΡΙΟΣ 2010 ΕΠΟΠΤΗΣ ΚΑΘΗΓΗΤΗΣ

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΙΣΑΓΩΓΗ

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

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

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

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

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

Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων. Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ

Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων. Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ Χρήστες ΣΔΒΔ Απλοί Χρήστες: συγκεκριμένες λειτουργίες σε

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

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

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

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

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ. PhytoKaryon: Μία κυτταρολογική βάση δεδομένων των φυτών της Ευρώπης και της Μεσογείου Αξιοποίηση και παρουσίαση δεδομένων.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ. PhytoKaryon: Μία κυτταρολογική βάση δεδομένων των φυτών της Ευρώπης και της Μεσογείου Αξιοποίηση και παρουσίαση δεδομένων. ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΗΛΕΚΤΡΟΝΙΚΗ ΚΑΙ ΕΠΕΞΕΡΓΑΣΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ PhytoKaryon: Μία κυτταρολογική βάση δεδομένων των φυτών

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

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

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

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

Εργαστηριακές Ασκήσεις Σελίδα 1

Εργαστηριακές Ασκήσεις Σελίδα 1 Άσκηση 3 η : Δημιουργία ΒΔ που αποτελείται από δυο πίνακες με υλοποίηση συσχέτισης τύπου «1 προς Ν» και σχεδίαση διάταξης φόρμας-υποφόρμας προβολής και καταχώρησης δεδομένων. 1. χεδίαση και δημιουργία

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

ΠΕΛΑΤΗΣ ΠΑΡΑΓΓΕΛΙΑ ΠΡΟΪΟΝ

ΠΕΛΑΤΗΣ ΠΑΡΑΓΓΕΛΙΑ ΠΡΟΪΟΝ ΤΕΙ ΑΘΗΝΩΝ ΣΧΟΛΗ Σ Ο ΤΜΗΜΑ ΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2009-2010 Η/Υ ΙΙΙ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ (Θεωρία) ΜΑΘΗΜΑ 2ο Σχεσιακό µοντέλο (E-R model), ιάγραµµα οντοτήτων συσχετίσεων (E-R diagram), Σχεσιακό

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

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

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

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

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

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

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

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

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

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

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

Βάσεις Δεδομένων Εισαγωγή Βάσεις Δεδομένων Εισαγωγή Σκοποί ενότητας Εκμάθηση Συστημάτων Διαχείρισης Βάσεων Δεδομένων Δημιουργία E-R διαγραμμάτων 2 Περιεχόμενα ενότητας Συστήματα Διαχείρισης Βάσεων Δεδομένων Διάγραμμα οντοτήτων

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

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

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

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

Κεφάλαιο 4 Σχεδίαση Βάσεων Δεδομένων

Κεφάλαιο 4 Σχεδίαση Βάσεων Δεδομένων Βάσεις Δεδομένων Επαγγελματικού Λυκείου Κεφάλαιο 4 Σχεδίαση Βάσεων Δεδομένων Εισηγητής Δελησταύρου Κωνσταντίνος Καθηγητής Πληροφορικής ΠΕ20 Μηχανικός Πληροφορικής Τ.Ε. M.Sc. στα Συστήματα Υπολογιστών Περιεχόμενα

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

Information Technology for Business

Information Technology for Business Information Technology for Business! Lecturer: N. Kyritsis, MBA, Ph.D. Candidate!! e-mail: kyritsis@ist.edu.gr Διαχείριση Επιχειρηματικών Δεδομένων - Databases Ορισμός Βάσης Δεδομένων Συλλογή συναφών αρχείων

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

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Διαχείρισης Βάσεων Δεδομένων

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Διαχείρισης Βάσεων Δεδομένων ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Συστήματα Διαχείρισης Βάσεων Δεδομένων 1 ΕΙΣΑΓΩΓΗ Η τεχνολογία των Βάσεων Δεδομένων (ΒΔ) (Databases - DB) και των Συστημάτων Διαχείρισης Βάσεων Δεδομένων (ΣΔΒΔ)

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

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

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

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

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

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

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

1

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

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

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

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

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

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

Εισαγωγή στην Πληροφορική Εισαγωγή στην Πληροφορική Βάσεις Δεδομένων ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Συντήρησης Πολιτισμικής Κληρονομιάς Τι είναι οι Βάσεις Δεδομένων; Σύστημα για αποθήκευση, μετάδοση

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

ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ. Πετρογεωργάκης Μανούσος Σπυρόπουλος Σταύρος

ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ. Πετρογεωργάκης Μανούσος Σπυρόπουλος Σταύρος ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ Πετρογεωργάκης Μανούσος Σπυρόπουλος Σταύρος ΣΚΟΠΟΣ ΕΡΓΑΣΙΑΣ Σκοπός της εργασίας αυτής είναι η εισαγωγή στις Βάσεων εδομένων. Θα παρουσιαστούν οι βασικές έννοιες, οι συνιστώσες και οι λειτουργίες

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

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

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Τρόπος Διεξαγωγής #1 Ύλη (4 Ενότητες) 1. Ανάλυση Απαιτήσεων - Σχεδιασμός Βάσης Δεδομένων 2. Δημιουργία βάσης a)

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

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών Τι είναι Πληροφοριακό Σύστημα και Βάση Δεδομένων Πληροφοριακό σύστημα Είναι το σύστημα, που επεξεργάζεται εισόδους, συντηρεί αρχεία και παράγει πληροφορίες κάθε μορφής. Είναι ο συνεκτικός κρίκος των υποσυστημάτων

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

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

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

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

ΜοντέλοΟντοτήτωνΣυσχετίσεων & ΔιάγραμμαΟντοτήτων Συσχετίσεων. Μοντέλο Οντοτήτων Συσχετίσεων

ΜοντέλοΟντοτήτωνΣυσχετίσεων & ΔιάγραμμαΟντοτήτων Συσχετίσεων. Μοντέλο Οντοτήτων Συσχετίσεων ΜοντέλοΟντοτήτωνΣυσχετίσεων & ΔιάγραμμαΟντοτήτων Συσχετίσεων Μοντέλο Οντοτήτων Συσχετίσεων Το Μοντέλο Οντοτήτων-Συσχετίσεων βασίζεται στην αντίληψη ότι ο πραγματικός κόσμος αποτελείται από οντότητες (entities)

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

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

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

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

Βάσεις εδομένων ΘΕΜΑ ΕΡΓΑΣΙΑΣ. Μέρμηγκας Αλέξανδρος Α.Μ. 30000. ιαχείρηση Πληροφοριακών Συστηματών

Βάσεις εδομένων ΘΕΜΑ ΕΡΓΑΣΙΑΣ. Μέρμηγκας Αλέξανδρος Α.Μ. 30000. ιαχείρηση Πληροφοριακών Συστηματών TMHMA ΑΥΤΟΜΑΤΙΣΜΟΥ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ Τ.Ε.Ι. ΠΕΙΡΑΙΩΣ ΘΕΜΑ ΕΡΓΑΣΙΑΣ Βάσεις εδομένων Μέρμηγκας Αλέξανδρος Α.Μ. 30000 Βάση εδομένων Βάση δεδομένων είναι μια οργανωμένη συλλογή αλληλοσυσχετιζόμενων

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

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

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

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

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

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

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

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

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

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

Βάσεις δεδομένων και Microsoft Access

Βάσεις δεδομένων και Microsoft Access Περιεχόμενα Κεφάλαιο 1 Βάσεις δεδομένων και Microsoft Access... 7 Κεφάλαιο 2 Microsoft Access 2010... 16 Κεφάλαιο 3 Σχεδιασμός βάσης δεδομένων και δημιουργία πίνακα... 27 Κεφάλαιο 4 Προβολές πινάκων και

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

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

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

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

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

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

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

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub

Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub Κεφάλαιο 5. Δημιουργία φορμών για τη βάση δεδομένων DVDclub Σύνοψη Σ αυτό το κεφάλαιο θα περιγράψουμε τη δημιουργία φορμών, προκειμένου να εισάγουμε δεδομένα και να εμφανίζουμε στοιχεία από τους πίνακες

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

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

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

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ ΚΑΙ ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗΣ ΜΕΤΟΧΙΑΝΑΚΗ ΙΩΑΝΝΑ ΑΜ:6725 ΠΛΗΡΟΦΟΡΙΑΚΟ ΣΥΣΤΗΜΑ ΓΙΑ ΑΛΥΣΙΔΑ SUPERMARKET ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων:

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

Παιδαγωγικό Τµηµα ηµοτικής Επαίδευσης Εργαστήριο Βάσεις εδοµένων (Ε03Π05) Σ.Αναγνωστάκης 1

Παιδαγωγικό Τµηµα ηµοτικής Επαίδευσης Εργαστήριο Βάσεις εδοµένων (Ε03Π05) Σ.Αναγνωστάκης 1 Σ.Αναγνωστάκης 1 Η Θεωρία των Βάσεων εδοµένων...7 Εισαγωγή στις Βάσεις εδοµένων...7 Τα εδοµένα και οι Πληροφορίες...7 Η Οργάνωση Αρχείων...8 Προβλήµατα της Οργάνωσης Αρχείων... 10 Οι Βάσεις εδοµένων και

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

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

Εισαγωγή στις βασικές έννοιες των Βάσεων Δεδομένων Εισαγωγή στις βασικές έννοιες των Βάσεων Δεδομένων Σχεδιασμός Βάσεων Δεδομένων Μάθημα 1 ο Μαρία Χαλκίδη ΠΕΡΙΕΧΟΜΕΝΑ ΜΑΘΗΜΑΤΟΣ Σχεσιακό Μοντέλο Κανονικοποίηση Μοντέλο Οντοτήτων-Σχέσεων Κύκλος ζωής Βάσεων

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

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

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

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

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων ..?????? Εργαστήριο ΒΑΣΕΙΣ????????? ΔΕΔΟΜΕΝΩΝ Βάσεων Δεδομένων?? ΙΙ Εισαγωγικό Μάθημα Βασικές Έννοιες - . Γενικά Τρόπος Διεξαγωγής Ορισμός: Βάση Δεδομένων (ΒΔ) είναι μια συλλογή από σχετιζόμενα αντικείμενα

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

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

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

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

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

Εισαγωγή στα Συστήματα Βάσεων Δεδομένων. Βάσεις Δεδομένων 2014-2015 Ευαγγελία Πιτουρά 1 Εισαγωγή στα Συστήματα Βάσεων Δεδομένων Ευαγγελία Πιτουρά 1 Τι θα δούμε σήμερα I. Σύντομη εισαγωγή στις ΒΔ II. Περιγραφή σκοπού και περιεχομένου μαθήματος III. Ιστορία των ΣΔΒΔ IV. Διαδικαστικά θέματα

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

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

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Τρόπος Διεξαγωγής #1 Ύλη (4 Ενότητες) 1. Ανάλυση Απαιτήσεων -Σχεδιασμός Βάσης Δεδομένων 2. Δημιουργία βάσης a) Create

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

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

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

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

Database System Concepts and Architecture (Αρχιτεκτονική, οµές, και Μοντέλα)

Database System Concepts and Architecture (Αρχιτεκτονική, οµές, και Μοντέλα) Database System Concepts and Architecture (Αρχιτεκτονική, οµές, και Μοντέλα) Μοντέλα, οµές (Σχήµα) και Αντιπρόσωποι (Data Models, Schema, and Instances) DBMS αρχιτεκτονική ιάφοροι τύποι γλωσσών και διεπαφές

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

Βάσεις δεδομένων. Δημιουργία και διαχείριση βάσης δεδομένων

Βάσεις δεδομένων. Δημιουργία και διαχείριση βάσης δεδομένων Βάσεις δεδομένων Δημιουργία και διαχείριση βάσης δεδομένων Περιεχόμενα Βάσεις δεδομένων Πίνακες Σχέσεις (...παρακάτω...) Ερωτήματα Φόρμες Εκθέσεις Δημιουργία και διαχείριση βάσης δεδομένων Βάσεις Δεδομένων

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

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

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

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

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

Έννοιες Διαχείρισης Βάσεων Δεδομένων και Αρχιτεκτονική Έννοιες Διαχείρισης Βάσεων Δεδομένων και Αρχιτεκτονική Αρχιτεκτονική ANSI-SPARC, Επίπεδα Αρχιτεκτονικής (Εξωτερικό, Εννοιολογικό, Εσωτερικό), Παραδοσιακή Προσέγγιση (Μειονεκτήματα, Παράδειγμα), Προσέγγιση

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

Βάσεις Δεδομένων Ενότητα 3

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

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

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

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

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

Στόχοι και αντικείμενο ενότητας

Στόχοι και αντικείμενο ενότητας Ενότητα 8 Διαχείριση Δεδομένων Πληροφοριακά Συστήματα Διοίκησης Ι Διδάσκων: Νίκος Καρακαπιλίδης 8-1 Στόχοι και αντικείμενο ενότητας Παραδοσιακή οργάνωση αρχείων και προβλήματα Συστήματα Διαχείρισης Βάσεως

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

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

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

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

Δείχτες Επιτυχίας και Δείχτες Επάρκειας

Δείχτες Επιτυχίας και Δείχτες Επάρκειας Δείχτες Επιτυχίας και Δείχτες Επάρκειας Γ Τάξη Θεματικές Περιοχές: 1. Βασικές έννοιες της Πληροφορικής και της Επιστήμης Ηλεκτρονικών Υπολογιστών 2. Υλικό / Αρχιτεκτονική Ηλεκτρονικού Υπολογιστή 3. Λειτουργικά

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

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

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων Βάσεις Δεδομένων - Γενικά Ορισμός: Βάση Δεδομένων (ΒΔ) είναι μια συλλογή από σχετιζόμενα αντικείμενα. Τα περιεχόμενα

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

µπιτ Λύση: Κάθε οµάδα των τεσσάρων µπιτ µεταφράζεται σε ένα δεκαεξαδικό ψηφίο 1100 C 1110 E Άρα το δεκαεξαδικό ισοδύναµο είναι CE2

µπιτ Λύση: Κάθε οµάδα των τεσσάρων µπιτ µεταφράζεται σε ένα δεκαεξαδικό ψηφίο 1100 C 1110 E Άρα το δεκαεξαδικό ισοδύναµο είναι CE2 ! Βρείτε το δεκαεξαδικό ισοδύναµο του σχήµατος µπιτ 110011100010 Λύση: Κάθε οµάδα των τεσσάρων µπιτ µεταφράζεται σε ένα δεκαεξαδικό ψηφίο 1100 C 1110 E 0010 2 Άρα το δεκαεξαδικό ισοδύναµο είναι CE2 2 !

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

Τίτλος: Σύστηµα ιαχείρισης Ηλεκτρονικής Αποθήκης για την Ελληνική Αστυνοµία

Τίτλος: Σύστηµα ιαχείρισης Ηλεκτρονικής Αποθήκης για την Ελληνική Αστυνοµία ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΚΡΗΤΗΣ Σχολή Τεχνολογικών Εφαρµογών Τµήµα Εφαρµοσµένης Πληροφορικής & Πολυµέσων Πτυχιακή εργασία Τίτλος: Σύστηµα ιαχείρισης Ηλεκτρονικής Αποθήκης για την Ελληνική Αστυνοµία

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

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

Σχεδιασμός Βάσεων Δεδομένων Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Σχεδιασμός Βάσεων Δεδομένων Εργαστήριο 1 Δρ. Βασιλική Κούφη Περιεχόμενα 1. Εισαγωγή 2. Κύκλος ζωής ανάπτυξης Βάσεως Δεδομένων 3. Oracle SQL Developer Data

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

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

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

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

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων .. Εργαστήριο Βάσεων Δεδομένων Εισαγωγικό Μάθημα Βασικές Έννοιες - . Ύλη Εργαστηρίου ΒΔ Ύλη - 4 Ενότητες.1 - Σχεδιασμός Βάσης Δεδομένων.2 Δημιουργία Βάσης Δεδομένων Δημιουργία Πινάκων Εισαγωγή/Ανανέωση/Διαγραφή

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

Διαδικασία σχεδιασμού Β.Δ.

Διαδικασία σχεδιασμού Β.Δ. Διαδικασία σχεδιασμού Β.Δ. Σε παλαιότερα μαθήματα είπαμε ότι πριν κατασκευάσουμε κάτι θα πρέπει πρώτα να το σχεδιάσουμε. Το ίδιο ισχύει και για μια Β.Δ.. Σε αυτή την ενότητα θα περιγράψουμε λίγο πιο αναλυτικά

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

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

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

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

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

Βάσεις Δεδομένων (Database) Αλεξάνδρειο Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλονίκης ΑΤΕΙ-Θ Τμήμα Τεχνολογίας Τροφίμων 2016 Βάσεις Δεδομένων (Database) Δρ Παρασκευή Μεντζέλου (Computer Science) Βάση Δεδομένων (Database) Μια Βάση

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Μοντέλο Οντοτήτων-Συσχετίσεων Μοντέλο Οντοτήτων-Συσχετίσεων 1 Εισαγωγή Σχεδιασμός μιας εφαρμογής ΒΔ: Βήματα 1. Συλλογή και Ανάλυση Απαιτήσεων (requirement analysis) Τι δεδομένα θα αποθηκευτούν, ποιες εφαρμογές θα κτιστούν πάνω στα

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

Δεδομένα και Πληροφορίες

Δεδομένα και Πληροφορίες Εισαγωγή Δεδομένα και Πληροφορίες, Βάση Δεδομένων, Σύστημα Διαχείρισης Βάσεων Δεδομένων (Ορισμοί, Γλώσσες & Διεπαφές, Κατηγορίες), Σύστημα Βάσης Δεδομένων, Κατάλογος Δεδομένων Μεταδεδομένα, Λειτουργική

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

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

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

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

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

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

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

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

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

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

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

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

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

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

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

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

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

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

Σχεσιακό Μοντέλο. Σχεδιασμός Βάσεων Δεδομένων Μάθημα 2 ο Μαρία Χαλκίδη

Σχεσιακό Μοντέλο. Σχεδιασμός Βάσεων Δεδομένων Μάθημα 2 ο Μαρία Χαλκίδη Σχεσιακό Μοντέλο Σχεδιασμός Βάσεων Δεδομένων Μάθημα 2 ο Μαρία Χαλκίδη Εισαγωγή Το σχεσιακό μοντέλο δεδομένων (relational data model) προτάθηκε από τον E. F. Codd το 1970 Aποτελεί ένα μέσο λογικής δόμησης

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

Το Σχεσιακό Μοντέλο Βάσεων Δεδομένων

Το Σχεσιακό Μοντέλο Βάσεων Δεδομένων Το Σχεσιακό Μοντέλο Βάσεων Δεδομένων Βασικοί κανόνες σχεσιακού μοντέλου Η κάθε οντότητα πρέπει να παριστάνεται ως ένας ξεχωριστός πίνακας. Η κάθε στήλη του πίνακα αντιστοιχεί σε μια ιδιότητα της οντότητας.

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

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

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

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS Ακαδημαϊκό Έτος 2016-2017, Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS A. Εισαγωγή στις βάσεις δεδομένων - Γνωριμία με την ACCESS B. Δημιουργία Πινάκων 1. Εξήγηση των

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

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

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

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

Πεδία (Attributes) Συσχετίσεις (Relationships) Κλειδιά (Identifiers) Οντότητες είναι υποψήφια αρχεία

Πεδία (Attributes) Συσχετίσεις (Relationships) Κλειδιά (Identifiers) Οντότητες είναι υποψήφια αρχεία Λογικός σχεδιασμός Αρχείων Το μοντέλο οντοτήτων Οντότητες (Entities) Πεδία (Attributes) Συσχετίσεις (Relationships) Κλειδιά (Identifiers) Οντότητες είναι υποψήφια αρχεία Τι είναι Οντότητες Είναι συλλογή

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

Σχεδίαση Σχεσιακών ΒΔ

Σχεδίαση Σχεσιακών ΒΔ Σχεδίαση Σχεσιακών ΒΔ Εισαγωγή: Μοντελοποίηση, Σχεδιασμός και Ανάπτυξη Βάσεων Δεδομένων Σχεδιασμός ΒΔ Εννοιολογικός σχεδιασμός το Μοντέλο Οντοτήτων Συσχετίσεων (Entity Relationship Model) Λογικός σχεδιασμός

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

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

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

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

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

ΗΥ 360 Αρχεία και Βάσεις Δεδομένων ΗΥ 360 Αρχεία και Βάσεις Δεδομένων Web site: http://www.csd.uch.gr/~hy360 Mailing list: hy360-list@csd.uoc.gr E-mail: hy360@csd.uoc.gr Καθηγητής Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης E-mail:

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

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

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

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

1.1. Βάσεις δεδομένων

1.1. Βάσεις δεδομένων 1.1 Βάσεις δεδομένων Οι στόχοι μας σε αυτό το κεφάλαιο: Να διατυπώσουμε τον ορισμό για τη βάση δεδομένων και για το σύστημα διαχείρισης βάσεων δεδομένων (ΣΔΒΔ), καθώς και να περιγράψουμε τα συστατικά στοιχεία

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

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

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

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

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

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

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

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

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

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

Διαχείριση Δεδομένων

Διαχείριση Δεδομένων Διαχείριση Δεδομένων Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου 1 Εαρινό Εξάμηνο 2012-13 Περιεχόμενο σημερινής διάλεξης Βάσεις Δεδομένων Ορισμοί Παραδείγματα

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

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

Σχεδίαση Βάσεων Δεδομένων Σχεδίαση Βάσεων Δεδομένων Βασική Χαρτογράφηση: Η Διαδικασία Μετασχηματισμού Basic Mapping: The Transformation Process 1 Copyright 2013, Oracle and/or its affiliates. All rights reserved. Στόχοι Το μάθημα

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

Σύγχρονες Εφαρμογές Τεχνολογιών της Πληροφορίας και των Επικοινωνιών

Σύγχρονες Εφαρμογές Τεχνολογιών της Πληροφορίας και των Επικοινωνιών Σύγχρονες Εφαρμογές Τεχνολογιών της Πληροφορίας και των Επικοινωνιών Ενότητα 6: Εισαγωγή στις σχεσιακές βάσεις δεδομένων Διδάσκων: Νικόλαος Τσέλιος Τμήμα Επιστημών της Εκπαίδευσης και της Αγωγής στην Προσχολική

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

Μοντέλο Οντοτήτων-Συσχετίσεων. Η ανάγκη Διαγράμματα ΟΣ Σύνολα Οντοτήτων-Συσχετίσεων Απεικονίσεις Επεκτάσεις

Μοντέλο Οντοτήτων-Συσχετίσεων. Η ανάγκη Διαγράμματα ΟΣ Σύνολα Οντοτήτων-Συσχετίσεων Απεικονίσεις Επεκτάσεις Η ανάγκη Διαγράμματα ΟΣ Σύνολα Οντοτήτων-Συσχετίσεων Απεικονίσεις Επεκτάσεις Μοντέλα Δεδομένων Μοντέλο: αφαιρετική αναπαράσταση του πραγματικού κόσμου. Μοντέλα βασισμένα σε εγγραφές (record based models)

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