Movatterモバイル変換


[0]ホーム

URL:


Pāriet uz saturu
VikipēdijaBrīvā enciklopēdija
Meklēt

SQL

Vikipēdijas lapa

SQL (IPA:[ˈɛsˈkjuˈɛl]; noangļu:Structured Query Language — 'strukturēto vaicājumu valoda') irvaicājumu valoda, kas paredzētadatu manipulēšanai relācijudatubāžu pārvaldības sistēmās. Tas irANSI/ISO standarts.

SQL atšķiras no standartaprocedurālajām programmēšanas valodām ar to, ka tā darbojas ar ierakstu kopām, nevis apstrādā ierakstu pa ierakstam. Daudzidatu bāzu pārvaldības sistēmu izstrādātāji ir ieviesuši savās DBPS arī procedurālos papildinājumus un speciālas valodas, piemēram,OraclePL/SQL,Microsoft unSybaseT-SQL,PostgreSQLPL/pgSQL.

Tomēr, SQL valodai pievienojot papildu paplašinājumus, tā var iegūt arīprocedurālo programmēšanas valodu funkcionalitāti, piemēram, plūsmas kontroles konstrukcijas.

SQL valodai nereti pretstatīta tiekNoSQL valoda.

Standarti

[rediģēt |labot pirmkodu]

SQL standartu revīzijas

GadsNosaukumsCits nosaukumsKomentāri
1986SQL-86SQL-87Pirmoreiz publicējisANSI1986. gadā.ISO ratificējusi1987. gadā.
1989SQL-89FIPS 127-1Nelielas izmaiņas
1992SQL-92SQL2Lielākas izmaiņas (ISO 9075).
1999SQL:1999SQL3Pievienotas regulārās izteiksmes, rekursīvie vaicājumi, trigeri, neskalārie tipi un dažas objektorinetētās īpašības.
2003SQL:2003 Ar XML saistīti jauninājumi,loga funkcijas, standartizētas secības un kolonas ar aotoģenerētām vērtībām.
2006SQL:2006 Palielināta funkcionalitāte, parādījās iespēja izmantotXQuery SQL pieprasījumos.
2008SQL:2008 Uzlabotas logu funkcijas.
2011SQL:2011Pievieno laika datus (PERIOD FOR). Papildinājumi loga funkcijām un FETCH priekšrakstam.[1]
2016SQL:2016Pievieno rindu modeļu pieskaņošanu, polimorfās tabulas funkcijas,JSON.
2019SQL:2019Pievieno daudzdimensiju masīvus (MDarray type and operators).

SQL standarti nav brīvi pieejami. SQL:2003 var iegadāties ISO vai ANSI.Vairumsdatu bāzu pārvaldības sistēmu izstrādātāji ir ieviesuši savus papildinājumus un modifikācijas, kas neatbilst standartam.

Valodas elementi

[rediģēt |labot pirmkodu]

SQL valoda ir iedalīta vairākos valodu elementos:

  • Nosacījumi, kas ir sastāvdaļa no paziņojumiem un vaicājumiem. (Atsevišķos gadījumos nav obligāti.)
  • Izteiksmēs, kas var radīt skalāras vērtības vai arī tabulas, kas sastāv no datu kolonām un rindām.
  • Predikātos, kas ir nosacījumi (komplementārā loģika un Būla patiesību vērtības), kuri ietekmē ne tikai pārskatu un vaicājumu rezultātus, bet arī programmas plūsmu.
  • Vaicājumos, kuri atgriež datus atkarībā no sniegtā kritērija.
  • Priekšraksti, kurām var būt noturīga ietekme uz shēmām un datiem, vai arī kuras var kontrolēt darījumus, programmas plūsmu, savienojumus, sesijas un diagnostiku.
    • SQL komandas parasti satur semikolu (";") kā komandas terminatoru, kaut arī tas nav vajadzīgs visām platformām.
  • Nenozīmīgas atstarpes SQL komandās un vaicājumos tiek ignorētas, lai atvieglotu SQL koda pārskatāmību.

Visbiežākā operācija SQL ir vaicājums, ko veic ar deklaratīvo paziņojumuSELECT. SELECT atgriež datus no vienas vai vairākām tabulām vai vienādībām. Standarta SELECT pieprasījumiem nav ilgstošu seku uz datubāzi, bet tās var būt, izmantojot nestandarta SELECT paveidus, piemēram, SELECT INTO.

Vaicājumi atļauj lietotājam aprakstīt vēlamos datus, atstājot datu bāzu vadības sistēmu (database management system (DBMS)) atbildīgu par plānošanu, optimizēšanu, un fizisko darbību veikšanu, kas ir nepieciešams, lai saņemtu rezultātu.

