Comandos SQL
(parte 1)
SQL
- L. M. del Val Cura
1
SQL
• SQL –Structured Query Language
• Baseado em Algebra Relacional com alguns aspectos de Calculo Relacional
• Estabelecido como linguagem de consulta padrão em SGBD Relacionais.
• Refere-se a SQL como linguagem de consulta, mas inclui outras definições em Bancos de Dados.
SQL
- L. M. del Val Cura
2
1
SQL – Histórico
• 1974 – Definido SEQUEL ( Structured English
Query Language) no IBM San Jose Reseach
Center
• 1975 – Primeiro protótipo de SEQUEL
• 1977 – System R (IBM) torna operacional
SEQUEL/2.
• 1977 Oracle é lançado com linguagem de
Consulta à SEQUEL.
• 1983 - IBM lança DB2. SQL se converte no padrão “de fato”.
SQL
- L. M. del Val Cura
3
SQL – Histórico (cont)
• 1986-87 ANSI e ISSO definem SQL como padrão de linguagens relacionais.
• 1989 – SQL incorpora características de reforço de integridade (SQL/89). Mínimo implementado pela grande maioria de SGBD atuais. • 1992 – ANSI/ISSO apresentam a padrão
SQL/2
• 1999 – Apresentado o padrão SQL/3
SQL
- L. M. del Val Cura
4
2
SQL - Formas de uso
• Interativamente
• Embutido em Linguagens de
Programação para desenvolvimento de aplicações. Ex: Embedded SQL,
• Como parâmetro em funções de interfaces de aplicação (APIs)
Ex: ODBC
SQL
- L. M. del Val Cura
5
SQL – Recursos Básicos
• DDL – (Data Definition Language)
– Definição, Remoção e modificação de Esquemas
Relações (Esquemas Relacionais)
– Definição de visões
– Especificação de direitos de acesso e proteção dos dados – Especificação de restrições de integridade
• DML (Data Manipulation Language)
– Especificação de Consultas
– Inserção, remoção e atualização de dados (tuplas)
SQL
- L. M. del Val Cura
6
3
Especificação de Consultas
Forma geral:
SELECT A1, A2, ... , An
FROM r1, r2, ... , rm
WHERE P
Onde
A : atributos i rj : relações
P : predicado
Equivalente à expressão da Algebra Relalcional