Οδηγίες Μέρος 1: Απαντήστε κάθε ερώτηση. 1. Ποια είναι τα πλεονεκτήματα που παρέχει το Περιβάλλον Βάσεων Δεδομένων της Oracle για τις επιχειρήσεις; Το σύστημα διαχείρισης βάσεων δεδομένων της Oracle δίνει στις επιχειρήσεις την ικανότητα να συντονίσουν και να μοιραστούν υπολογιστικές εφαρμογές, δεδομένα, χώρο αποθήκευσης, ή πόρους του δικτύου σε όλους τους δυναμικά και γεωγραφικά διασκορπισμένους οργανισμούς, εξοικονομώντας έτσι χρόνο, πόρους και χρήματα. 2. Ποια είναι η διαφορά μεταξύ μιας εφαρμογής (application) και ενός λογισμικού συστήματος; Δώστε ένα παράδειγμα. Το λογισμικό συστήματος αποτελείται από προγράμματα χαμηλού-επιπέδου σχεδιασμένα για να αλληλεπιδρούν με το υλικό του υπολογιστή. Το λογισμικό εφαρμογών (application software) είναι ο κώδικας που επιτρέπει στους τελικούς χρήστες να αλληλεπιδρούν με τους υπολογιστές, όπως για παράδειγμα ο Firefox για την περιήγηση στο διαδίκτυο, το Microsoft Word για την σύνταξη εγγράφων, το Application Express για την ανάπτυξη εφαρμογών και για την διαχείριση δεδομένων σε μία Βάση Δεδομένων της Oracle. 3. Πως εξάγονται τα δεδομένα από την βάση δεδομένων; Τα δεδομένα εξάγονται από τη βάση δεομένων χρησιμοποιώντας τη δήλωση SELECT. 4. Πως επιλέγονται όλες οι σειρές σε κάποιο πίνακα; Δώστε ένα παράδειγμα. SELECT * ; 5. Πως επιλέγονται μόνο ορισμένες σειρές σε ένα πίνακα; Δώστε ένα παράδειγμα. SELECT employee_id, last_name WHERE salary < 3000; 6. Τι είναι ένα ερώτημα; Δώστε ένα παράδειγμα. Ένα ερώτημα είναι μία αναζήτηση για συγκεκριμένα δεδομένα που θα σας βοηθήσουν να πάρετε μία απόφαση. Τα παραδείγματα θα ποικίλουν. 7. Δώστε ένα παράδειγμα μιας δήλωσης. SELECT employee_id, last_name ; 8. Ποιο σύμβολο ορίζει την επιλογή όλων των στηλών σε ένα ερώτημα SQL * αστερίσκος Oracle Academy 1 Database Design
9. Ποια λέξη-κλειδί δεν εμφανίζει τα διπλότυπα και γιατί θα υπήρχε η ανάγκη για τη μη εμφάνιση διπλοτύπων; Η λέξη-κλειδί DISTINCT αποτρέπει την επανάληψη των δεδομένων. Παράδειγμα: να Καταμέτρηση των διαμερισμάτων που χρησιμοποιούνται σε μία πολυκατοικία. 10. Ποια λέξη καθορίζει τον πίνακα ή τους πίνακες που περιέχουν τις στήλες; FROM 11. Πως ξεχωρίσεις μια σειρά από μία στήλη; Μία σειρά είναι από τα αριστερά προς τα δεξιά και μία στήλη είναι από πάνω προς τα κάτω. Μία σειρά περιέχει ένα μεμονωμένο σύνολο δεδομένων και μία στήλη περιέχει μία ομάδα από ίδια δεδομένα. 12. Τι είναι ένα πεδίο της βάσης δεδομένων; Ένα πεδίο της βάσης δεδομένων είναι το σημείο στο οποίο ενώνεται μία σειρά και μία στήλη. 13. Ποια είναι η διαφορά μεταξύ μιας στήλης πρωτεύοντος και μιας στήλης δευτερεύοντος κλειδιού; Το πρωτεύον κλειδί είναι ένα μοναδικό αναγνωριστικό για κάθε σειρά. Το ξένο κλειδί είναι στήλη/ες που αναφέρεται/ονται στη/ες στήλη/ες ενός πρωτεύοντος κλειδιού σε ένα άλλο πίνακα. 14. Πως γνωρίζει η εφαρμογή της βάσης δεδομένων ποιο πίνακα να διαλέξει προκειμένου να ανακτήσει τα δεδομένα; Η λέξη FROM καθορίζει τον πίνακα. 15. Ποιες είναι οι πέντε απλές οδηγίες που μπορείτε να χρησιμοποιήσετε προκειμένου να δημιουργήσετε μία έγκυρη δήλωση SQL; Στις δηλώσεις SQL δεν γίνεται διάκριση μεταξύ πεζών και κεφαλαίων χαρακτήρων. Οι δηλώσεις SQL μπορούν να βρίσκονται σε μία ή περισσότερες γραμμές. Οι λέξεις κλειδιά δεν μπορούν να συντμηθούν ή να χωριστούν μεταξύ διάφορων γραμμών. Οι εσοχές χρησιμοποιούνται προκειμένου να διευκολυνθεί η ανάγνωση. 16. Τι είναι το ψευδώνυμο (Alias) μιας στήλης; Ένα ψευδώνυμο στήλης είναι μία νέα επικεφαλίδα/τίτλος για μια στήλη σε μία δήλωση SQL. Oracle Academy 2 Database Design
17. Ποιοι είναι οι κανόνες χρήσης ενός ψευδωνύμου στήλης; Υπάρχουν πολλοί κανόνες όταν χρησιμοποιείτε ψευδώνυμα στήλης για να μορφοποιήσετε την έξοδο. Ένα ψευδώνυμο στήλης: o Μετονομάζει την επικεφαλίδα μιας στήλης o Είναι χρήσιμο με τους υπολογισμούς o Ακολουθεί αμέσως μετά το όνομα της στήλης o Μπορεί να έχει τη προαιρετική λέξη κλειδί AS μεταξύ του ονόματος της στήλης και του ψευδωνύμου. Υπάρχει ένας ακόμα περιορισμός όταν χρησιμοποιείτε ψευδώνυμα στήλης δεν μπορείτε να τα χρησιμοποιήσετε στη ρήτρα WHERE. 18. Γιατί να χρησιμοποιήσετε ένα ψευδώνυμο στήλης; Το επιλεγμένο όνομα της στήλης χρησιμοποιείτε ως η επικεφαλίδα/τίτλος για μια στήλη σε μία δήλωση SQL. Η επικεφαλίδα αυτή (όνομα στήλης) μπορεί να μην είναι περιγραφική ή μπορεί να είναι δύσκολο να γίνει κατανοητή ή μπορεί να είναι πολύ μεγάλη, έτσι μπορείτε να αλλάξετε την επικεφαλίδα της στήλης χρησιμοποιώντας ένα ψευδώνυμο στήλης. 19. Τι είναι μια αριθμητική έκφραση; Δώστε ένα παράδειγμα. Μία αριθμητική έκφραση. salary * 3 / 7 20. Ποιοι είναι οι αριθμητικοί τελεστές (operators); Δώστε ένα παράδειγμα. Πρόσθεση, αφαίρεση, πολλαπλασιασμός, διαίρεση +, -, *, / 21. Πως επιλέγει η εφαρμογή της βάσης δεδομένων (Database Application) τι αριθμητικές πράξεις θα κάνει πρώτα; Παρενθέσεις, Εκθέτες, Πολλαπλασιασμός και Διαίρεση, Πρόσθεση και Αφαίρεση κινούμενοι από τα αριστερά προς τα δεξιά. 22. Τι παρακάμπτει τους κανόνες προτεραιότητας; Μπορείτε να παρακάμψετε τους κανόνες προτεραιότητας χρησιμοποιώντας παρενθέσεις προκειμένου να καθορίσετε την σειρά με την οποία εκτελούνται οι τελεστές. 23. Τι ακριβώς είναι μια τιμή null; Μία τιμή null είναι μία τιμή η οποία είναι μη διαθέσιμη, ανεκχώρητη, άγνωστη, ή ανεφάρμοστη. 24. Ποια είναι τα αποτελέσματα όταν χρησιμοποιείται μία τιμή null σε έναν υπολογισμό; Oracle Academy 3 Database Design
Εάν οποιαδήποτε τιμή σε μία αριθμητική έκφραση είναι null, τότε το αποτέλεσμα είναι null. 25. Εάν ένα ψευδώνυμο στήλης απαιτείται με έναν ορισμένο τρόπο, θα έπρεπε να περικλείεται από: Από προεπιλογή, οι επικεφαλίδες των ψευδωνύμων εμφανίζονται με κεφαλαία γράμματα. Εάν το ψευδώνυμο περιέχει κενά ή ειδικούς χαρακτήρες, ή κάνει διάκριση μεταξύ πεζών και κεφαλαίων χαρακτήρων, περικλείστε το ψευδώνυμο με διπλά εισαγωγικά ( ). 26. Πως λειτουργεί ο τελεστής συνένωσης (concatenation operator); Ο τελεστής συνένωσης μπορεί να συνδέσει στήλες με άλλες στήλες, αριθμητικές εκφράσεις, ή σταθερές τιμές για τη δημιουργία μίας έκφρασης χαρακτήρων. Οι στήλες σε κάθε πλευρά του τελεστή συνδυάζονται για να δημιουργήσουν μία μονή στήλη εξόδου. 27. Γράψτε και προσδιορίστε τους τέσσερεις τύπους δεδομένων; CHAR σταθερού-μήκους τιμή χαρακτήρα INT Ακέραιος VARCHAR(30) μεταβλητού-μήκους 30 χαρακτήρων DATE τιμή ημερομηνίας και ώρας 28. Όταν μία στήλη ορίζεται ως NOT NULL, τι αντιπροσωπεύει αυτό για τον προγραμματιστή της SQL; Το NOT NULL δείχνει ότι μία στήλη πρέπει να περιέχει δεδομένα. 29. Δημιουργήστε ένα ερώτημα για να δείξετε το επίθετο, το id της δουλειάς, την ημερομηνία πρόσληψης και τον αριθμό εργαζομένου για κάθε εργαζόμενο. SELECT employee_id, last_name, job_id, hire_date ; Oracle Academy 4 Database Design
Οδηγίες Μέρος 2: Απαντήστε κάθε ερώτηση 1. Τι είναι μια προϋπόθεση; Μία πρόταση στην οποία βασίζεται μία άλλη πρόταση αποτελείται από ονόματα στηλών, εκφράσεις, σταθερές και από ένα τελεστή σύγκρισης 2. Η λέξη WHERE μπορεί να συγκρίνει τιμές. Από ποια τρία στοιχεία αποτελείται; Όνομα στήλης Προϋπόθεση σύγκρισης Όνομα στήλης, σταθερές, ή σύνολο τιμών 3. Ποιο τελεστή θα χρησιμοποιούσατε για να κάνετε τις ακόλουθες συγκρίσεις: a. Μεγαλύτερο ή ίσο του >= b. Ίσο με = c. Μικρότερου του < d. Μικρότερο ή ίσο του <= e. Διάφορο του <>.!=, ^= 4. Όλες οι τιμές χαρακτήρα string και ημερομηνίας περικλείονται με ; Δώστε ένα παράδειγμα. Μονά εισαγωγικά η γάτα 29-SEP-63 5. Ποια είναι η χρήση του όρου BETWEEN; Δώστε ένα παράδειγμα. Για την εμφάνιση σειρών βάσει ενός εύρους τιμών WHERE salary BETWEEN 5000 and 10000 6. Τι είναι το IN; Δώστε ένα παράδειγμα. Ο όρος IN χρησιμοποιείται για τη δοκιμή για τιμές σε μία λίστα. WHERE department_id IN (5, 10, 20) 7. Ποια είναι η χρήση του όρου LIKE; Δώστε ένα παράδειγμα. Το LIKE χρησιμοποιείται για την ένωση χαρακτήρων αντίστοιχου μοτίβου WHERE last_name LIKE Smith 8. Παραθέστε και περιγράψτε τα δύο σύμβολα μπαλαντέρ που χρησιμοποιούνται με τον όρο LIKE; Το σύμβολο τοις εκατό (%) εμφανίζει όλους τους χαρακτήρες μετά το σύμβολο αυτό Κάτω παύλα(_) εμφανίζει κάθε χαρακτήρα χωριστά 9. Γιατί η λέξη WHERE χρησιμοποιεί IS NULL όταν γίνεται αναζήτηση για ένα null όρο; Oracle Academy 5 Database Design
Ο όρος IS NULL ελέγχει για nulls μιας και μία τιμή null σημαίνει πως η τιμή είναι μη διαθέσιμη, ανεκχώρητη έτσι, δεν μπορείτε να κάνετε δοκιμή με το = επειδή ένα null δεν μπορεί να είναι ίσο με κάποια τιμή. 10. Γιατί η ρήτρα WHERE χρησιμοποιεί IS NOT NULL όταν γίνεται αναζήτηση για ένα not null όρο; Ο όρος IS NOT NULL ελέγχει για not nulls τιμές που είναι εκχωρημένες (assigned), είναι διαθέσιμες αγνοώντας τις τιμές null. 11. Παραθέστε και περιγράψτε τους τρεις λογικούς τελεστές. AND επιστρέφει αληθές εάν και οι δύο όροι είναι αληθείς OR επιστρέφει αληθές εάν οποιοσδήποτε όρος είναι αληθής NOT επιστρέφει αληθές εάν ο ακόλουθος όρος είναι ψευδής 12. Ποιος λογικός τελεστής υπολογίζεται πρώτα; Πρώτα το NOT, μετά το AND, και τέλος το OR 13. Τι κάνετε για να παρακάμψετε την προεπιλεγμένη σειρά των κανόνων προτεραιότητας; Χρησιμοποιείτε παρενθέσεις 14. Ποια λέξη χρησιμοποιείται για να ταξινομήσετε τις σειρές; Τη λέξη ORDER BY 15. Γίνεται σε όλες τις αναζητήσεις χαρακτήρων διάκριση πεζών και κεφαλαίων χαρακτήρων; Σωστό/Λάθος ΣΩΣΤΟ 16. Ο τελεστής του όρου OR απαιτεί μία από τις δύο προϋποθέσεις να είναι αληθής. Σωστό/Λάθος ΣΩΣΤΟ 17. Ο τελεστής του όρου AND απαιτεί μία από τις δύο προϋποθέσεις να είναι αληθής. Σωστό/Λάθος ΛΑΘΟΣ 18. Ο τελεστής του όρου NOT αντιστρέφει την προϋπόθεση. Σωστό/Λάθος ΣΩΣΤΟ 19. Ποια είναι η προεπιλεγμένη σειρά ταξινόμησης των σειρών δεδομένων; ASC ascending order (αύξουσα σειρά) Oracle Academy 6 Database Design
20. Σε ποιο σημείο της δήλωσης SELECT τοποθετείται η ρήτρα ORDER BY; Δώστε ένα παράδειγμα. Στη τελευταία γραμμή μιας δήλωσης SELECT. SELECT * ORDER BY 1; 21. Εάν δεν χρησιμοποιηθεί η ρήτρα ORDER BY πως εμφανίζονται τα δεδομένα; Η σειρά ταξινόμησης είναι απροσδιόριστη. 22. Με ποιους τρεις τρόπους μπορεί ο όρος ταξινόμησης της ρήτρας ORDER BY να γραφτεί; Δώστε ένα παράδειγμα για το καθένα. Μία έκφραση, ένα ψευδώνυμο, θέση στήλης SELECT employee_id, last_name, salary as SAL ORDER BY employee_id, SAL, 2; 23. Δημιουργήστε ένα ερώτημα που να εμφανίζει το επώνυμο, το μισθό και τη προμήθεια για όλους τους εργαζομένους που παίρνουν προμήθεια. Τοποθετήστε τα αποτελέσματα σε φθίνουσα σειρά ανάλογα με το μισθό. Ονομάστε τις επικεφαλίδες των στηλών. SELECT last_name, salary, commission_pct WHERE commission_pct IS NOT NULL; 24. Δημιουργήστε ένα ερώτημα που να εμφανίζει το επώνυμο των εργαζομένων, το id της δουλειάς, την ημερομηνία έναρξης των εργαζομένων που προσλήφθηκαν μεταξύ 11 Φεβρουαρίου, 1997 και 5 Μαΐου, 1988. Τοποθετήστε τα αποτελέσματα ταξινομημένα βάσει την ημερομηνία έναρξης. Ονομάστε τις επικεφαλίδες των στηλών. SELECT last_name as Last Name, job_id as Job Title, hire_date as Start Date WHERE hire_date BETWEEN 2013-11-11 AND 2014-01-11 ORDER BY hire_date; 25. Δημιουργήστε ένα ερώτημα που να εμφανίζει όλες τις πληροφορίες σχετικά με τον εργαζόμενο King. SELECT * WHERE last_name LIKE King ; 26. Δημιουργήστε ένα ερώτημα που να εμφανίζει το επώνυμο όλων των εργαζομένων όπου το τρίτο γράμμα του επωνύμου είναι το κ και οι οποίοι έχουν ένα α στο επώνυμό τους. SELECT last_name WHERE last_name LIKE k% AND last_name LIKE %a% ; Oracle Academy 7 Database Design