Procedimientos Almalcenados
Un procedimiento almacenado de SQL Server es un grupo de una
o más instrucciones Transact-SQL o una referencia a un método de Common Runtime
Language (CLR) de Microsoft .NET Framework. Los procedimientos se asemejan a
las construcciones de otros lenguajes de programación, porque pueden:
Aceptar parámetros de entrada y devolver varios valores en
forma de parámetros de salida al programa que realiza la llamada.
Contener instrucciones de programación que realicen
operaciones en la base de datos. Entre otras, pueden contener llamadas a otros
procedimientos.
Devolver un valor de estado a un programa que realiza una
llamada para indicar si la operación se ha realizado correctamente o se han
producido errores, y el motivo de estos.
Ventajas de usar procedimientos almacenados:
En la siguiente lista se describen algunas de las ventajas
que brinda el uso de procedimientos.
Tráfico de red reducido entre el cliente y el servidor:
Los comandos de un procedimiento se ejecutan en un único lote de código. Esto
puede reducir significativamente el tráfico de red entre el servidor y el
cliente porque únicamente se envía a través de la red la llamada que va a
ejecutar el procedimiento. Sin la encapsulación de código que proporciona un
procedimiento, cada una de las líneas de código tendría que enviarse a través de
la red.
Mayor seguridad:
Varios usuarios y programas cliente pueden realizar operaciones en los objetos
de base de datos subyacentes a través de un procedimiento, aunque los usuarios
y los programas no tengan permisos directos sobre esos objetos subyacentes. El
procedimiento controla qué procesos y actividades se llevan a cabo y protege
los objetos de base de datos subyacentes. Esto elimina la necesidad de conceder
permisos en cada nivel de objetos y simplifica los niveles de seguridad.
Tipos de procedimientos almacenados:
Definidos por el usuario:
Un procedimiento definido por el usuario se puede crear en una base de datos
definida por el usuario o en todas las bases de datos del sistema excepto en la
base de datos Resource . El procedimiento se puede desarrollar en
Transact-SQL o como una referencia a un método de Common Runtime Language (CLR)
de Microsoft .NET Framework.
Temporales:
Los procedimientos temporales son una forma de procedimientos definidos por el
usuario. Los procedimientos temporales son iguales que los procedimientos
permanentes salvo porque se almacenan en tempdb. Hay dos tipos de
procedimientos temporales: locales y globales. Se diferencian entre sí por los
nombres, la visibilidad y la disponibilidad. Los procedimientos temporales
locales tienen como primer carácter de sus nombres un solo signo de número (#);
solo son visibles en la conexión actual del usuario y se eliminan cuando se
cierra la conexión. Los procedimientos temporales globales presentan dos signos
de número (##) antes del nombre; son visibles para cualquier usuario después de
su creación y se eliminan al final de la última sesión en la que se usa el
procedimiento.
Sistema:
Los procedimientos del sistema se incluyen con SQL Server. Están almacenados
físicamente en la base de datos interna y oculta Resource y se
muestran de forma lógica en el esquema sys de cada base de datos
definida por el sistema y por el usuario. Además, la base de datos msdb también
contiene procedimientos almacenados del sistema en el esquema dbo que
se usan para programar alertas y trabajos. Dado que los procedimientos del
sistema empiezan con el prefijo sp_ , le recomendamos que no use este
prefijo cuando asigne un nombre a los procedimientos definidos por el usuario.
SQL Server admite los procedimientos del sistema que
proporcionan una interfaz de SQL Server a los programas externos para varias
actividades de mantenimiento. Estos procedimientos extendidos usan el prefijo.
Extendidos definidos por el usuario:
Los procedimientos extendidos le permiten crear sus propias rutinas externas en
un lenguaje de programación como puede ser C. Estos procedimientos son DLL que
una instancia de SQL Server puede cargar y ejecutar dinámicamente.

Comentarios
Publicar un comentario