PostgreSQL Procedural - PL/pgSQL, Functions, Trigger Procedures e Rules
Duração:
20hs
Capacitar os alunos a criar, executar e manter funções em linguagem SQL e PL/pgSQL, triggers e rules.
Objetivos
- Criar, executar funções SQL e PL/pgSQL
- Dar manutenção em funções SQL e PL/pgSQL
- Criar triggers e rules
- Dar manutenção em triggers e rules
- Converter um sistema em Oracle PL/SQL para PostgreSQL PL/pgSQL
Pré-requisitos
- Experiência com a utilização de uma interface gráfica para usuário (windows ou linux)
- Familiaridade com conceitos e técnicas de processamento de dados
- Noções de Informática
- Conhecimentos de Lógica de Programação
- Noções básicas do Sistema Operacional Linux ou curso T@rget Administração de Sistemas Linux
- Curso PostgreSQL Fundamentos
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
- Programadores
- Profissionais do Suporte Técnico
- Web Developers
- Web Managers
Conteúdo
1. Funções
- Introdução
- Criando uma Função
- Verificando uma Função
- Removendo uma Função
- Funções SQL
- Usando Funções SQL
- Usando Funções SQL com Tipos de Dados Compostos
- Retornando um Tipo de Dado Composto
- Funções Internas
- Funções em Linguagem C
- Sobrecarga de Funções
- Funções em Linguagem Procedural
- Tabelas Utilizadas no Curso
2. PL/pgSQL: Visão Geral
- O que é PL/pgSQL?
- Vantagens de usar PL/pgSQL
- Como Desenvolver em PL/pgSQL?
- Estrutura básica do PL/pgSQL
- Características do PL/pgSQL
- Comentários
3. Declarando Variáveis
- Como Utilizar Variáveis em PL/pgSQL
- Declarando Variáveis em PL/pgSQL
- Tipos de Variáveis
- Regras de Nomenclatura
- Convenções de Nomenclatura
- Variáveis Booleanas
- Alias para Parametros de Funções
- Atribuição de Valores
- Atributo %TYPE
- Declarando Variáveis Registros
- Atributo %ROWTYPE
- Record
- Passando Registros como Parametro
- Variáveis polimórficas
4. Escrevendo Comandos PL/pgSQL
- Sintaxe e Diretrizes de um Bloco PL/pgSQL
- Funções SQL em PL/pgSQL
- Executando Funções PL/pgSQL
- Conversão de Tipos de Dados
- Blocos Aninhados e Escopo de Variáveis
- Operadores em PL/pgSQL
- Diretrizes de Programação
- Identando o Código
- Determine o Escopo das Variáveis
5. Executando Comandos SQL em PL/pgSQL
- Comandos SQL em PL/pgSQL
- Comandos SELECT em PL/pgSQL
- Diretrizes
- Recuperando Dados em PL/pgSQL
- Manipulando Dados Utilizando PL/pgSQL
- Inserindo Dados
- Atualizando Dados
- Quantidade de linhas afetadas
- Removendo Dados
- Convenções de Nomenclatura
- Conferindo a execução de comandos SQL
- Comandos DDL e DCL
6. Estruturas de Controle
- Controlando o Fluxo de Execução PL/pgSQL
- Comandos IF
- Comandos IF Simples
- Comandos IF-THEN-ELSE
- Fluxo de Execução do Comando IF-THEN-ELSE
- Comandos IF-THEN-ELSIF
- Fluxo de Execução do Comando IF-THEN-ELSIF
- Construindo Condições Lógicas
- Tabelas de Lógica
- Condições Booleanas
- Controle de Repetições: Comandos de LOOP
- LOOP Básico
- FOR LOOP
- WHILE Loop
- LOOPs Aninhados e Labels
7. Tratando Erros
- Níveis de notificação
- Gerando mensagens
- Capturando erros
8. Cursores Explícitos
- Cursores
- Cursores Explícitos
- Controlando Cursores Explícitos
- Declarando o Cursor
- Abrindo um Cursor
- Recuperando Dados do Cursor
- Fechando um Cursor
- Resultados de Cursores
- FOR LOOP sobre o resultado de uma consulta
- Utilizando RETURN NEXT
9. SQL Dinâmico em PL/pgSQL
- Conceito
- Usando SQL Dinâmico
- O Comando EXECUTE
- Utilizando o Comando EXECUTE
- Os Comandos OPEN-FOR-EXECUTE e FOR-IN-EXECUTE
10. Triggers Procedures
- Triggers - Visão Geral
- Elementos de uma Database Trigger
- Triggers em Nível de Linha e em Nível de Comando
- Criando uma Trigger
- Funções PL/pgSQL que são executadas por Triggers
- Variáveis disponíveis em funções PL/pgSQL
- Triggers em Nível de Linha
- Valores OLD e NEW
- Exemplo do Uso de Triggers em Nível de Linha
- Criando uma Trigger em Nível de Comando
- Removendo uma Trigger
- Gerenciando Triggers
11. Rules
- Rules
- Diretrizes para o uso de Rules
- Substituindo Comandos SQL
- Cancelando Comandos SQL
- Rules SELECT - Implementado Visões
- Usando Rules em visões
- Restrições do uso de Rules
- Usando funções PL/pgSQL com Rules
- Gerenciando Rules
12. Matrizes
- Como Usar Matrizes em PostgreSQL
- Uso de matrizes em PL/pgSQL