? De referência ( REF ) cursores são tipos de dados PL /SQL que usam conjuntos de registros como um parâmetro e retornam os registros após a manipulação pelo PL /SQL procedimentos armazenados ou funções . Por causa de sua capacidade de ser reutilizado em outras rotinas , cursores de referência oferecem um alto grau de escalabilidade e flexibilidade , ao contrário de cursores regulares que são limitados em escopo para os blocos do programa em que são declarados. Definição
Um cursor REF é um tipo de dados PL /SQL que é usado como um parâmetro em PL /SQL procedimentos armazenados e funções . Os programadores usam cursores REF para buscar e manipular os registros no banco de dados , geralmente através de uma instrução SELECT com campos e variáveis que correspondem aos encontrados no cursor. Cursores REF usar a memória do servidor para retornar somente leitura resultados em uma consulta.
Vantagens
cursores REF sentar-se em um pool de memória compartilhada e são acessíveis a PL /SQL armazenados procedimentos no banco de dados. Esta modularidade permite que outros programas de acesso à variável cursor sem ter que declarar uma nova matriz de dados ou variável de cursor e assim, retardar os processos de dados. Porque ele senta em uma poça de memória compartilhada , o tempo de processamento também diminuir como resultado.
REF cursor Tipos
Existem dois tipos de cursores REF . O primeiro , chamado de cursor REF forte, especifica os valores e tipos de colunas retornadas em um conjunto de registros. Isto pode ser útil para programadores que precisam de controle sobre a saída de dados. O segundo , chamado de cursor REF fraco, especifica nenhum tipo de retorno . Cursores REF fracos usar o curinga "*" para coletar todos os campos dentro de um conjunto de registros . Cursores fracos são intercambiáveis e podem ser associados a resultados de uma consulta sem manipulação considerável.
Passos na Definição de um Cursor REF
Um cursor REF requer três elementos na sua declaração . Em primeiro lugar , o pacote de programa de PL /SQL deve ser criado . Em segundo lugar, o cursor REF deve ser chamado ou definido no bloco PL /SQL. Finalmente , os programadores criar consultas dentro do pacote de programas para acessar os componentes codificados pelo cursor REF e retornam um conjunto de dados válido.
Sintaxe usada para declarar e usar um REF Cursor
os programadores deve definir o cursor REF sob a instrução DECLARE , como no seguinte :
DeclareType EmpCurTyp é REF cURSOR RETURN empregado % rowtype ;
Uma vez que o programador declara o cursor , é aberta para uso em qualquer bloco PL /SQL. Os programadores podem testar a viabilidade de novas declarações , passando o cursor como um parâmetro em um bloco PL /SQL que faz referência o tipo de parâmetro REF CURSOR . No código, os programadores podem usar " OPEN- FOR, " " BUSCAR " e "Fechar" dentro do corpo do pacote para realizar manipulações de dados , como no seguinte :
PROCEDIMENTO process_pay ; declarações de processo usando OPEN- FOR, FETCH e perto ; END;