Structured Query Language, ou Linguagem de Consulta Estruturada ou SQL, é uma linguagem de pesquisa declarativa para banco de dados relacional (bases de dados relacionais). Muitas das características originais do SQL foram inspiradas na álgebra relacional.
SQL é normalmente pronunciado em português como "esse-quê-ele", porém sua pronúcia correta deveria se "síquel", do inglês "sequel", ou "alguma coisa que segue outra coisa". SQL é uma brincadeira com o nome da primeira linguagem de consulta QUEL.
Embora o SQL tenha sido originalmente criado pela IBM, rapidamente surgiram vários "dialectos" desenvolvidos por outros produtores. Essa expansão levou à necessidade de ser criado e adaptado um padrão para a linguagem. Esta tarefa foi realizada pela American National Standards Institute (ANSI) em 1986 e ISO em 1987.
O SQL foi revisto em 1992 e a esta versão foi dado o nome de SQL-92. Foi revisto novamente em 1999 e 2003 para se tornar SQL:1999 (SQL3) e SQL:2003, respectivamente. O SQL:1999 usa expressões regulares de emparelhamento, queries recursivas e gatilhos (triggers). Também foi feita uma adição controversa de tipos não-escalados e algumas características de orientação a objeto. O SQL:2003 introduz características relacionadas ao XML, sequências padronizadas e colunas com valores de auto-generalização (inclusive colunas-identidade).
Tal como dito anteriormente, o SQL, embora padronizado pela ANSI e ISO, possui muitas variações e extensões produzidos pelos diferentes fabricantes de sistemas gerenciadores de bases de dados. Tipicamente a linguagem pode ser migrada de plataforma para plataforma sem mudanças estruturais principais.
Outra aproximação é permitir para código de idioma processual ser embutido e interagir com o banco de dados. Por exemplo, o Oracle e outros incluem Java na base de dados, enquanto o PostgreSQL permite que funções sejam escritas em Perl, Tcl, ou C, entre outras linguagens.
- valign="top" align="left" | Table 'T' | Query | Result | - valign="top" align="left" |
|---|
- valign="top" align="left" | C1 | C2 | - valign="top" align="left" | 1 | a | - valign="top" align="left" | 2 | b |
|---|
- valign="top" align="left" | C1 | C2 | - valign="top" align="left" | 1 | a | - valign="top" align="left" | 2 | b |
|---|
- valign="top" align="left" | C1 | C2 | - valign="top" align="left" | 1 | a | - valign="top" align="left" | 2 | b |
|---|
- valign="top" align="left" | C1 | - valign="top" align="left" | 1 | - valign="top" align="left" | 2 |
|---|
- valign="top" align="left" | C1 | C2 | - valign="top" align="left" | 1 | a | - valign="top" align="left" | 2 | b |
|---|
- valign="top" align="left" | C1 | C2 | - valign="top" align="left" | 1 | a |
|---|
Entrando um dado para uma tabela T, a query Select * from T resultará em todos os elementos de todas as filas da tabela.
Com a mesma tabela, a query Select C1 from T resultará nos elementos da coluna C1 de todas as filas da tabela.
E a query Select * from T where C1=1 resultarão em todos os elementos de todas as filas onde o valor de coluna C1 é '1'.
Primeiro há os elementos da DML (Data Manipulation Language - Linguagem de Manipulação de Dados). A DML é um subconjunto da linguagem usada para selecionar, inserir, atualizar e apagar dados.
COMMIT e ROLLBACK interagem com áreas de controle como transação e locação. Ambos terminam qualquer transação aberta e liberam qualquer cadeado ligado a dados. Na ausência de um BEGIN WORK ou uma declaração semelhante, a semântica de SQL é dependente da implementação.
O segundo grupo é a DDL (Data Definition Language - Linguagem de Definição de Dados). Uma DDL permite ao usuário definir tabelas novas e elementos associados. A maioria dos bancos de dados de SQL comerciais tem extensões proprietárias no DDL.
Os comandos básicos da DDL são:
Alguns sistemas de banco de dados usam o comando ALTER, que permite ao usuário alterar um objeto, por exemplo, adicionando uma coluna a uma tabela existente..
outros comandos DDL:
O terceiro grupo é o DCL (Data Control Language - Linguagem de Controle de Dados). DCL controla os aspectos de autorização de dados e licenças de usuários para controlar quem tem acesso para ver ou manipular dados dentro do banco de dados.
Duas palavras-chaves da DCL:
outros comandos DCL:
Obs.: O SELECT também é considerado um comando DML.
Linguagens de programação | Bancos de dados
SQL | SQL | SQL | SQL | Structured Query Language | SQL | SQL | SQL | SQL | SQL | SQL | Structured Query Language | Teanga Struchtúrtha Iarratas | SQL | SQL programozási nyelv | SQL | SQL | SQL | SQL | SQL | SQL | SQL | SQL | Structured Query Language | SQL | SQL | SQL | SQL | SQL | SQL | SQL | SQL | SQL (мова програмування) | SQL | SQL