Gestión Avanzada de Procedimientos Almacenados en SQL Server: Tipos, Ejecución y Parámetros

Clasificado en Informática

Escrito el en español con un tamaño de 2,95 KB

Procedimientos Almacenados en SQL Server: Tipos y Gestión

Nomenclatura y Unicidad

Los nombres de los procedimientos deben ser únicos dentro de cada base de datos y para el usuario que los crea.

Tipos de Procedimientos Almacenados

Procedimientos Almacenados Temporales

Son creados por el usuario y almacenados en la base de datos (*bbdd*) tempdb. Son temporales porque **SQL Server** los elimina de forma automática al desconectar la sesión en la que han sido creados. Para crearlos, debemos anteponer el símbolo `#` a su nombre.

Procedimientos Almacenados Extendidos

Son programas **DLL** escritos en *C++* y se almacenan en la base de datos `master`. Su nombre comienza por xp_ o sp_.

Creación y Ejecución de Procedimientos

Creación y Almacenamiento

Los procedimientos se crean mediante la instrucción CREATE PROCEDURE. Cuando se crea un procedimiento, sus propiedades quedan almacenadas en la tabla del sistema Sysobjects y su definición en la tabla del sistema Syscomments.

Fases de Ejecución en SQL Server

Con los procedimientos almacenados, SQL Server lleva a cabo tres pasos fundamentales:

  1. Análisis Sintáctico: Cuando creamos un procedimiento almacenado, SQL Server lo examina para verificar que su **sintaxis** sea correcta.

  2. Resolución de Nombres: Cuando se ejecuta un procedimiento, SQL Server comprueba la existencia de todos los objetos a los que hace referencia. Esta característica se denomina **Resolución Diferida de Nombres** y permite crear procedimientos que hagan referencia a objetos aún no creados.

  3. Optimización: SQL Server busca un **plan de ejecución optimizado**, procurando hallar el mejor modo de ejecutar cada una de las instrucciones que contiene el procedimiento.

Encriptación de Procedimientos

Se pueden **encriptar** procedimientos para que su definición no pueda ser leída por ningún usuario. Para poder acceder a la definición, es necesario disponer del **código fuente** original.

Uso y Clases de Parámetros

Los procedimientos almacenados pueden comunicarse con las aplicaciones o los clientes a través de **parámetros**. En los procedimientos, los parámetros son definidos justo después del nombre del procedimiento. El primer carácter del parámetro debe ser `@`, seguido del nombre. A continuación, hay que indicar el **tipo de dato**. Es posible asignarles un **valor por defecto** o predeterminado.

Clases de Parámetros

  • Parámetros de Entrada (Input): Son similares a una variable pasada por valor. Si se pasa una variable como parámetro de un procedimiento y dentro de este el valor de la variable sufre alguna modificación, el valor de la variable fuera del procedimiento...

Entradas relacionadas: