Soluções em Tecnologia da Informação
Mapa do Site
 
PO10g - Banco de Dados Oracle 10g: Programando com PL/SQL
 
Objetivo
Criar stored procedures e functions simples
Tratar erros de runtime
Usar códigos de programação PL/SQL e controlar condicionalmente o fluxo de código (loops, estruturas de controle e cursores explícitos)
Criar instruções SQL dinâmicas para obter maior flexibilidade para o código
Categorizar e usar os packages PL/SQL fornecidos com o Oracle para gerar saída em tela, saída em arquivo, saída na Web e saída em mensagem de e-mail
Descrever os recursos e a sintaxe da linguagem PL/SQL
Criar triggers para resolver desafios em negócios
Gerenciar dependências entre subprogramas PL/SQL
Criar código PL/SQL para estabelecer interface com o banco de dados
Programar jobs PL/SQL para serem executados de forma independente
Desenvolver blocos PL/SQL anônimos que são executados de forma eficiente
Desenvolver packages PL/SQL para agrupar e conter construtos relacionados
 
Descrição
Esta classe se aplica aos usuários do Banco de Dados Oracle8i, Oracle9i e Oracle 10g.
Este curso apresenta a linguagem PL/SQL e ajuda os alunos a compreender os benefícios dessa avançada linguagem de programação. Neste curso, os alunos aprendem a criar blocos de código PL/SQL que podem ser compartilhados por vários forms, relatórios e aplicações de gerenciamento de dados. Os alunos aprenderão a criar blocos PL/SQL anônimos, stored procedures e functions. Eles aprenderão a declarar variáveis e a detectar exceções. Também será mostrado desenvolver stored procedures, functions, packages e triggers de banco de dados. Os alunos aprenderão a gerenciar unidades de programa PL/SQL, gerenciar dependências, manipular objetos grandes e usar alguns dos packages fornecidos com o Oracle. Esses alunos utilizarão o iSQL*Plus para desenvolver essas unidades de programa. As demonstrações e os exercícios práticos reforçam os conceitos fundamentais.
 
Público Alvo
Consultor Técnico
Database Designers
Desenvolvedor em PL/SQL
Forms Developer
PL/SQL Developer
Technical Consultant
 
Conteúdo Programático
INTRODUÇÃO A PL/SQL
• O que é PL/SQL
• Ambiente PL/SQL
• Benefícios do Código PL/SQL
• Visão Geral dos Tipos de blocos PL/SQL
• Criar e Executar um Bloco Anônimo Simples
• Gerar Saída a Partir de um Bloco PL/SQL
• iSQL*Plus como Ambiente de Programação PL/SQL

DECLARANDO IDENTIFICADORES PL/SQL
• Distinguir os Diferentes Tipos de Identificadores em um subprograma PL/SQL
• Usar a Seção Declarativa para Definir Identificadores
• Listar os Usos de Variáveis
• Armazenar Dados em Variáveis
• Declarar Variáveis PL/SQL

CRIANDO INSTRUÇÕES EXECUTÁVEIS
• Descrever Instruções de Bloco Básicas
• Usar Literais em Códigos PL/SQL
• Personalizar Designações de Identificador com Functions SQL
• Usar Blocos Aninhados como Instruções
• Fazer Referência a um Valor Identificador em um Bloco Aninhado
• Qualificar um Identificador com um Label
• Usar Operadores em Códigos PL/SQL
• Usar as Diretrizes e a Sintaxe de Bloco PL/SQL Adequadas

INTERAGINDO COM O ORACLE SERVER
• Identificar as Instruções SQL Que Você Pode Usar em Códigos PL/SQL
• Incluir Instruções SELECT em Códigos PL/SQL
• Recuperar Dados em Códigos PL/SQL com a Instrução SELECT
• Evitar Erros Por Meio de Convenções de Nomeação ao Usar Instruções DML e Recuperação
• Manipular Dados no Servidor Usando Código PL/SQL
• O Conceito de Cursor SQL
• Usar Atributos do Cursor SQL para Obter Feedback em Relação a Códigos DML
• Salvar e Descartar Transações

CRIANDO ESTRUTURAS DE CONTROLE
• Controlar o Fluxo de Execução de Código PL/SQL
• Processamento Condicional Usando Instruções IF
• Processamento Condicional de Instruções CASE
• Tratar Valores Nulos para Evitar Erros Comuns
• Criar Condições Booleanas com Operadores Lógicos
• Usar Controle Iterativo com Instruções em Loop

TRABALHANDO COM TIPOS DE DADOS COMPOSTOS
• Aprender os Tipos de Dados Compostos de Tabelas e Registros PL/SQL
• Usar Registros PL/SQL para Armazenar Diversos Valores de Diferentes Tipos
• Inserindo e Atualizando com Registros PL/SQL
• Usar Tabelas INDEX BY para Armazenar Diversos Valores do Mesmo Tipo de Dados

USANDO CURSORES EXPLÍCITOS
• Loops FOR de Cursor Usando Subconsultas
• Aumentar a Flexibilidade de Cursores Utilizando Parâmetros
• Usar a Cláusula FOR UPDATE para Bloquear Linhas
• Usar a Cláusula WHERE CURRENT para Fazer Referência à Linha Atual
• Usar Cursores Explícitos para Processar Linhas
• Atributos de Cursos Explícitos
• Cursores e Registros

TRATANDO EXCEÇÕES
• Tratando Exceções com PL/SQL
• Exceções Predefinidas
• Detectando Erros Não Predefinidos do Oracle Server
• Functions que Retornam Informações sobre as Exceções Encontradas
• Detectando Exceções Definidas pelo Usuário
• Propagar Exceções
• Usar o Procedure RAISE_APPLICATION_ERROR para Reportar Erros em Aplicações

CRIANDO STORED PROCEDURES
• Descrever blocos PL/SQL e subprogramas
• Descrever os usos de procedures
• Criar procedures
• Distinguir parâmetros formais de reais
• Listar as características dos diferentes modos de parâmetro
• Criar procedures com parâmetros e chamar um procedure
• Tratar exceções em procedures
• Verificar o código-fonte no dicionário de dados

CRIANDO STORED FUNCTIONS
• Descrever stored functions
• Listar a sintaxe de CREATE OR REPLACE FUNCTION
• Identificar as etapas para criar uma stored function
• Criar uma stored function no iSQL*Plus e executar uma stored function
• Identificar as vantagens de utilizar stored functions em instruções SQL
• Identificar as restrições para a chamada de functions a partir de instruções SQL
• Descrever as diferenças entre procedures e functions

CRIANDO PACKAGES
• Listar os benefícios da utilização de packages PL/SQL
• Distinguir uma especificação de package de um package body
• Criar packages
• Incluir construtos públicos e privados em um package
• Chamar construtos públicos e privados em um package
• Remover packages

USANDO MAIS CONCEITOS DE PACKAGE
• Definições de procedures e functions sobrecarregados
• Usar declarações Forward
• Criar um bloco de inicialização de package que será usado uma única vez
• Acompanhar o estado persistente de construtos em packages
• Usar tabelas e registros PL/SQL em packages
• Usar encapsulamento para ocultar o código-fonte

UTILIZANDO OS PACKAGES FORNECIDOS COM O ORACLE NO DESENVOLVIMENTO DE APLICAÇÕES
• Listar os diversos usos para os packages fornecidos pela Oracle
• Usar o comando DESCRIBE para verificar as especificações do package e ocorrências de sobrecarga
• Descrever como DBMS_OUTPUT funciona
• Usar UTL_FILE para direcionar a saída para arquivos do sistema operacional
• Usar o package HTP para gerar uma página Web simples
• Descrever os principais recursos de UTL_MAIL
• Chamar o pacote DBMS_SCHEDULER para programar a execução de código PL/SQL

CÓDIGO SQL DINÂMICO E METADADOS
• Descrever usando código SQL dinâmico nativo
• Listar o fluxo de execução de instruções SQL
• Criar código SQL dinâmico usando a sintaxe EXECUTE IMMEDIATE
• Criar código SQL dinâmico com o package DBMS_SQL
• Gerar código DDL a partir de metadados usando o package DBMS_METADATA

CONSIDERAÇÕES DE PROJETO PARA CÓDIGOS PL/SQL
• Padronizar constantes com um package constante
• Padronizar exceções com um package de exceções
• Criar códigos PL/SQL que utilizam subprogramas locais
• Usar a hint de compilador NOCOPY para especificar parâmetros por referência
• Usar a hint PARALLEL ENABLE para otimização
• Usar o pragma AUTONOMOUS TRANSACTION para executar transações independentes em uma única transação
• Usar o pragma AUTONOMOUS TRANSACTION para executar transações independentes em uma única transação
• Usar binds em alto volume para operações com várias linhas

GERENCIANDO DEPENDÊNCIAS
• Descrever objetos dependentes e referenciados
• Rastrear dependências procedurais com views de dicionário
• Prever o efeito da alteração de um objeto de banco de dados em stored procedures e stored functions
• Gerenciar dependências procedurais locais e remotas

MANIPULANDO LOBS (LARGE OBJECTS)
• Descrever um objeto LOB
• Criar e manter tipos de dados LOB
• Distinguir LOBs internos de externos

CRIANDO TRIGGERS
• Descrever os diferentes tipos de triggers
• Descrever triggers de banco de dados e seu uso
• Criar triggers de banco de dados
• Descrever regras de acionamento de triggers de banco de dados
• Remover triggers de banco de dados

APLICAÇÕES PARA TRIGGERS
• Criar triggers de evento de sistema e de banco de dados
• Criar triggers em instruções DDL
• Usar a instrução CALL em triggers para chamar procedures
• Explicar as regras para ler e gravar dados em tabelas com triggers
• Descrever cenários de aplicação de negócios para implementar triggers
• Gerenciar o código do trigger

COMPREENDENDO E INFLUENCIANDO O COMPILADOR PL/SQL
• Descrever compilação nativa e compilação interpretada
• Listar as características da compilação nativa
• Alternar entre a compilação PL/SQL nativa e a compilação interpretada para código PL/SQL
• Definir os parâmetros para controlar aspectos da compilação PL/SQL
• Criar uma consulta para recuperar informações a partir de views de dicionário referentes a como o código PL/SQL é compilado
• Explicar o mecanismo de advertência do compilador
• Listar as etapas da utilização das advertências do compilador
• Usar DBMS_WARNING para implementar advertências do compilador
 
Pré-Requisitos
Oracle Database 10g: Introduction to SQL
 
Carga Horária
30 horas
 
Material Didático
Material didático oficial da Oracle
 
 

Calendário do Curso
Data Início Data Fim Curso Cidade Turno Confirmado
 
 
 
Curitiba - PR
Rua Emiliano Perneta, 680 - Cjto 901 - Centro / Curitiba - Paraná - Brasil / CEP 80420-080 / Fones: +55 (41) 4062-3300 / 3340-2363
© 2007 SoftSell. Todos os direitos reservados