Introdução
SQL (Structured Query Language, ou Linguagem de Consulta Estruturada) é a principal linguagem utilizada para manipulação, consulta e administração de bancos de dados relacionais.
Características da Linguagem SQL
- Linguagem declarativa: você descreve o que deseja obter dos dados, e não como obter.
- Sintaxe simples e próxima da linguagem natural, facilitando o aprendizado e uso.
- Padronizada por órgãos como ANSI e ISO, garantindo compatibilidade entre diferentes sistemas de gerenciamento de banco de dados (SGBDs).
- Permite manipulação de dados (inserção, atualização, exclusão) e definição de estruturas (criação de tabelas, índices, permissões).
- Suporte a transações, garantindo integridade e confiabilidade dos dados
No SQL, os comandos são organizados em subconjuntos conforme sua finalidade. Em baixo, as principais diferenças e funções de cada um:
| Sigla | Nome (em inglês) | Nome (em português) | Finalidade Principal | Exemplos de Comandos |
|---|---|---|---|---|
| DDL | Data Definition Language | Linguagem de Definição de Dados | Define e gere a estrutura do banco de dados (tabelas, colunas, índices, etc.) | CREATE, ALTER, DROP, TRUNCATE, RENAME |
| DML | Data Manipulation Language | Linguagem de Manipulação de Dados | Manipula os dados dentro das tabelas (inserir, atualizar, excluir registros) | INSERT, UPDATE, DELETE |
| DQL | Data Query Language | Linguagem de Consulta de Dados | Consulta dados armazenados na base de dados, sem alterar seu conteúdo | SELECT |
| DCL | Data Control Language | Linguagem de Controle de Dados | Controla permissões e segurança de acesso à base de dados | GRANT, REVOKE, DENY |
| TCL/DTL | Transaction Control Language / Data Transaction Language | Linguagem de Controle de Transações / Linguagem de Transação de Dados | Gere transações, garantindo integridade e consistência das operações | BEGIN, COMMIT, ROLLBACK, SAVEPOINT |
SQL Standard
A linguagem SQL é considerada um padrão (standard) para bases de dados relacionais, tendo sido padronizada inicialmente pelo ANSI em 1986 e posteriormente pela ISO689. Isso significa que existe uma base comum de comandos e funcionalidades que todos os principais Sistemas de Gestão de Bases de Dados (SGBDs) procuram seguir, como SELECT, INSERT, UPDATE e DELETE.
No entanto, apesar dessa padronização, cada SGBD (como Oracle, MySQL, SQL Server, PostgreSQL) costuma implementar extensões e funcionalidades próprias, criando pequenas variações conhecidas como “dialetos” do SQL4. Essas diferenças podem incluir comandos adicionais, tipos de dados exclusivos ou variações na sintaxe, o que pode afetar a portabilidade de scripts entre diferentes sistemas.
Portanto, SQL é sim uma linguagem padrão e comum a todos os SGBDs relacionais, mas com particularidades e extensões específicas em cada sistema. Para tarefas básicas e intermediárias, o SQL padrão costuma ser suficiente para garantir compatibilidade, mas para recursos avançados ou específicos, pode ser necessário adaptar o código ao SGBD utilizado.
Neste site usamos a versão standard do SQL.
