Diferença Entre Visualização E Procedimento Armazenado

Índice:

Diferença Entre Visualização E Procedimento Armazenado
Diferença Entre Visualização E Procedimento Armazenado

Vídeo: Diferença Entre Visualização E Procedimento Armazenado

Vídeo: Diferença Entre Visualização E Procedimento Armazenado
Vídeo: Como Funciona as Visualizações? [Entenda as Views] - Gerenciamento de Youtube 2024, Abril
Anonim

Ver vs procedimento armazenado

Exibições e procedimentos armazenados são dois tipos de objetos de banco de dados. As visualizações são uma espécie de consultas armazenadas, que reúnem dados de uma ou mais tabelas. Aqui está a sintaxe para criar uma visão

criar ou substituir view viewname

Como

select_statement;

Um procedimento armazenado é um conjunto de comandos SQL pré-compilado, que é armazenado no servidor de banco de dados. Cada procedimento armazenado possui um nome de chamada, que é usado para chamá-los dentro de outros pacotes, procedimentos e funções. Esta é a sintaxe (em ORACLE) para criar um procedimento armazenado, criar ou substituir o procedimento procedurename (parâmetros)

é

início

afirmações;

exceção

manipulação de exceção

fim;

Visão

Uma visualização atua como uma mesa virtual. Ele esconde uma instrução select dentro de seu corpo. Esta instrução select pode ser muito complexa, que obtém dados de várias tabelas e visualizações. Portanto, em outras palavras, uma visão é uma instrução de seleção nomeada, que é armazenada no banco de dados. Uma visão pode ser usada para ocultar a lógica por trás das relações de tabela dos usuários finais. Como uma visualização é o resultado de uma consulta armazenada, ela não mantém nenhum dado. Ele reúne dados das tabelas e programas de base. As visualizações também desempenham um papel importante na segurança dos dados. Quando o proprietário da tabela precisa mostrar apenas um conjunto de dados aos usuários finais, criar uma visualização é uma boa solução. As visualizações podem ser divididas em duas categorias

  • Visualizações atualizáveis (visualizações que podem ser usadas para INSERT, UPDATE e DELETE)
  • Visualizações não atualizáveis (visualizações que não podem ser usadas para INSERT, UPDATE e DELETE)

As visualizações atualizáveis não podem incluir seguidores, Definir operadores (INTERSECT, MENUS, UNION, UNION ALL)

DISTINTO

Funções de agregação de grupo (AVG, COUNT, MAX, MIN, SUM, etc.)

Cláusula GROUP BY

Cláusula ORDER BY

Cláusula CONNECT BY

Cláusula START WITH

Expressão de coleção em uma lista de seleção

Subconsulta em uma lista de seleção

Consulta de adesão

Procedimento armazenado

Os procedimentos armazenados são chamados de blocos de programação. Eles devem ter um nome para chamar. Os procedimentos armazenados aceitam parâmetros como entrada do usuário e processam de acordo com a lógica por trás do procedimento e fornecem o resultado (ou executam uma ação específica). Declarações de variáveis, atribuições de variáveis, instruções de controle, loops, consultas SQL e outras funções / chamadas de procedimento / pacote podem estar dentro do corpo de procedimentos.

Qual é a diferença entre View e Stored Procedure?

Vamos ver as diferenças entre esses dois.

• As visualizações atuam como tabelas virtuais. Eles podem ser usados diretamente no fechamento das consultas SQL (selecionar), mas os procedimentos não podem ser usados no fechamento das consultas.

• As visualizações têm apenas uma instrução select como seu corpo, mas os procedimentos podem ter declarações de variáveis, atribuições de variáveis, instruções de controle, loops, consultas SQL e outras funções / procedimentos / chamadas de pacote como seu corpo.

• O procedimento aceita parâmetros para execução, mas as visualizações não querem que os parâmetros sejam executados.

• Os tipos de registro podem ser criados a partir de visualizações usando% ROWTYPE, mas usando procedimentos, os tipos de registro não podem ser criados.

• As dicas SQL podem ser usadas dentro da instrução view select, para otimizar o plano de execução, mas as dicas SQL não podem ser usadas em procedimentos armazenados.

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK e DEBUG podem ser concedidos em visualizações, mas apenas EXECUTE e DEBUG podem ser concedidos em procedimentos.

Recomendado: