Oracle - O ciclo de vida de um cursor

Introdução

Um bom conhecimento do ciclo de vida e do funcionamento dos cursores permitirá que você otimize os aplicativos que executam consultas SQL.

Observe que : "Um cursor é um procedimento que lhe permite atribuir um nome a uma" instrução SELECT "e alterar as informações dentro da instrução SQL"

Começando

Os passos na execução de um cursor são:

  • Abrindo um cursor: a memória é alocada para o cursor na memória privada do processo do servidor (no lado do servidor) associado à sessão (UGA User Global Area). Observe que nenhuma consulta SQL está associada ao cursor por enquanto.
  • Caminho do cursor: uma consulta SQL está associada a ele. A representação da rota da solicitação, incluindo seu plano de implementação, que descreve como o mecanismo SQL executa a instrução SQL é carregada no Shared Pool, no cache da biblioteca . A estrutura na UGA é atualizada para armazenar um ponteiro para a área associada ao cursor no cache da biblioteca.
  • Definição de variáveis ​​de saída: a consulta SQL retorna dados, portanto as variáveis ​​relacionadas ao devem ser definidas. Essa definição também é necessária para solicitações DELETE, INSERT e UPDATE (usando a cláusula RETURNING).
  • Vinculando variáveis ​​de entrada: se a consulta SQL usa variáveis, elas devem ser fornecidas. Nenhuma verificação é feita no link. Se valores inválidos forem passados, um erro de tempo de execução será acionado.
  • Execução do cursor: neste estágio, o SQL é executado. Dependendo do mecanismo do banco de dados, a fase da implementação real pode ser adiada no momento da busca.
  • Buscar cursor (recuperação de conteúdo): Se a consulta SQL retornar um resultado, ela será recuperada. Em geral, é nesse estágio que o tratamento ocorre.
  • Fechando o cursor : o cursor associado aos recursos na UGA é liberado automaticamente. O cursor no cache da biblioteca não é excluído em resposta a possíveis usos futuros.
Artigo Anterior Próximo Artigo

Principais Dicas