SQL: Διαφορά μεταξύ των αναθεωρήσεων

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
μ Αναστροφή της επεξεργασίας από τον 79.129.10.223 (συνεισφ.), επιστροφή στην τελευταία εκδοχή υπό [[Χρή...
Χωρίς σύνοψη επεξεργασίας
Ετικέτες: Επεξεργασία από κινητό Διαδικτυακή επεξεργασία από κινητό
Γραμμή 1: Γραμμή 1:
H '''SQL''' (''αγγλ. [[αρκτικόλεξο|αρκτ.]]'' από το '''Structured Query Language''') (''[[ΔΦΑ|προφ.]]'' /ˌɛs.kjuːˈɛǀ/) είναι μία [[Γλώσσα προγραμματισμού|γλώσσα υπολογιστών]] στις [[Βάση δεδομένων|βάσεις δεδομένων]], που σχεδιάστηκε για τη διαχείριση δεδομένων, σε ένα σύστημα διαχείρισης [[Σχεσιακή βάση δεδομένων|σχεσιακών βάσεων δεδομένων]] (Relational Database Management System, RDBMS) και η οποία, αρχικά, βασίστηκε στη [[σχεσιακή άλγεβρα]]. Η γλώσσα περιλαμβάνει δυνατότητες ανάκτησης και ενημέρωσης δεδομένων, δημιουργίας και τροποποίησης σχημάτων και σχεσιακών πινάκων, αλλά και ελέγχου πρόσβασης στα δεδομένα. Η SQL ήταν μία από τις πρώτες γλώσσες για το [[σχεσιακό μοντέλο]] του ''Edgar F. Codd'', στο σημαντικό άρθρο του το 1970, και έγινε η πιο ευρέως χρησιμοποιούμενη γλώσσα για τις σχεσιακές βάσεις δεδομένων.
H '''SQL''' (''αγγλ. [[αρκτικόλεξο|αρκτ.]]'' από το '''Structured Query Language''') (''[[ΔΦΑ|προφ.]]'' /ˌɛs.kjuːˈɛǀ/) είναι μία [[Γλώσσα προγραμματισμού|γλώσσα υπολογιστών]] στις [[Βάση δεδομένων|βάσεις δεδομένων]], που σχεδιάστηκε για τη διαχείριση δεδομένων, σε ένα σύστημα διαχείρισης [[Σχεσιακή βάση δεδομένων|σχεσιακών βάσεων δεδομένων]] (Relational Databiase Management System, RDBMS) και η οποία, αρχικά, βασίστηκε στη [[σχεσddb


== Ιστορία ==
== Ιστορία ==

Έκδοση από την 03:29, 13 Αυγούστου 2016

H SQL (αγγλ. αρκτ. από το Structured Query Language) (προφ. /ˌɛs.kjuːˈɛǀ/) είναι μία γλώσσα υπολογιστών στις βάσεις δεδομένων, που σχεδιάστηκε για τη διαχείριση δεδομένων, σε ένα σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων (Relational Databiase Management System, RDBMS) και η οποία, αρχικά, βασίστηκε στη [[σχεσddb

Ιστορία

Η SQL αναπτύχθηκε στην IBM από τους Andrew Richardson, Donald C. Messerly και Raymond F. Boyce, στις αρχές της δεκαετίας του 1970. Αυτή η έκδοση, αποκαλούμενη αρχικά SEQUEL, είχε ως σκοπό να χειριστεί και να ανακτήσει τα στοιχεία που αποθηκεύτηκαν στο πρώτο RDBMS της IBM, το System R. .[1]

Το πρώτο σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων (RDBMS) ήταν το RDMBS που αναπτύχθηκε στo MIT, στις αρχές της δεκαετίας του 1970 και η Ingres, που αναπτύχθηκε το 1974 στο Πανεπιστήμιο Μπέρκλεϋ. H Ingres εφάρμοσε μία γλώσσα διατύπωσης ερωτήσεων γνωστή ως QUEL, το οποίο αντικαταστάθηκε αργότερα στην αγορά από την SQL.

Προς το τέλος της δεκαετίας του 70 η Relational Software (τώρα Oracle Corporation) είδε τη δυνατότητα αυτών που περιγράφηκαν από Codd, Chamberlin, και Boyce και αναπτυξε την SQL βασισμένο στο RDBMS, με τις φιλοδοξίες πώλησης του στο Αμερικανικό ναυτικό, την Κεντρική Υπηρεσία Πληροφοριών και άλλες Αμερικανικές Υπηρεσίες.

Το καλοκαίρι του 1979, η Relational Software εισήγαγε την πρώτη διαθέσιμη στο εμπόριο εφαρμογή του SQL και νίκησε την IBM με τη διάθεση του πρώτου εμπορικού RDBMS για μερικές εβδομάδες.

Γλωσσικά στοιχεία

Γλωσσικά στοιχεία σε ένα statement

Η γλώσσα SQL υποδιαιρείται σε διάφορα γλωσσικά στοιχεία, που περιλαμβάνουν

  • Clauses, οι οποίες είναι σε μερικές περιπτώσεις προαιρετικές, αλλά απαραίτητα συστατικά των δηλώσεων και ερωτήσεων.
  • Expressions που μπορούν να παραγάγουν είτε τις κλιμακωτές τιμές είτε πίνακες που αποτελούνται από στήλες και σειρές στοιχείων.
  • Predicates που διευκρινίζουν τους όρους που μπορούν να αξιολογηθούν σαν σωστό ή λάθος.
  • Queries που ανακτούν τα στοιχεία βασισμένες σε ειδικά κριτήρια.
  • Statements που μπορούν να έχουν μια επίδραση στα σχήματα και τα στοιχεία, ή που μπορούν να ελέγξουν τη ροή του προγράμματος και τις συνδέσεις από άλλα προγράμματα.
  • Το κενό αγνοείται γενικά στις Statements και τις Queries SQL. Ενα κενό είναι όμως απαραίτητο για να ξεχωρίζει Statements οπως και στην κανονική γραφή κειμένων.

Επερωτήματα

Ένα επερώτημα (αγγλ. query) συνήθως αποτελείται από:

SELECT *
FROM Sygrafeas
where epitheto = 'Solomos'
and onoma = 'Dionysios'

αλλά μπορεί επίσης να περιλαμβάνει GROUP BY, ORDER BY και αλλα:

SELECT Book.title,
count(*) AS No_of_Authors
 FROM Book
 JOIN Book_author ON Book.isbn = Book_author.isbn
 GROUP BY Book.title
having count(*) > 1
ORDER BY No_of_Authors

Με αποτέλεσμα:

Title                   No_of_Authors
----------------------  -------
SQL Examples and Guide     2
The Joy of SQL             3
An Introduction to SQL     5
Pitfalls of SQL            6

Παραπομπές

  1. Shaw· και άλλοι. (19 Μαρτίου 1985). «US Patent 4,506,326». Ανακτήθηκε στις 4 Νοεμβρίου 2008. CS1 maint: Explicit use of et al. (link)
CC-BY-SA
Μετάφραση
Στο λήμμα αυτό έχει ενσωματωθεί κείμενο από το λήμμα SQL της Αγγλικής Βικιπαίδειας, η οποία διανέμεται υπό την GNU FDL και την CC-BY-SA 4.0. (ιστορικό/συντάκτες).