Vaicājums ietver sarakstu ar kolonnām, kas būs ietvertas rezultātā tūlīt pēc SELECT atslēgvārda. "Zvaigznīte" ("*") var tikt lietota lai norādītu, ka vaicājumam jāatgriež visas kolonnas vaicātajās tabulās. SELECT ir vissarežģītākais priekšraksts SQL valodā, ar izvēles atslēgvārdiem un nosacījumiem, kas ietver:

  • Nosacījums FROM — norāda tabulu/tabulas, no kuras dati jāiegūst. Nosacījums FROM var iekļaut izvēles apakšnosacījumu JOIN, lai precizētu noteikumus tabulu savienošanai.
  • Nosacījums WHERE — ietver salīdzinājuma predikātu, kas ierobežo atgrieztās rindas no vaicājuma. Nosacījums WHERE likvidē visas rindas no rezultātu kopas, kuras salīdzinājuma predikāts nenovērtē, kā "patiesas" ("True").
  • Nosacījums GROUP BY — tiek bieži lietots kopā ar SQL apkopšanas funkcijām, vai arī lai atbrīvotos no dublētām rindām rezultātu kopā. Nosacījums WHERE tiek piemērots pirms nosacījuma GROUP BY.
  • Nosacījums HAVING — ietver predikātu, kas tiek lietots lai filtrētu rindas, kas izriet no nosacījuma GROUP BY. Tāpēc, ka tas darbojas uz nosacījuma GROUP BY rezultātiem, apkopošanas funkcijas var tikt lietotas, izmantojot nosacījuma HAVING predikātu.
  • Nosacījums ORDER BY — identificē, kuras kolonnas tiek lietotas, lai sakārtotu iegūtos datus, un kādā secībā tie būtu jākārto (augošā vai dilstošā). Bez ORDER BY nosacījuma rindu secība, kuru atgriež SQL vaicājums ir nenoteikta.

SQL vaicājumus var iedalīt 4 daļās:

  • Datu manipulēšanas vaicājumi (SELECT,INSERT,UPDATE,DELETE,MERGE)
  • Datu definēšanas vaicājumi (CREATE, DROP, TRUNCATE, ALTER)
  • Datu kontroles vaicājumi (GRANT, REVOKE)

Transakciju kontroles vaicājumi (BEGIN WORK vai START TRANSACTION, COMMIT, ROLLBACK).

Alternatīvas

[rediģēt |labot pirmkodu]

Būtu jānošķir alternatīvas SQL kā valodai un alternatīvas pašam relāciju modelim. Tālāk ir piedāvātas SQL valodas relāciju alternatīvas. Skatiet navigācijas datu bāzi un NoSQL, lai atrastu alternatīvas relāciju modelim.

  • .QL: objektorientēts Datalogs
  • 4D Query Language (4D QL)
  • Datalog: kritiķi norāda, ka Datalog ir divas priekšrocības salīdzinājumā ar SQL: tam ir tīrāka semantika, kas atvieglo programmu izpratni un uzturēšanu, un tas ir izteiksmīgāks, īpaši attiecībā uz rekursīviem vaicājumiem.
  • HTSQL: Uz URL balstīta vaicājuma metode
  • IBM Business System 12 (IBM BS12): viena no pirmajām pilnībā relāciju datubāzu pārvaldības sistēmām, kas ieviesta 1982. gadā
  • ISBL
  • jOOQ: SQL ieviests Java valodā kā iekšējam domēnam raksturīga valoda
  • Java noturības vaicājuma valoda (JPQL): vaicājuma valoda, kuru izmanto Java noturības API un hibernācijas noturības bibliotēka
  • Java Persistence Query Language (JPQL): Vaicājuma valoda, kuru izmanto Java Persistence API unHibernatebibliotēka
  • JavaScript:MongoDB īsteno vaicājuma valodu JavaScript API.
  • LINQ: Izpilda SQL priekšrakstus, kas rakstīti kā valodas konstrukcijas, lai vaicātu kolekcijas tieši no iekšpuses .Net code.
  • Object Query Language
  • QBE (Query By Example) izveidoja Moshè Zloof, IBM 1977
  • Quel ieviesa 1974. gada Kalifornijas Universitātē, Berklijā, sistēmas Ingres izveides projektā
  • Tutorial D
  • XQuery

Atsauces

[rediģēt |labot pirmkodu]
  1. «Fred Zemke (2012). "What's new in SQL:2011" (PDF). Oracle Corporation.».

Ārējās saites

[rediģēt |labot pirmkodu]
Aizmetņa ikonaŠis arinformācijas tehnoloģijām saistītais raksts irnepilnīgs. Jūs varatdot savu ieguldījumu Vikipēdijā,papildinot to.
Autoritatīvā vadība
Saturs iegūts no "https://lv.wikipedia.org/w/index.php?title=SQL&oldid=3703085"
Kategorija:
Slēptas kategorijas:

[8]ページ先頭

©2009-2026 Movatter.jp