Software  
 
Conhecimento computador >> Software >> Software de banco de dados >> 
Como usar um cursor para REC em um loop no Oracle
da Oracle cursores explícitos - aqueles que você deve declarar fisicamente - permitem remover a limitação de " linha única " de instruções SELECT comuns. Em vez de copiar e armazenar valores de coluna nas variáveis ​​instrução SELECT uma linha de cada vez, cursores explícitos permitem que você execute uma consulta, armazenar uma coleção de valores na memória e voltar e processar cada registro individualmente. Isto não só reduz o tempo de processamento , mas também reduz a quantidade de código que você precisa para escrever. Automatizar o processo e reduzir ainda mais os requisitos de codificação usando um cursor para loop de rec para percorrer e recuperar vários registros de banco de dados . Instruções
1

Criar ou declarar o cursor como normal , dando-lhe um nome único, vinculando-o a uma instrução SELECT comum e , em seguida, anexá-lo para a seção de declaração de sua função ou processo. A instrução SELECT pode ser simples ou pode ser mais complexa , como um ONDE /instrução SELECT /GROUPBY . Se, por exemplo , você quer usar um cursor para loop de rec para buscar o salário mensal atual de cada um dos seus funcionários e , em seguida, um total destes valores, a instrução de declaração será exibido como :

CREATE OR REPLACE SalaryExpense Função ( name_in IN varchar2 ) número RETURN varchar2IStotal_val (6);

DECLARAR cursor salary_cursor isselect monthly_salaryfrom employeeswhere name = name_in ;

BEGIN

(Referência 1 página 6, 7 e Referência 2)
2

Escreva uma declaração de looping que abre automaticamente o cursor , os acessos a cada registro de funcionário , extrai a informação mensal de salário , você precisa calcular sua despesa de salário mensal e adiciona cada valor para um total em execução. Quando o ciclo chega ao último registro , ele fecha automaticamente o cursor :

total_monthy_salary : = 0;

PARA employee_rec em salary_cursorLOOPtotal_monthy_salary : = total_monthy_salary + employee_rec.monthly_salary ; END LOOP ;


3

Exibir os resultados e acabar com a função ou processo :

DEVOLVER total_monthy_salary ; END;

Anterior :

Próximo : No
  Os artigos relacionados
·DB2 e Desigualdade Usos do Índice 
·Você pode executar um banco de dados Oracle 9 Com uma …
·Oracle SQL * Plus Limites 
·Frequent Padrão Códigos Mineração 
·Os efeitos de auto referências em SGBD 
·Como construir um banco de dados para trabalhar com Col…
·As Vantagens e Desvantagens do proprietário e de códi…
·My Oracle Database Connections foram usados ​​devido a …
·Diferenças entre RAND & RANDBETWEEN 
·Diferença entre internos e externos ameaças a um banc…
  Artigos em destaque
·Como gravar Igreja Sermões Usando Audacity 
·Como usar um FIREPOD 
·Como salvar música em um DVD 
·Como gravar AVI direto para DVD 
·Como sincronizar Usando MediaMonkey 
·Como instalar um backup do MS Office 2007 
·Como desinstalar o Kit Major Defense 
·Como parar Antivírus Malware Ataques 
·Como alterar um Downloaded Real Player Tipo de Arquivo 
·Como executar um Sistema de Recuperação de backup de …
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados