Γλώσσα SQL
Ορισμός
επεξεργασίαΗ SQL(Structured Query Language) είναι μία γλώσσα προγραμματισμού ειδικού σκοπού για την προσπέλαση και διαχείριση δεδομένων που αποθηκεύονται σε μία σχεσιακή βάση δεδομένων. Η SQL συμμορφώνεται στις ιδιότητες ACID (atomicity, consistency, isolation, durability), δηλαδή (ατομικότητα, συνέπεια, απομόνωση, αντοχή) και συνδέεται άμεσα με την σχεσιακή άλγεβρα. Παράλληλα, επιτρέπει στους προγραμματιστές να μάθουν μία πανίσχυρη γλώσσα δημιουργίας ερωτημάτων και να την χρησιμοποιήσουν σε διάφορα συστήματα, από προσωπικούς υπολογιστές μέχρι και τα μεγαλύτερα υπολογιστικά συστήματα. Επίσης, η χρησιμότητα της έγκειται στο ότι οι προτάσεις της SQL μπορούν να ενσωματωθούν σε διάφορες διαδεδομένες γλώσσες προγραμματισμού, όπως η C++ και η Java. Η φήμη της πηγάζει από την χρήση τυποποιημένων και απλών διαδικασιών ανάκτησης, αποθήκευσης και διαχείρισης δεδομένων και έτσι πολλοί προγραμματιστές την κατανοούν και την χρησιμοποιούν με μεγάλη ευκολία.
Δυνατότητες της SQL
επεξεργασίαΗ SQL αποτελεί σήμερα την πιο διαδεδομένη γλώσσα διαχείρισης ΒΔ και παρέχει δυνατότητες για:
- τον ορισμό, την διαγραφή και την μεταβολή πινάκων και κλειδιών,
- την σύνταξη ερωτήσεων(queries),
- την εισαγωγή, την διαγραφή και την μεταβολή στοιχείων,
- τον ορισμό όψεων(views) πάνω στα δεδομένα,
- τον ορισμό δικαιωμάτων πρόσβασης,
- τον έλεγχο της ακεραιότητας των στοιχείων,
- τον έλεγχο συναλλαγών(transaction).
Σύνταξη της SQL
επεξεργασίαΗ SQL χρησιμοποιεί διάφορους όρους για να συντάξει ένα αίτημα. Οι 3 βασικότεροι όροι είναι ο όρος SELECT, ο όρος FROM και ο όρος WHERE. Οι δύο πρώτοι όροι είναι απαραίτητοι για την σύνταξη μιας πρότασης, και γράφονται με αυτήν την σειρά, ενώ ο τρίτος όχι. Ο SELECT δηλώνει τις στήλες του αποτελέσματος. Ο FROM δηλώνει ένα καρτεσιανό γινόμενο πινάκων από το οποίο διαλέγουμε τις στήλες που θέλουμε να εμφανίσουμε. Με την (προαιρετική) χρήση του WHERE ορίζονται συνθήκες επιλογής πλειάδων από το καρτεσιανό γινόμενο των πινάκων του FROM. Γενικά, η SQL διαθέτει πολλές ενσωματωμένες συναρτήσεις όπως εύρεσης μέσου όρου(AVG), εύρεσης μέγιστης τιμής(MAX) και εύρεσης ελάχιστης τιμής(MIN). Στον παρακάτω πίνακα φαίνονται περισσότεροι SQL όροι:
Όρος SQL | Τι κάνει | Απαιτείται |
---|---|---|
SELECT | Παραθέτει τα πεδία που περιέχουν δεδομένα ενδιαφέροντος. | Ναι |
FROM | Παραθέτει τους πίνακες που περιέχουν τα πεδία που παρατίθενται στον όρο SELECT. | Ναι |
WHERE | Καθορίζει τα κριτήρια που πρέπει να πληρούνται από κάθε εγγραφή για να συμπεριληφθούν στο αποτέλεσμα. | Όχι |
ORDER BY | Καθορίζει τον τρόπο ταξινόμησης των αποτελεσμάτων. | Όχι |
GROUP BY | Σε μια πρόταση SQL που περιέχει συναρτήσεις συγκεντρωτικών αποτελεσμάτων, παραθέτει πεδία που δεν έχουν συνοψιστεί στον όρο SELECT. | Μόνο εάν υπάρχουν τέτοιου είδους πεδία |
HAVING | Σε μια πρόταση SQL που περιέχει συναρτήσεις συγκεντρωτικών αποτελεσμάτων, καθορίζει τις συνθήκες που ισχύουν για τα πεδία που συνοψίζονται στην πρόταση SELECT. | Όχι |
Παραπομπές
επεξεργασία- Αρχές Πληροφοριακών Συστημάτων R. M. Stair and G. W. Reynolds, 14η έκδ., Τζιόλας, 2022. Κεφ. 5
- Συστήματα Διαχείρισης Βάσεων Δεδομένων Ramakrishnan and Gehrke, 3η έκδ., Τζιόλας, 2021. Κεφ. 5
- https://support.microsoft.com/el-gr/office/access-sql-%CE%B2%CE%B1%CF%83%CE%B9%CE%BA%CE%AD%CF%82-%CE%AD%CE%BD%CE%BD%CE%BF%CE%B9%CE%B5%CF%82-%CE%BB%CE%B5%CE%BE%CE%B9%CE%BB%CF%8C%CE%B3%CE%B9%CE%BF-%CE%BA%CE%B1%CE%B9-%CF%83%CF%8D%CE%BD%CF%84%CE%B1%CE%BE%CE%B7-444d0303-cde1-424e-9a74-e8dc3e460671
- https://www2.dmst.aueb.gr/dds/c3/sql/indexw.htm