• Znaczenie pojęcia:

    SQL

    Pozostałe definicje na literę S.

    ang. Structured Query Language

    Najbardziej znany język zapytań, zaimplementowany w większości systemów relacyjnych, bardzo często stanowiący wzorzec odniesienia w literaturze poświęconej obiektowości. Podstawą języka jest zdanieselect <lista wynikowa> from <ciąg nazw tablic> where <warunek>gdzie select, from, where są słowami kluczowymi. Semantyka tego zdania jest bardzo prosta: oblicza się produkt kartezjański wszystkich tablic wymienionych po from, odrzuca się z niego te wiersze, które nie spełniają warunku po where, następnie każdy pozostały wiersz skraca się (operator projekcji), pozostawiając tylko elementy wymienione w liście wynikowej po select; np.select Prac.Nazwisko, Dział.Nazwafrom Prac, Działwhere Prac.Zawód = 'tokarz' and Prac.NrDziału = Dział.NrDziałuTę podstawową konstrukcję wyposażono w szereg dodatkowych możliwości zwiększających moc wyszukiwawczą, m.in. grupowanie, warunki na grupach, zagnieżdżanie, porządkowanie, funkcje zagregowane, funkcje i operatory arytmetyczne, itd. SQL zawiera także operacje tworzenia i usuwania tablic, wstawiania, usuwania i aktualizacji wierszy, oraz inne operacje na środowisku bazy danych. SQL jest używany jako samodzielny język służący do interakcyjnych zapytań i aktualizacji. Jest również używany w wersji zanurzonej (embedded) w klasyczne języki programowania, np. C, Cobol lub PL/1. Istnieją różnorodne mutacje SQL, np. PL/SQL systemu Oracle lub konstrukcje języków czwartej generacji. SQL jest przedmiotem standardu ANSI oraz ISO. Istnieje kilka wersji tego standardu; starsza (SQL-89), obecna (SQL-92) oraz opracowywana (SQL3). SQL jest rozszerzany dla innych modeli, w szczególności dla obiektowych i obiektowo-relacyjnych baz danych. SQL jest także przedmiotem krytyki dotyczącej jego eklektyzmu (powstałego w konsekwencji oddolnego rozwoju), wielu jego kontrowersyjnych rozwiązań, niepełności opisu semantyki, oraz ubóstwa i nieporadności koncepcyjnej (braku ortogonalności, modularności, programistycznych abstrakcji, statycznej kontroli typów, reguł zakresu dla nazw, oraz innych współczesnych środków programistycznych). Konstrukcje składniowe SQL (a raczej niektóre jego syntaktyczne stereotypy) są wykorzystane w języku zapytań OQL wg standardu ODMG (ale podstawy semantyczne OQL i SQL są zasadniczo różne). Patrz też: SQL3, OQL.http://www.jcc.com/sql_stnd.htmlhttp://www.mcjones.org/System_R/SQL_Reunion_95/

    SQL,
    Language Query Structured