SQL (Structured Query Language) është një gjuhë kompjuterike e projektuar për menaxhimin e të dhënave në sistemet e menaxhimit të bazës së të dhënave relative (Relational data base management system), dhe fillimisht e bazuar mbi algjebrën relative. Disa RDBMS që përdorin SQL janë Oracle, Sybase, Microsoft SQL Server, Access, Ingres, etc. Të gjitha dialektet e SQL-së përmbajnë disa bashkësi komandash qe mund te klasifikohen si nën-gjuhe programimi (sublanguage) :

  • Data Query Language (DQL) është bashkësia e komandave që përdoret për të kërkuar dhe afishuar të dhëna në një DB si psh komanda "Select".
  • Data Definition Language (DDL) është bashkësia e komandave që përdoret për të përcaktuar skemën e objekteve të të dhënave dhe relatat midis tyre. Këto komanda krijojnë, modifikojnë dhe fshijnë objekte të bazës së të dhënave si DB, tabela, kollona, indekse etc. Shembuj te komandave DDL janë "Create Object", "Drop Object", "Alter Object".
  • Data Manipulation Languange (DML) eshte bashkesia e komandave që mundëson manipulimin e të dhënave që ruhen brenda objekteve te databazës si krijimin, azhornimin, fshirjen e te dhenave. Shembuj të ketyre komandave janë Insert, Update, Delete.
  • Data Control Language (DCL ) është bashkësia e komandave që përdoret për të autorizuar aksesin ne objekte, funksione dhe te dhena ne nje RDBMS. Shembuj te ketyre komandave jane GRANT, REVOKE etc.

Historia

Redakto

SQL u zhvilluar ne IBM nga Donald D. Chamberlin dhe Raymond F. Boyce në fillim të viteve 1970. Ky version, i quajtur fillimisht SEQUEL, është projektuar për të manipuluar dhe ripërtërirë të dhënat e ruajtura në produkt origjinal të të dhënave relacionale të IBM, (System R). Gjatë viti 1970, një grup në IBM San Jose Research Laboratory zhvilloi Sistemin R të menaxhimit të sistemit të bazës së të dhënave relacionale. Donald D.Chamberlin dhe Raymond F.Boyce fillimisht e quajtën Structured English Query Language (SEQUEL ose SEQL). Emri SEQUEL u ndryshua më vonë në SQL sepse "SEQUEL" ishte një markë e kompanisë ajrore Hawker Siddeley e themeluar në Britaninë e Madhe.

Queries

Redakto

Veprimi më i zakonshëm në SQL është query, i cili është paraqitet me komandën SELECT. SELECT rinxjerr të dhëna prej një ose më shumë tabelave ose shprehjeve. Standard deklaratat SELECT nuk kanë efekte të vazhdueshme mbi bazën e të dhënave. Queries lejojnë përdoruesit për të përshkruar të dhënat e dëshiruara, duke ja lënë sistemit të menaxhimit të bazës së të dhënave (DBMS) përgjegjësinë për planifikimin. Një pyetje përfshin një listë të kolonave që përfshihen në rezultatin përfundimtar menjëherë pas fjalës SELECT. Një yll ("*") mund të përdoret gjithashtu që të specifikojë nëse query duhet të paraqesë të gjitha kollonat e tabelave. SELECT është deklarata më e ndërlikuar në SQL, me fjalë kyçe opsionale dhe dispozitat përfshirëse.

Sintaksa SQL, Elementet e gjuhës

Redakto

Gjuha SQL përbëhet nga disa elemente që përfshijnë:

  • Klauzolat (Clauses) që janë pjesët përbërëse të Shprehjeve dhe të Queries
  • Shprehjet (Expressions) që mund të prodhojnë vlera skalare ose tabela
  • Kushtet (Predicates) që përcaktojnë konditat në bazë të të cilave do limitohet efekti i queries ose statement
  • Pyetësorët (Queries) që marin të dhënat nga DB bazuar mbi disa kritere
  • Deklaruesit (Statements) që kanë efekt permanent në sktrukturë dhe në të dhënat e DB, mund të kontrollojnë transaksionet, koneksionet, rrjedhën e programeve, të drejtat etj.

Elementet e gjuhës SQL, pjesë përbërëse të një statement jane ilustruar në fig.

Nje figure ku tregohen disa elemente sintaksore perberes te Gjuhes SQL qe i perkasin nje Statement

Gjuhë të tjera të ngjashme

Redakto

Bazuar ne Gjuhën standart SQL janë krijuar gjuhë te tjera për manaxhim bazash të dhënash te tipeve te ndryshme si shembujt ne tabele:

DB Lloji SQL Emri i plotë
SQL Server T-SQL Transact-SQL
Oracle PL/SQL Procedural Language/SQL (based on Ada)
IBM DB2 SQL PL SQL Procedural Language (implements SQL/PSM)
PostgreSQL PL/pgSQL Procedural Language/PostgreSQL Structured Query Language (implements SQL/PSM)
IBM Informix SQL SPL Informix Dialect of SQL and Stored Procedural Language
IBM Netezza NZPLSQL (based on Postgres PL/pgSQL)
MySQL SQL/PSM SQL/Persistent Stored Module (implements SQL/PSM)
SAP HANA SQLScript SQLScript

Shih edhe

Redakto

Lidhje të jashtme

Redakto