# Introdução ao SQL/O que é SQL

SQL (do inglês Structured Query Language, ou Linguagem de Consulta Estruturada), é uma linguagem de pesquisa declarativa para Bancos de Dados Relacionais (base de dados relacional).

## História do SQL

O SQL foi desenvolvido originalmente no início dos anos 70 nos laboratórios da IBM em San Jose, dentro do projeto w:System R, que tinha por objetivo demonstrar a viabilidade da implementação do modelo relacional proposto por E. F. Codd. O nome original da linguagem era SEQUEL, acrônimo para "Structured English Query Language" (Linguagem de Consulta Estruturada em Inglês), vindo daí o fato de, até hoje, a sigla, em inglês, ser comumente pronunciada "síquel" ao invés de "és-kê-él", letra a letra. No entanto, em português, a pronúncia mais corrente é a letra a letra: "ése-quê-éle".

## SQL como linguagem padrão

A linguagem SQL é um grande padrão de banco de dados. Isto decorre da sua simplicidade e facilidade de uso. Ela se diferencia de outras linguagens de consulta a banco de dados no sentido em que uma consulta SQL especifica a forma do resultado e não o caminho para chegar a ele. Ela é uma linguagem declarativa em oposição a outras linguagens procedurais. Isto reduz o ciclo de aprendizado daqueles que se iniciam na linguagem.
Embora o SQL tenha sido originalmente criado pela IBM, rapidamente surgiram vários "dialetos" 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 w:American National Standards Institute (ANSI) em 1986 e ISO em 1987.
SQL foi revisto em 1992 e a esta versão foi dado o nome de SQL-92. Foi revisto novamente em 1999 para se tornar SQL-99 (também chamado de SQL3) e em 2003 (SQL:2003).
No entanto embora o SQL, seja 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.

## Como funciona este curso

Neste curso estudaremos a linguagem SQL de forma genérica. Porém é indispensável que o estudante possua um sistema de SGBD para aplicar os conhecimentos aqui aprendidos. Existem diversos sistemas no mercado, mas recomenda-se o uso de sistemas livres como MySQL e o Firebird pela facilidade de uso. O estudante deve no entanto saber que alguns comandos e sintaxes podem variar de SGBD para SGBD, e por isto é recomendado a leitura do tutorial do SGBD para devidas adaptações.
Por convenção, utilizamos a sintaxe seguida do símbolo #. Isto significa que o usuário deve clicar a tecla ENTER e não que deva digitar este símbolo. Quando for necessário digitar especificamente este símbolo, será mencionado explicitamente na lição.

## Resumo

* SQL é uma linguagem de pesquisa declarativa para Bancos de Dados Relacionais.
* SQL foi desenvolvido originalmente no início dos anos 70 nos laboratórios da IBM e tinha por objetivo demonstrar a viabilidade da implementação do modelo relacional proposto por E. F. Codd.
* SQL é uma linguagem declarativa em oposição a outras linguagens procedurais.

## Exercícios

Você estará apto a ir para a próxima lição acertando 100% dos exercícios abaixo (3 questões):