Upload
miriam-martinez
View
181
Download
0
Embed Size (px)
Citation preview
Un procedimiento almacenado es un conjunto de comandos
SQL y MYSQL que pueden almacenarse en el servidor. Una vez
que se hace, los clientes no necesitan relanzar los comandos
individuales pero pueden en su lugar referirse al
procedimiento almacenado.
Los procedimientos almacenados pueden mejorar el rendimiento
ya que se necesita enviar menos información entre el servidor y
el cliente
¿Que son los procesamientos almacenados?
Los procedimientos almacenados le permiten tener bibliotecas o
funciones en el servidor de base de datos. Esta característica es
compartida por los lenguajes de programación modernos que
permiten este diseño interno, por ejemplo, usando clases. Usando
estas características del lenguaje de programación cliente es
beneficioso para el programador incluso fuera del entorno de la
base de datos.
Procesamientos almacenados en ACCESS
No soporta almacenamientos almacenados pero podemos
hacer algunas "cositas parecidas", claro que bastante
limitadas, como puede ser el caso de agregar, actualizar,
eliminar y consultar registros en las tablas.
Microsoft SQL Server proporciona el mecanismo de procedimiento almacenado para simplificar el proceso de desarrollo de bases de datos mediante la agrupación de Transact-declaraciones de SQL en bloques
manejables.
Beneficios de procedimientos almacenados
• Ejecución precompilados. SQL Server compila cada procedimiento almacenado unavez y luego reutiliza el plan de ejecución. Esto da un rendimiento tremendo impulsa los
procedimientos almacenados cuando se les llama repetidamente.
•Reducción de cliente / servidor de tráfico. Si el ancho de banda de red es unapreocupación en su entorno, te alegrará saber que los procedimientos almacenadospuede reducir mucho las consultas SQL a una sola línea que se transmite a través delcable.
•La reutilización eficiente de código de programación y la abstracción. Los
procedimientos almacenados pueden ser utilizados por múltiples usuarios y losprogramas cliente. Si usted utiliza de una manera planificada, que encontrarás en el ciclode desarrollo toma menos tiempo.
• Los controles de seguridad mejorada. Puede conceder permisos a
los usuarios para ejecutar un procedimiento almacenado de formaindependiente de los permisos de la tabla subyacente.
Estructura
Los procedimientos almacenados son muy similares a las construcciones vistoen otros lenguajes de programación. Ellos aceptan los datos en forma deparámetros de entrada que se especifican en tiempo de ejecución. Estosparámetros de entrada (si se aplica) se utilizan en la ejecución de una serie dedeclaraciones que producen algún resultado. Este resultado se devuelve almedio ambiente llamada a través de la utilización de un conjunto de registroslos parámetros de salida y un código de retorno.
Vamos a crear un procedimiento llamado sp_GetInventory que recupera losniveles de inventario de un almacén dado. Aquí está el código SQL:
CREATE PROCEDURE sp_GetInventory @ ubicación varchar (10)
As Seleccionar un producto, cantidad Del inventario DONDE Warehouse = @ ubicación
Nuestro jefe de almacén de la Florida puede acceder a los niveles de inventariomediante la emisión de la orden FL sp_GetInventory EXECUTE
Uso de los procedimientos almacenados
Los procedimientos almacenados son de gran utilidad pararealizar tareas frecuentes en una base de datos, es sorprendentela cantidad de tiempo que se puede llegar a ahorrar al hacer usode este mecanismo.
La sintaxis general tomada del manual oficial para crear unprocedimiento almacenado es:
CREATE PROCEDURE nombre_del_procedimiento ([parámetros[,...]])[characteristic ...] cuerpo
Los clientes no necesitan relanzar los comandos individuales pero
pueden en su lugar referirse al procedimiento almacenado.
Algunas situaciones en que los procedimientos almacenados pueden ser
particularmente útiles:
•Cuando múltiples aplicaciones cliente se escriben en distintos lenguajes o
funcionan en distintas plataformas, pero necesitan realizar la misma operación
en la base de datos.
•Cuando la seguridad es muy importante. Los bancos, por ejemplo, usan
procedimientos almacenados para todas las operaciones comunes. Esto
proporciona un entorno seguro y consistente, y los procedimientos pueden
asegurar que cada operación se loguea apropiadamente.
Es reutilizable en el sentido de que se puede
reutilizar una versión compilada del
procedimiento para ejecutar una operación
de base de datos varias veces.
Si sabe que una tarea de base de datos se va
a ejecutar muchas veces o que distintas
aplicaciones van a ejecutar la misma tarea,
el uso de un procedimiento almacenado para
ejecutar dicha tarea puede agilizar las
operaciones de base de datos.