Diferencia entre la vista y el procedimiento almacenado

Diferencia entre la vista y el procedimiento almacenado

Ver procedimiento almacenado
 

Las vistas y los procedimientos almacenados son dos tipos de objetos de base de datos. Las vistas son una especie de consultas almacenadas, que recopilan datos de una o más tablas. Aquí, está la sintaxis para crear una vista

crear o reemplazar el nombre de vista de vista

como

select_statement;

Un procedimiento almacenado es un conjunto de comandos SQL pre compilado, que se almacena en el servidor de la base de datos. Cada procedimiento almacenado tiene un nombre de llamada, que se utiliza para llamarlos dentro de otros paquetes, procedimientos y funciones. Esta es la sintaxis (en Oracle) para crear un procedimiento almacenado,

crear o reemplazar el procedimiento de procedimiento (parámetros)

es

comenzar

declaraciones;

excepción

manejo de excepciones

fin;

Vista

Una vista actúa como una mesa virtual. Oculta una declaración selecta dentro de su cuerpo. Esta declaración de selección puede ser muy compleja, que toma datos de varias tablas y vistas. Por lo tanto, en otras palabras, una vista es una declaración selecta con nombre, que se almacena en la base de datos. Se puede usar una vista para ocultar la lógica detrás de las relaciones de la tabla de los usuarios finales. Dado que una vista es el resultado de una consulta almacenada, no mantiene ningún dato. Reúne datos de las tablas base y muestra. Las vistas también juegan un papel importante en la seguridad de los datos. Cuando el propietario de la tabla necesita mostrar solo un conjunto de datos a los usuarios finales, crear una vista es una buena solución. Las vistas se pueden dividir en dos categorías

  • Vistas actualizables (las vistas se pueden usar para insertar, actualizar y eliminar)
  • Vistas no actualizables (vistas que no se pueden usar para insertar, actualizar y eliminar)

Las vistas actualizables no pueden incluir seguidores,

Operadores establecidos (Intersect, Minus, Union, Union All)

DISTINTO

Funciones agregadas grupales (AVG, Count, Max, Min, suma, etc.)

Grupo por cláusula

Ordenar por cláusula

Conectarse por cláusula

Comience con la cláusula

Expresión de colección en una lista de selección

Sub consulta en una lista de selección

Unir consultas 

Procedimiento almacenado

Los procedimientos almacenados se denominan bloques de programación. Deben tener un nombre para llamar. Los procedimientos almacenados aceptan parámetros como entrada y proceso del usuario de acuerdo con la lógica detrás del procedimiento y dan el resultado (o realizan una acción específica). Declaraciones variables, asignaciones variables, declaraciones de control, bucles, consultas SQL y otras funciones/procedimientos/llamadas de paquete pueden estar dentro del cuerpo de procedimientos. 

Cuál es la diferencia entre Vista y procedimiento almacenado?

Veamos las diferencias entre estos dos.

• Las vistas actúan como tablas virtuales. Se pueden usar directamente en el cierre de las consultas SQL (seleccionar), pero los procedimientos no se pueden usar desde el cierre de las consultas.

• Las vistas solo tienen una declaración selecta como su cuerpo, pero los procedimientos pueden tener declaraciones variables, asignaciones variables, declaraciones de control, bucles, consultas SQL y otras funciones/procedimientos/llamadas de paquete como su cuerpo.

• El procedimiento acepta parámetros para ejecutar, pero las vistas no quieren que los parámetros se ejecuten.

• Los tipos de registro se pueden crear a partir de vistas utilizando % RowType, pero utilizando procedimientos, no se pueden crear tipos de registro.

• Los sugerencias SQL se pueden usar dentro de la instrucción Select View, para optimizar el plan de ejecución, pero las sugerencias de SQL no se pueden usar en procedimientos almacenados.

• Eliminar, insertar, actualizar, seleccionar, flashback y depurar se pueden otorgar en vistas, pero solo se ejecuta y depuración se puede otorgar en procedimientos.