Procedimientos Almacenados

                                                                                                                                                Eidam Facenda 


Un procedimiento almacenado (stored procedure en inglés) es un programa (o procedimiento) almacenado físicamente en una base de datos. Su implementación varía de un gestor de bases de datos a otro.  

La ventaja de un procedimiento almacenado es que, al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Se aplican en la validación de datos, integrados dentro de la estructura del banco de datos. 

Los procedimientos almacenados usados con tal propósito se llaman comúnmente disparadores, o triggers. Otro uso común es la ‘encapsulación’ de un API para un proceso complejo o grande que podría requerir la ‘ejecución’ de varias consultas SQL, tales como la manipulación de un ‘dataset’ enorme para producir un resultado resumido. También pueden ser usados para el control de gestión de operaciones, y ejecutar procedimientos almacenados dentro de una transacción de tal manera que las transacciones sean efectivamente transparentes para ellos.




Los procedimientos almacenados ofrecen ventajas importantes: Las ventajas de un procedimiento almacenado, en respuesta a una petición de usuario, está directamente bajo el control del motor del gestor de bases de datos, que corre generalmente en un servidor distinto del servidor web, aumentando con ello la rapidez de procesamiento de las peticiones del usuario. 

Generalmente los procedimientos almacenados lo que hacen es mejorar el rendimiento, puesto que con poca información (la que introducen los usuarios) generan una rápida y eficiente respuesta, teniendo en cuenta que en dicha base de datos puede existir un gran número de bibliotecas.


Rendimiento: al ser ejecutados por el motor de base de datos ofrecen un rendimiento inmejorable ya que no es necesario transportar datos a ninguna parte. 

Potencia: El lenguaje para procedimientos almacenados es muy potente. Permiten ejecutar operaciones complejas en pocos pasos ya que poseen un conjunto de instrucciones avanzado. 

Centralización: al formar parte de la base de datos los procedimientos almacenados están en un lugar centralizado y pueden ser ejecutados por cualquier aplicación que tenga acceso a la misma.

El servidor de la base de datos tiene acceso directo a los datos necesarios para manipular y sólo necesita enviar el resultado final al usuario.

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.

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 




Trabajo de Procedimientos almacenados 














Comentarios

Entradas más populares de este blog

Diagrama Conceptual y Lógico de la Base de Datos Expreso MAS

Reglas de normalización en el modelo de base de datos, Forma normal de Boice Codd FNBC.

Agradecimiento