Prévia do material em texto
Linguagem de Programação Procedural Prof. Ildo Ramos Vieira Graduado em ciências de computação – UFC Especialista em Segurança de Informação - IGTI Mestre em ciências de computação - UFC Doutorando em Engenharia de Teleinformática - UFC AULA PASSADA Captura de Erros Captura de Erros PL/PGSQL Cursor: ● Áreas de memória utilizadas pelo PostgreSQL para armazenar registros enquanto eles são processados. ● Usados para percorrer as relacões e processar conjuntos de dados. ● Postgres: Tipo refcursor PL/PGSQL Declaração de Cursor: PL/PGSQL Abrir cursor: OPEN FOR SELECT OPEN FOR EXECUTE PL/PGSQL ➔ FETCH Cursor: ◆ Navegar no cursor. Uso do cursor 1. Declarar ( declare ) 2. Abrir ( open ) 3. Navegar/ Atribuir os valores ( fetch ) 4. Fechar ( close ) * Postgres: invocação de função com cursor deve ocorrer dentro de transação Abrir cursor para SELECT ❏ Cursor sem limite ( cursor refcursor ) ❏ Consulta sem apóstrofo Abrir cursor para SELECT FETCH Cursor Abrir cursor IS SELECT Abrir cursor para SELECT Abrir cursor para SELECT Abrir cursor para EXECUTE ➢ Cursor sem limite ➢ Palavra reservada EXECUTE ➢ EXECUTE pede string ( usar apóstrofo ) ➢ Situações de SQL dinâmico ( passagem dos parâmetros como tabela , comando ) ➢ Pode-se usar uma variável que armazena o texto de um comando/cláusula SQL Abrir cursor para EXECUTE Abrir cursor para EXECUTE Abrir cursor para EXECUTE Retornando uma Tabela Retornando uma Tabela Exercício ➢ Crie uma Function que: ○ Recebe como parâmetro: ■ O pid de um projeto (varchar) ■ Um determinado número de horas (integer) ➢ Para cada empregado (tupla) existente na tabela Empregado: ○ Insere uma nova tupla na tabela Tarefa, usando como valores o cpf do empregado e os dois parâmetros de entrada (pid do projeto e número de horas); Exercício Exercício Exercício Exercício