Extras din curs
Este vorba de o introducere în limbajul de interogare utilizat pentru a accesa o baza de date.
La scurt timp dupa ce E. F. Codd a descris structura bazei de date relationale, în colectivul de la IBM s-a realizat un prototip de sistem de management al bazelor de date relationale, numit System R, împreuna cu un limbaj dedicat (pentru a crea si a opera cu bazele de date relationale), numit SEQUEL (Structured English QUEry Language). Expresiile din SEQUEL seamana cu propozitiile din limba engleza, fiind desigur mai structurate. In paralel firma IBM a scos pe piata produse cu baze de date relationale, bazate pe System R. Dar cu un limbaj putin diferit de SEQUEL. Astfel ca l-a botezat SQL, eliminând vocalele din Sequel si trecând la pronuntia "es-qu-el". Chiar daca sunt autori care considera ca SQL provine de la Structured Query Language, asta nu-i adevarat.Iar SQL nu are nimic de a face cu limbajele de programare structurata, precum Pascal sau C++.
In 1979, Corporatia Oracle introduce prima implementare a SQL în varianta comerciala.
In scurt timp SQL devine un standard industrial pentru bazele de date relationale. Institutul National American de Standarde (ANSI) l-a adoptat ca limbaj standard pentru gestiunea bazelor de date (RDBMS), înca în anul 1986. Organizatia Internationala de Standarde (ISO) a adoptat deasemenea SQL ca limbaj standard pentru RDBMS. Toate RDBMS-urile suporta unele forme de SQL si toti vânzatorii de astfel de sisteme s-au aliniat sau intentioneaza sa se alinieze la standardele ANSI. Asta nu înseamna ca nu mai apar diferente. Chiar si la produsele aceleasi firme, Microsoft Access si SQL Server, pot fi semnalate diferente în implementarea limbajului SQL.
SQL poate fi folosit în doua moduri:
- direct la terminal, adica în mod comanda (interactiv, sau batch)
- în cadrul unor programe scrise într-un limbaj de programare, precum C++, sau Visual Basic.
In concluzie: Un sistem de management al bazei de date necesita un limbaj de interogare pentru a permite utilizatorului sa acceseze datele. SQL (initial numit SEQUEL, ca limbaj de interogare structurata) este limbajul standardizat ANSI si ISO, utilizat de majoritatea sistemelor ce manevreaza baze de date relationale.
Trasaturi caracteristice ale limbajului SQL
- SQL, ca si majoritatea limbajelor de programare, foloseste cuvinte din limba engleza. In mod special cuvintele select, insert, delete ca elemente ale setului de comenzi.
- SQL este un limbaj neprocedural: specifica care sunt informatiile dorite, nu cum se obtin acestea. Cu alte cuvinte, SQL nu cere sa fie specificata metoda de acces la date.
- Executia comenzilor SQL asupra înregistrarilor nu se poate face decât secvential, asupra câte unei singure înregistrari. Setul de înregistrari fiind vazut ca set de linii ale unui tabel.
- SQL poate fi folosit de un sir de utilizatori, incluzând administratorul bazei de date, programatorii de aplicatii, personalul de management si multe alte tipuri de utilizatori.
- SQL include comenzi pentru o varietate de sarcini, incluzând:
- selectia unor date
- inserarea, extragerea si stergerea rândurilor dintr-un tabel
- crearea, modificarea si stergerea obiectelor de tip baza de date
- controlul accesului la baza de date si la obiectele de tip baza de date
- verificarea - garantarea consistentei bazei de date
La început, sistemele de management a bazelor de date au utilizat un limbaj separat pentru fiecare categorie de sarcini în parte. SQL le-a unificat pe toate acestea într-un singur limbaj.
Logic, comenzile limbajului SQL sunt împartite în trei componente:
- limbajul de definire a datelor (Data Definition Language)- DDL,
- limbajul de manipulare a datelor (Data Manipulation Language)- DML,
- limbajul de control al datelor (Data Control Language)-DCL.
Primul pentru crearea structurii de baza de date, al doilea, dupa ce structura exista, pentru a adauga date în tabele si pentru a le manipula. A treia componenta ofera posibilitatea de a proteja (securiza) datele.
Setul de comenzi SQL
Comenzile de definire a datelor (DDL): CREATE, ALTER, DROP
aceste trei comenzi sunt utilizate dinamic pentru a crea, utiliza si sterge orice structura de date, în particular tabele.
Comenzile de manipulare a datelor (DML): INSERT, UPDATE, DELETE si SELECT
utilizate pentru a introduce noi rânduri, pentru a schimba (actualiza) rândurile existente, pentru a sterge rândurile nedorite din baza de date respectiva, si, în fine, SELECT - comanda cea mai utilizata, folosita pentru a cauta, a selecta înregistrari din tabel sau dintr-o combinatie de tabele ale bazei de date.
Comenzile de control (grupul DCL), la dispozitia administratorului(DBA): GRANT, REVOKE
utilizate pentru a da sau a lua drepturi de acces (la comenzi DML, deci la operarea unor modificari a bazei de date).
Sintaxa comenzilor difera de la un grup la altul. Ne limitam acum doar la câte un exemplu:
CREATE TABLE CUSTOMER (
CustomerID Integer PRIMARY KEY,
FirstName Character (15),
LastName Character (20) NOT NULL,
Title Character (5),
Street Character (25),
City Character (25),
State Character (2),
Preview document
Conținut arhivă zip
- Introducere in SQL.doc