Home » Articole » RO » Calculatoare » Programare » SQL » Standardul SQL ISO IEC 9075 și diverse implementări

Standardul SQL ISO IEC 9075 și diverse implementări

postat în: SQL 0

Beneficiul standardizării

La fel ca majoritatea celorlalte standarde, scopul principal al SQL este portabilitatea. De obicei, proiectanții de software și dezvoltatorii de aplicații structurează și rezolvă problemelepe straturi. Fiecare strat de abstractizare este realizat în propria componentă sau subcomponentă: prezentarea către utilizatorul final, logica de afaceri, accesul la date, stocarea datelor, rețeaua și cerințele sistemului de operare sunt reprezentanți tipici ai acestor componente. Acestea sunt organizate ca o stivă și fiecare strat oferă o interfață cu straturi superioare pentru a-și utiliza funcționalitatea. Dacă una dintre aceste componente este realizată de doi furnizori diferiți și ambii oferă aceeași interfață (ca API, Web-Service, specificații lingvistice, …), este posibil să le schimbați fără a schimba straturi care se bazează pe ele. În esență, industria software are nevoie de interfețe stabile în partea superioară a straturilor esențiale pentru a evita dependența de un singur furnizor. SQL acționează ca o astfel de interfață cu sistemele de baze de date relaționale.

Dacă o aplicație folosește doar acele comenzi SQL definite în SQL standard, ar trebui să fie posibilă schimbarea SGBDR subiacentă cu una diferită, fără a modifica codul sursă al aplicației. În practică, aceasta este o treabă grea, deoarece implementările concrete oferă numeroase caracteristici suplimentare, iar inginerilor de software le place să le folosească.

Un al doilea aspect este conservarea know-how-ului. Dacă un student învață SQL, este în măsură să dezvolte aplicații bazate pe un sistem de baze de date arbitrar. Situația este comparabilă cu orice alt limbaj de programare popular. Dacă se învață Java sau C-Sharp, el poate dezvolta aplicații de orice fel care rulează pe o mulțime de sisteme hardware diferite și chiar arhitecturi hardware diferite.

Limite

Sistemele de baze de date constau din mai multe componente. Accesul la date este un element esențial, dar nu singura componentă. Alte componente includ: optimizarea randamentului, proiectarea fizică, backup, baze de date distribuite, replicare, disponibilitate 7×24, …. SQL standard se concentrează în principal pe accesul la date și ignoră sarcinile DBA tipice. Chiar și declarația
CREATE INDEX
ca strategie de optimizare utilizată pe scară largă nu face parte din standard. Cu toate acestea, standardul umple mii de pagini. Dar cea mai mare parte a activității zilnice a DBA este extrem de specializată pentru fiecare implementare concretă și trebuie să fie făcută diferit atunci când treceți la un SGBDR diferit. În principal, dezvoltatorii de aplicații beneficiază de SQL.

Procesul de standardizare

Procesul de standardizare este organizat pe două nivele. Primul nivel acționează într-un context național. Companiile, universitățile și persoanele interesate dintr-o țară lucrează în cadrul organizației lor naționale de standardizare, cum ar fi ANSI, Deutsches Institut für Normung (DIN) sau British Standards Institution (BSI), unde fiecare membru are un vot. Al doilea nivel este scena internațională. Organizațiile naționale sunt membre ISO, respectiv IEC. În cazul SQL există un comitet comun al ISO și IEC numit Comitetul Tehnic Comun ISO / IEC JTC 1, Tehnologia informației, Subcomitetul SC 32, Gestionarea și schimbul de date, unde fiecare organism național are un vot. Acest comitet aprobă standardul sub denumirea ISO/IEC 9075-n:aaaa, unde n este numărul părții și aaaa este anul publicării. Cele zece părți ale standardului sunt descrise pe scurt aici.

În cazul în care comitetul lansează o nouă versiune, aceasta se poate referi doar la unele dintre cele zece părți. Deci, este posibil ca denumirea yyyy să difere de la o parte la alta. Core SQL este definit în principal de a doua parte: ISO/IEC 9075-2:yyyy Part 2: Foundation (SQL/Foundation) – dar conține și câteva caracteristici ale altor părți.

Notă: API JDBC face parte din Java SE și Java EE, dar nu face parte din standardul SQL.

Un al doilea standard strâns legat completează standardul: ISO/IEC 13249-n:yyyy SQL Multimedia and Application Packages, care este dezvoltat de aceleași organizații și comitet. Această publicație definește interfețele și pachetele bazate pe SQL. Se concentrează pe anumite tipuri de aplicații: text, imagini, minerit de date și aplicații de date spațiale.

Verificarea conformității cu standardul

Până în 1996 Institutul Național de Standarde și Tehnologie (NIST) a certificat conformitatea implementării SQL a SGBDR cu standardul SQL. Pe măsură ce NIST abandonează această lucrare, în zilele noastre, furnizorii își auto-certifică conformitatea produsului lor. Aceștia trebuie să declare gradul de conformitate într-o anexă specială a documentației lor. Această documentație poate fi voluminoasă, deoarece standardul definește nu numai un set de caracteristici de bază – numit Core SQL:yyyy -, ci și o mulțime de caracteristici suplimentare cu care o implementare poate fi sau nu conformă.

Implementări

Pentru a îndeplini cerințele clienților lor, toți furnizorii majori de SGBDR oferă – printre alte modalități de acces la date – limbajul SQL din produsul lor. Implementările acoperă Core SQL, o grămadă de caracteristici standardizate suplimentare și un număr imens de caracteristici suplimentare, nestandardizate. Accesul la caracteristici standardizate poate utiliza sintaxa obișnuită sau o sintaxă specifică implementării. În esență, SQL este clema care ține totul împreună, dar de obicei există o mulțime de ocoliri ale limbajului oficial.

(Traducere din Wikibooks)

Filosofia tehnologiei blockchain - Ontologii
Filosofia tehnologiei blockchain – Ontologii

Despre necesitatea şi utilitatea dezvoltării unei filosofii specifice tehnologiei blockchain, accentuând pe aspectele ontologice. După o Introducere în care evidenţiez principalele direcţii filosofice pentru această tehnologie emergentă, în Tehnologia blockchain explicitez modul de funcţionare al blockchain, punând în discuţie direcţiile ontologice de dezvoltare … Citeşte mai mult

Nu a fost votat $0,00$2,44 Selectează opțiunile
Traducere şi traducători
Traducere şi traducători

Include Ghidul Comisiei Europene pentru traducătorii din Uniunea Europeană Despre traducere şi traducători, teorii ale traducerilor, traducerea asistată pe calculator, şi software utilizat în traduceri. Include Ghidul Comisiei Europene pentru traducătorii din Uniunea Europeană şi legislaţia specifică traducerilor şi traducătorilor. … Citeşte mai mult

Nu a fost votat $2,99 Selectează opțiunile
Ghid WordPress pentru dezvoltatori
Ghid WordPress pentru dezvoltatori

WordPress este o platformă pentru site-uri web rapidă, fiabilă, cu facilități multiple pentru dezvoltatori și ușor de utilizat. Totusi, dezvoltatorii și beneficiarii au de multe ori nevoie să adauge funcționalități suplimentare pentru a răspunde nevoilor lor. Acest ghid oferă unele … Citeşte mai mult

Nu a fost votat $3,99 Selectează opțiunile

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *