Banco de Dados: Jordana S. Salamon
Banco de Dados: Jordana S. Salamon
Jordana S. Salamon
[email protected]
[email protected]
DEPARTAMENTO DE INFORMÁTICA
CENTRO TECNOLÓGICO
UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO
A Linguagem SQL
• Todo Banco de Dados apresenta uma Linguagem para definição e uma para
manipulação de dados.
• SQL - Structured Query Language
• Com relação aos Bancos de Dados Relacionais, é a linguagem mais utilizada
• abrange tanto comandos de definição quanto comandos de manipulação de dados.
• A SQL foi criada pela IBM.
• Apresenta algumas extensões e variações em seus comandos de um SGBD (Sistema
de Gerência de Banco de Dados) para outro, porém mantendo um determinado
padrão.
Vantagens do uso:
Independência de fabricante
Portabilidade entre computadores
Redução dos custos com treinamento
Inglês estruturado de alto nível
Consulta interativa
Múltiplas visões dos dados
Definição dinâmica dos dados
SQL - Comandos
Definição de Dados: DDL
Criar (Create)
Excluir (Drop)
Modificar (Alter)
Rollback Desfaz, em caso de falha do sistema, qualquer alteração que ainda não
tenha sido efetivada, de modo que a integridade do BD seja mantida. Permite ao
usuário desfazer qualquer alteração antes de um COMMIT .
LDD - Linguagem de Definição de Dados
(ou DDL)
Update Produto
set val_unit = 1.62
where descrição_produto = ´Chocolate´;
Update Vendedor
set salário_fixo = (salário_fixo * 1.27) + 100;
SQL – Excluindo Registros
Observações:
• Quando a coluna é do tipo caractere, o <valor> deve estar
entre aspas ( ‘ ). Ex.: ‘PARAFUSO’.
Observações – Comando Select:
Select *
from cliente
where IE IS NULL
SQL - Ordenando Dados Selecionados
Quando se realiza uma seleção, os dados recuperados não estão ordenados.
Select COUNT(*)
from vendedor
Where salário_fixo > 2500;
SQL - Utilizando Funções: COUNT
Única função que usa * como parâmetro;
Conta o número de linhas na tabela (cardinalidade);
Select nome
from empregado
Where (Select COUNT(*)
from dependente
Where matric = matric_E) >= 2; /*mais de 2 dependentes*/
SQL - Utilizando Cláusula Distinct
Podemos utilizar as cláusulas LIKE, NOT LIKE, IN, NOT IN, NULL, NOT NULL e
misturá-las com os operadores AND, OR e NOT, dentro de uma cláusula
WHERE na junção entre tabelas.
SQL - Recuperando Dados de Várias Tabelas
Problema: Quais clientes que têm prazo de entrega superior a 15 dias e que
pertencem aos estados de São Paulo (SP) ou Rio de Janeiro (RJ) ?
Chamada de
Equação de Junção
SQL - Tipos de Junção
Seja: empregado <matric, noem depto, salario, ger>
departamento <numd, nomed>