ΑΣΚΗΣΗ 1 α. Με τη βοήθεια της Microsoft Access, να δημιουργήσετε βάση δεδομένων με όνομα ΕΠΩΝΥΜΟ_ΟΝΟΜΑ_ΑΜ.accdb. Να δημιουργήσετε δύο πίνακες, έναν για πελάτες (με όνομα ΠΕΛΑΤΕΣ) και έναν για παραγγελίες των πελατών αυτοί (με όνομα ΠΑΡΑΓΓΕΛΙΕΣ) με πεδία και τύπους δεδομένων που φαίνονται παρακάτω. Η στήλη ΠΕΡΙΓΡΑΦΗ, λειτουργεί επεξηγηματικά και δε χρειάζεται να χρησιμοποιηθεί στους πίνακες. ΠΕΛΑΤΕΣ ΠΕΡΙΓΡΑΦΗ (ΕΠΕΞΗΓΗΣΗ ΟΝΟΜΑ ΠΕΔΙΟΥ ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ ΠΕΔΙΩΝ) Αριθμός πελάτη ΑΡΠΕΛ Αυτόματη αρίθμηση Όνομα πελάτη ΟΝΟΜΑ Κείμενο Τηλέφωνο ΤΗΛ Κείμενο Διεύθυνση ΔΙΕΥΘΥΝΣΗ Κείμενο ΠΑΡΑΓΓΕΛΙΕΣ ΠΕΡΙΓΡΑΦΗ (ΕΠΕΞΗΓΗΣΗ ΟΝΟΜΑ ΠΕΔΙΟΥ ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ ΠΕΔΙΩΝ) Αριθμός παραγγελίας ΑΡΠΑ Αυτόματη αρίθμηση Είδος προϊόντος ΠΡΟΪΟΝ Κείμενο Ημερομηνία παραγγελίας ΗΜΠΑ Ημερομηνία με μορφή σύντομης ημερομηνίας Τιμή ΤΙΜΗ Νομισματική μονάδα Αριθμός πελάτη ΑΡΠΕΛ Αριθμός Το ΑΡΠΕΛ είναι πρωτεύον κλειδί για τον πίνακα ΠΕΛΑΤΕΣ και το ΑΡΠΑ πρωτεύον κλειδί για τον πίνακα ΠΑΡΑΓΓΕΛΙΕΣ. (1/10) β. Να εισάγετε κανόνα επικύρωσης, ώστε η τιμή του προϊόντος να είναι μη αρνητικός αριθμός. Σε περίπτωση που ο χρήστης εισάγει μη έγκυρη τιμή να εμφανίζει το μήνυμα «Η τιμή δεν μπορεί να είναι αρνητική». (1/10) γ. Ανάμεσα στους πίνακες ΠΕΛΑΤΕΣ και ΠΑΡΑΓΓΕΛΙΕΣ να ορίσετε σχέση ένα προς πολλά (ένας πελάτης μπορεί να πραγματοποιεί πολλές παραγγελίες, αλλά μια παραγγελία μπορεί να γίνει από έναν μόνο πελάτη). Να ενεργοποιήσετε την ακεραιότητα των αναφορών. (1/10) δ. Να εισάγετε στους πίνακες δικά σας δεδομένα έτσι ώστε να υπάρχουν 2 πελάτες και ο μεν πρώτος να έχει 2 παραγγελίες ενώ ο δεύτερος να έχει 3 παραγγελίες. ε. Να δημιουργήσετε ερώτημα με όνομα ΕΡΩΤΗΜΑ1, που να εμφανίζει τα ονόματα όλων των πελατών που το όνομά τους ξεκινά από Α σε φθίνουσα αλφαβητική σειρά μαζί με το τηλέφωνό τους. (1/10) στ. Να δημιουργήσετε ερώτημα με όνομα ΕΡΩΤΗΜΑ2, που να εμφανίζει το όνομα, το πλήθος των παραγγελιών και την συνολική αξία που προκύπτει από την τιμή όλων των παραγγελιών για κάθε πελάτη. (1/10) 1
ΑΣΚΗΣΗ 2 Κατασκευάστε µια βάση δεδοµένων µε όνοµα «ΠΡΩΤΑΘΛΗΜΑ_ΧΧΧΧΧ» και A. ηµιουργήστε 2 πίνακες («ΟΜΑ ΕΣ» και «ΠΑΙΚΤΕΣ») όπως φαίνονται στα B. ηµιουργήστε µια σχέση «1 προς πολλά» ανάµεσα στο πίνακα «ΟΜΑ ΕΣ» και στον πίνακα «ΠΑΙΚΤΕΣ» ενεργοποιώντας την ακεραιότητα αναφορών. Ερώτημα με όνομα «ΠΑΙΚΤΕΣ άνω των 50000» που να εμφανίζει το ονοματεπώνυμο του παίκτη την θέση του και την ομάδα στην οποία παίζει για όσους παίκτες έχουν αμοιβή άνω των 50000 ευρώ. Ερώτημα με όνομα «ΜΟ ΑΜΟΙΒΩΝ ΑΝΑ ΟΜΑΔΑ» που να εμφανίζει το όνομα κάθε ομάδας και τον μέσο όρο αμοιβών των παικτών της ομάδας από την ομάδα που αμείβει καλύτερα προς αυτή που αμείβει χειρότερα. 2
ΑΣΚΗΣΗ 3 Κατασκευάστε µια βάση δεδοµένων µε όνοµα «ΣΙΝΕΜΑ_ΧΧΧΧΧ» και Α. ηµιουργήστε 2 πίνακες («ΣΚΗΝΟΘΕΤΕΣ» και «ΤΑΙΝΙΕΣ») όπως φαίνονται στα Β. ηµιουργήστε µια σχέση «1 προς πολλά» ανάµεσα στο πίνακα «ΣΚΗΝΟΘΕΤΕΣ» και στον πίνακα «ΤΑΙΝΙΕΣ» ενεργοποιώντας την ακεραιότητα αναφορών. Ερώτημα με όνομα «ΕΠΙΤΥΧΙΕΣ 21ΟΥ ΑΙΩΝΑ» που τον τίτλο το έτος κυκλοφορίας και τις εισπράξεις για τις ταινίες μετά το 2000 με εισπράξεις άνω των 300.000. Ερώτημα με όνομα «ΕΙΣΠΡΑΞΕΙΣ ΑΝΑ ΣΚΗΝΟΘΕΤΗ» που να εμφανίζει το όνομα κάθε σκηνοθέτη, την ελάχιστη αμοιβή του, το πλήθος τον ταινιών που σκηνοθέτησε και τον μέσο όρο εισπράξεων από τις ταινίες του. 3
ΑΣΚΗΣΗ 4 Κατασκευάστε µια βάση δεδοµένων µε όνοµα «ΚΕΝΤΡΟ_ΚΛΗΣΕΩΝ_ΧΧΧΧΧ» και A. ηµιουργήστε 2 πίνακες («ΥΠΑΛΛΗΛΟΙ» και «ΚΛΗΣΕΙΣ») όπως φαίνονται στα B. ηµιουργήστε µια σχέση «1 προς πολλά» ανάµεσα στο πίνακα «ΥΠΑΛΛΗΛΟΙ» και στον πίνακα «ΚΛΗΣΕΙΣ» ενεργοποιώντας την ακεραιότητα αναφορών (συσχετιζόµενα πεδία είναι τα «ΥΠΑΛΛΗΛΟΙ.ΚΩ _ΥΠΑΛ» και «ΚΛΗΣΕΙΣ.ΚΩ _ΥΠΑΛ»). Ερώτημα με όνομα «ΚΛΗΣΕΙΣ Γ2345» που να εμφανίζει το ονοματεπώνυμο του υπαλλήλου με κωδικό «Γ2345» και όλα τα στοιχεία των κλήσεων που χειρίστηκε πλην του «ΑΑΚ» για τις κλήσεις με διάρκεια από 50 δευτερόλεπτα και άνω. Ερώτημα με όνομα «ΜΟ ΚΛΗΣΕΩΝ» που να εμφανίζει το ονοματεπώνυμο κάθε υπαλλήλου και τον μέσο όρο διάρκειας των κλήσεων που χειρίστηκε ταξινομημένα κατά ονοματεπώνυμο σε αύξουσα σειρά. 4
ΑΣΚΗΣΗ 5 Κατασκευάστε µια βάση δεδοµένων µε όνοµα «ΑΣΦΑΛΕΙΕΣ_ΧΧΧΧΧ» και Α. ηµιουργήστε 2 πίνακες («ΑΣΦΑΛΙΣΤΕΣ» και «ΣΥΜΒΟΛΑΙΑ») όπως φαίνονται στα Β. ηµιουργήστε µια σχέση «1 προς πολλά» ανάµεσα στο πίνακα «ΑΣΦΑΛΙΣΤΕΣ» και στον πίνακα «ΣΥΜΒΟΛΑΙΑ» ενεργοποιώντας την ακεραιότητα αναφορών (συσχετιζόµενα πεδία είναι τα «ΑΣΦΑΛΙΣΤΕΣ.ΚΩ _ΑΣΦ» και «ΣΥΜΒΟΛΑΙΑ.ΚΩ _ΑΣΦ»). Ερώτημα με όνομα «ΣΥΜΒΟΛΑΙΑ1» που εμφανίζει όλα τα στοιχεία από τον πίνακα «ΣΥΜΒΟΛΑΙΑ» με όνομα ασφαλιζομένου που ξεκινά από «Κ» καθώς και τα συμβόλαια με ετήσιο κόστος χαμηλότερο από 500. Ερώτημα με όνομα «ΣΥΜΒΟΛΑΙΑ2» που εμφανίζει το ονοματεπώνυμο κάθε ασφαλιστή, το άθροισμα και το μέσο όρο από το ετήσιο κόστος όλων των συμβολαίων που χειρίζεται. 5