SQL - Structured Query Language
SQL - Structured Query Language
Filipe Mulua
Criando um banco de dados
Incluindo, atualizando e excluindo
linhas nas tabelas
Pesquisa básica em tabelas
Cálculos e funções usuais
Pesquisa em múltiplas tabelas
Subconsultas
Pesquisa avançada
2
Definição de dados
Criação de tabelas
Integridade referencial – Constraints
Alteração de estrutura de tabela
Excluindo uma tabela
Criação de índices
Laboratório
3
Incluindo dados em tabelas
Atualizando dados em tabelas
Excluindo dados de tabelas
Controle básico de transações
laboratório
4
Ordenando o resultado
Filtrando linhas
laboratório
5
CÁLCULO E
FUNÇÕES
Cálculos
Numéricos
Alfanuméricos
Manipulação de datas
Funções de grupo
Conversão de tipo
Agrupando resultado
laboratório
SUBCONSULTA
S
7
PESQUISA
AVANÇADA
UNION
UNION ALL
EXCEPT/DISTINCT/MINUS
INSERTED
Expressões CASE
CASE compacto
Expressões COALESCE
Laboratório 8
INTRODUÇÃO
10
HISTÓRIC
O
Inicialmente chamada de SEQUEL (Structured
English Language), a linguagem SQL foi concebida
e desenvolvida pela IBM, utilizando os conceitos de
Codd (1974). Em 1977 passou é ser chamada de
SQL. Em 1979, a Relational Software Inc., hoje
Oracle Corporation, lançou a primeira versão
comercial da linguagem SQL.
11
HISTÓRICO –
CONTINUAÇÃO
A SQL pode ser considerada um padrão para
manipulação de dados em banco de dados. Duas
entidades:
ANSI (American National Standards Institute)
ISO (International Standards Organization)
SQL – 86 (ANSI)
SQL – 89 – modificações
significativas (BD
atuais)
SQL – 92
SQL – 99 –
SQL3 (BD 12
objeto-
relacional)
O QUE É SQL?
14
SQL
GRANT – REVOKE
CREATE SCHEMA
15
Para iniciar o trabalho de criação do
banco de dados, deve-se inicialmente
transformar o modelo lógico (DER), no
modelo físico que será implementado.
O processo consiste em simplesmente
atribuir tipos de dados e tamanho
para cada um dos atributos que
foram identificados.
16
ANTES DE CRIAR AS TABELAS NO NOSSO
BANCO DE DADOS, TEMOS QUE DEFINIR
QUAIS SÃO AS CARACTERÍSTICAS DE
CADA UM DOS CAMPOS. AS
CARACTERÍSTICAS QUE O SQL EXIGE SÃO
O TIPO E O TAMANHO DE CADA CAMPO.
17
Tipo de dado Descrição
INTEGER OU INT Número positivo ou negativo inteiro.
SMALLINT Mesma função do INT, mas ocupa a metade do espaço.
NUMERIC Número positivo ou negativo. Deve-se informar o tamanho
do campo e casas decimais.
DECIMAL Semelhante a NUMERIC, em alguns casos tem maior
precisão em casas decimais.
REAL Número de ponto flutuante de simples
precisão(Exponencial).
DOUBLE PRECISION Número de ponto flutuante de dupla precisão.
D D D D D C C C C C B B B B B A A A A A
- - + + - - + + - _ + + - _ + +
- + - + - + - +
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
CRIANDO
TABELAS
Exemplo:
ONDE
Ação – CASCADE – NO ACTION
José Antônio - CEFET-RN 24/07/2013 26
CONSTRAINT MAIS
COMUNS
Chave estrangeira (Foreign key)
...
Quantidade INT default 1,
...
...
Nome_Cliente varchar(50) not null,
...
...
CPF numeric(11) UNIQUE,
...
Exemplo:
Exemplo:
• modificando colunas:
• Exemplo:
Excluindo elementos:
Excluindo elementos:
Exemplos(SQL Server):
Usando o Query Analyzer do SQL Server, crie o banco de dados Cadastro_CD, com a
seguintes estrutura de tabelas:
Gravadora CD Faixa
Codigo_gravadora int codigo_cd int codigo_cd int
Nome_gravadora varchar(60) codigo_grvadora int codigo_musica int
Endereco varchar(60) nome varchar(60) numero_faixa int
Telefone varchar(10) preco_venda decimal(14,2)
Contato varchar(20) data_lancamento datetime
URL varchar(80) cd_indicado int
Usando o Query Analyzer do SQL Server, crie o banco de dados Cadastro_CD, com a
seguintes estrutura de tabelas e crie o diagrama do slide seguinte com o Enterprise
Manager:
Autor
Codigo_autor int
Nome_autor
varchar(60)
José Antônio - CEFET-RN 24/07/2013 41
LABORAT
ÓRIO