Curso de Oracle 11g: Fundamentals I - SQL e SQL*PLUS
Duração:
24h
Curso Oracle 11g Fundamentals I - Introdução, conceitos, criação de estruturas, SQL e SQL*PLUS.
Objetivos
- Consultar os dados armazenados no banco de dados
- Criar e manter objetos de banco de dados, assim como armazenar, recuperar e manipular dados
- Controlar transações
- Utilizar funções de banco de dados
- Utilizar comandos básicos de SQL*PLUS
- Utilizar o SQL*PLUS para formatar relatórios
- Este treinamento é aplicável a usuários Oracle 8i, Oracle 9i e Oracle 10g
Pré-requisitos
- Conhecimentos de Lógica de Programação (curso T@rgetTrust Lógica de Programação)
- Noções de Sistemas Operacionais
- Noções de Modelagem de Sistemas
Público alvo
- Administradores de Dados
- Administradores de Banco de Dados
- Administradores de Sistema Operacional e Redes
- Analistas de Sistemas
- Arquitetos de Sistemas e Projetistas
- Desenvolvedores de Aplicações
- Diretores de Informática
- Gerentes de Informática
- Gerentes de Suporte
- Profissionais do Suporte Técnico
- Programadores
Conteúdo
1. Introdução
- Objetivos
- Ciclo de Vida do Desenvolvimento de Sistemas
- Armazenamento de Dados em Diferentes Mídias
- Conceito de Banco de Dados Relacional
- Definição de Banco de Dados Relacional
- Modelos de Dados
- Modelo Entidade-Relacionamento
- Convenções do Modelo Entidade-Relacionamento
- Terminologia Utilizada em Bancos de Dados Relacionais
- Relacionando Múltiplas Tabelas
- Propriedades de um Banco de Dados Relacional
- Comunicando com um SGDB utilizando SQL
- Sistema de Gerenciamento de Banco de Dados
- Conheça o Mundo Oracle
- Oracle11g: SGBD Objeto Relacional
- Solução Oracle
- Comandos SQL
- Tabelas Utilizadas no Curso
2. Introdução ao comando SELECT utilizando o SPL*PLUS e o Oracle SQLDeveloper
- Objetivos
- Características do Comando SQL SELECT
- Comando SELECT Básico
- Escrevendo Comandos SQL
- Selecionando todas as Colunas
- Selecionando Colunas Específicas
- Padrões de Cabeçalho de Colunas
- Oracle SQL Developer
- Expressões Aritméticas
- Utilizando Operadores Aritméticos
- Precedência dos Operadores
- Precedência utilizando Parênteses
- Definindo um Valor Nulo
- Valores Nulos em Expressões Aritméticas
- Definindo um Alias de Coluna
- Utilizando Alias de Colunas
- Operador de Concatenação
- Strings de Caracteres Literais
- Operador alternativo para aspas (Alternative Quote operator)
- Linhas Duplicadas
- Eliminando Linhas Duplicadas
- Interação entre SQL e SQL*Plus
- Visão Geral do SQL*Plus
- Conectando com o SQL*Plus
- Conectando com o SQLDeveloper
- Utilizando o SQLDeveloper
- Exibindo a Estrutura de Tabelas no SQL*PLUS
- Exibindo a Estrutura de Tabelas no SQLDeveloper
- Tipos de Dados
- Principais Comandos de Arquivo do SQL*Plus
3. Restringindo e Ordenando Dados
- Objetivos
- Limitando as Linhas Selecionadas
- Utilizando a Cláusula WHERE
- Strings de Caractere e Datas
- Operadores de Comparação
- Utilizando os Operadores de Comparação
- Outros Operadores de Comparação
- Operador BETWEEN
- Operador IN
- Operador LIKE
- Operador IS NULL
- Operadores Lógicos
- Operador AND
- Operador OR
- Operador NOT
- Regras de Precedência
- Cláusula ORDER BY
- Classificando em Ordem Descendente
- Ordenando pelo Alias de Coluna
- Ordenando pela posição numérica da coluna
- Ordenando por Múltiplas Colunas
4. Funções Single Row, Funções de Conversão e Expressões de Condição
- Objetivos
- Funções SQL Single Row
- Tipos de Funções SQL
- Funções do Tipo Single-Row
- Funções single-row
- Funções de Caracteres
- Funções de Conversão entre Maiúsculas/Minúsculas
- Funções de Manipulação de Caracteres
- Utilizando as Funções de Manipulação de Caracteres
- Funções Numéricas
- Utilizando a Função ROUND
- Utilizando a Função TRUNC
- Utilizando a Função MOD
- Trabalhando com Datas
- Formato Padrão de Datas
- Cálculos com Datas
- Utilizando Operadores Aritméticos com Datas
- Funções de Data
- Utilizando Funções de Data
- Funções de Conversão
- Conversão Explícita de Tipos de Dados
- Função TO_CHAR com Datas
- Elementos de Formatação de Datas
- Utilizando a Função TO_CHAR com Datas
- Funções TO_NUMBER e TO_DATE
- Utilizando a Função CAST
- Função NVL
- Função NVL2
- Utilizando a Função NVL e NVL2
- Utilizando a Função NULLIF
- Utilizando a Função COALESCE
- Uso de CASE no SELECT
- Função DECODE
- Utilizando a Função DECODE
- Aninhando Funções
5. Exibindo Dados a Partir de Múltiplas Tabelas
- Objetivos
- Obtendo Dados a Partir de Múltiplas Tabelas
- O que é um Join?
- Produto Cartesiano
- Gerando um Produto Cartesiano
- Tipos de Joins
- O que é um Equijoin?
- Recuperando Registros com Equijoins
- Qualificando Nomes de Colunas Ambíguos
- Condições Adicionais de Pesquisa com o Operador AND
- Utilizando Alias de Tabela
- Relacionando várias Tabelas
- Non-Equijoins
- Recuperando Registros com Non-Equijoins
- Outer Joins
- Recuperando Registros sem Correspondência Direta Utilizando Outer Joins
- Utilizando Outer Joins
- Self Joins
6. Utilizando Funções de Grupo e Formando Grupos
- Objetivos
- O que são Funções de Grupo?
- Tipos de Funções de Grupo
- Utilizando Funções de Grupo
- Utilizando as Funções AVG e SUM
- Utilizando as Funções MIN e MAX
- Utilizando a Função COUNT
- Funções de Grupo e Valores Nulos
- Utilizando a Função NVL com Funções de Grupo
- Criando Grupos de Dados
- Criando Grupos de Dados: Cláusula GROUP BY
- Utilizando a Cláusula GROUP BY
- Agrupando por mais de uma coluna ou expressões
- Utilizando a Cláusula GROUP BY em Múltiplas Colunas
- Consultas Ilegais Utilizando Funções de Grupo
- Cláusula Having
- Selecionando Grupos utilizando a cláusula Having
- Aninhando Funções de Grupo
7. Variáveis de Substituição e Variáveis de ambiente do SQL*Plus
- Objetivos
- Variáveis de Substituição
- Utilizando Variáveis de Substituição com (&)
- Utilizando o Comando SET VERIFY
- Valores Caractere e Data com Variáveis de Substituição
- Especificando Nomes de Colunas, Expressões e Textos em Tempo de Execução
- Utilizando Variáveis de Substituição com (&&)
- Definindo Variáveis
- O Comando ACCEPT
- Utilizando o Comando ACCEPT
- Comandos DEFINE e UNDEFINE
- Utilizando o Comando DEFINE e UNDEFINE
- Variáveis de Ambiente do SQL*Plus
- Variáveis do Comando SET
8. Sub-consultas
- Objetivos
- Utilizando uma Sub-consulta para Resolver um Problema
- Sub-consultas
- Utilizando uma Sub-consulta
- Diretrizes para Utilização de Sub-consultas
- Tipos de Sub-consultas
- Sub-consultas Single-Row
- Multiplas Sub-consultas Single-Row
- Utilizando Funções de Grupo em uma Sub-consulta
- Utilizando a cláusula Sub-consultas na cláusula HAVING
- Erros utilizando Operador single row
- Este Comando Funcionará?
- Sub-consultas do Tipo Multiple-Row
- Utilizando o Operador ANY em Sub-consultas Multiple-Row
- Utilizando o Operador ALL em Sub-consultas Multiple-Row
- Sub-consultas Multiple-Column
- Utilizando Sub-consultas Multiple-Column
- Utilizando uma Sub-consulta na Cláusula FROM
- Cuidado com Sub-consultas que retornam NULL
9. Operadores SET
- Objetivos
- Operadores SET
- União - UNION
- Utilizando vários operadores SET
- Interseção - INTERSECT
- Diferença - MINUS
10. Manipulando Dados
- Objetivos
- Linguagem de Manipulação de Dados
- Comando INSERT
- Inserindo Novas Linhas
- Inserindo Linhas com Valores Nulos
- Inserindo Valores Especiais
- Inserindo Valores de Data Específicos
- Inserindo Valores Utilizando Variáveis de Substituição
- Criando um Scripts SQL com Prompts Customizados
- INSERT utilizando uma sub-consulta
- Comando UPDATE
- Alterando Linhas em uma Tabela
- UPDATE utilizando uma sub-consulta
- Atualizando Linhas: Erro de Constraint de Integridade
- Comando DELETE
- Removendo Linhas de uma Tabela
- DELETE utilizando uma sub-consulta
- Removendo Linhas: Erro de Constraint de Integridade
- Transações de Banco de Dados
- Vantagens do COMMIT e ROLLBACK
- Controlando Transações
- Processamento Implícito de Transações
- Situação dos Dados Antes do COMMIT ou ROLLBACK
- Situação dos Dados Após o COMMIT
- Efetivando os Dados
- Situação dos Dados Após o ROLLBACK
- Utilizando Savepoints
- Rollback ao Nível de Comando
- Leitura Consistente
- Implementação de Leitura Consistente
- Lock
11. Criando e Gerenciando Tabelas
- Objetivos
- Objetos do Banco de Dados
- Convenções de Nomes
- Comando CREATE TABLE
- Opção DEFAULT
- Criando Tabelas
- Consultando o Dicionário de Dados
- Tipos de Dados
- Criando uma Tabela Utilizando uma Sub-consulta
- Criando uma Tabela a Partir de uma sub-consulta
- Comando ALTER TABLE
- Adicionando uma Coluna
- Modificando uma Coluna
- Removendo uma Coluna
- Renomeando uma Coluna
- ALTER TABLE READY ONLY
- ALTER TABLE READY READ WRITE
- Renomeando uma Tabela
- Renomeando um Objeto
- Truncando uma Tabela
- Adicionando Comentários para Tabelas e Colunas
12. Implementando Constraints
- Objetivos
- O Que são Constraints?
- Diretrizes para Constraints
- Constraint NOT NULL
- Constraint PRIMARY KEY
- Constraint UNIQUE KEY
- Constraint FOREIGN KEY
- Palavras Chave de Constraints FOREIGN KEY
- Constraint CHECK
- Adicionando uma Constraint
- Removendo uma Constraint
- Desabilitando Constraints
- Habilitando Constraints
- Visualizando Constraints
- Visualizando as Colunas Associadas com Constraints
13. Criando Visões
- Objetivos
- O que é uma Visão?
- Porquê Utilizar Visões?
- Visões Simples e Visões Complexas
- Criando uma Visão
- Efetuando consultas utilizando uma Visão
- Consultando as Visões existentes
- Modificando uma Visão
- Criando uma Visão Complexa
- Removendo uma Visão
- Regras para Executar Operações DML em uma Visão
- Impedindo Operações DML em Visões
14. Outros Objetos do Banco de Dados
- Objetivos
- O que é uma Sequence?
- Comando CREATE SEQUENCE
- Criando uma Sequence
- Consultando as Sequences definidas
- Pseudocolunas NEXTVAL e CURRVAL
- Utilizando uma Sequence
- Modificando uma Sequence
- Diretrizes para Modificar uma Sequence
- Removendo uma Sequence
- O que é um Índice?
- Como os Índices são Criados?
- Criando um Índice
- Diretrizes para a Criação de Índices
- Consultando os Índices
- Removendo um Índice
- Sinônimos
- Criando e Removendo Sinônimos
Apêndice I - Comandos do SQL*Plus
- Objetivos
- Comandos de Edição do SQL*Plus
- Comandos de Formatação do SQL*Plus
- Comando COLUMN
- Utilizando o Comando COLUMN
- Máscaras do Comando COLUMN
- Utilizando o Comando BREAK
- Utilizando os Comandos TTITLE e BTITLE
- Criando um Arquivo de Script para Executar um Relatório
- Relatório de Exemplo
Apêndice II - Soluções dos Exercícios