Cómo crear procedimientos almacenados para su base de datos

Cómo crear procedimientos almacenados para su base de datos

Cómo crear procedimientos almacenados para su base de datos

VALORACIÓN DEL ARTÍCULO:
5/5


Microsoft SQL Server proporciona el mecanismo de procedimiento almacenado para simplificar el proceso de desarrollo de la base de datos agrupando las sentencias Transact-SQL en bloques manejables. Los procedimientos almacenados son apreciados por la mayoría de los desarrolladores de SQL Server, quienes consideran que los beneficios de eficiencia y seguridad que obtienen valen la inversión inicial en tiempo.

Beneficios del uso de procedimientos almacenados

¿Por qué un desarrollador debe utilizar los procedimientos almacenados? Aquí están los beneficios clave de esta tecnología:

  • Ejecución precompilada: SQL Server compila cada procedimiento almacenado una vez y luego reutiliza el plan de ejecución. Esto resulta en un tremendo aumento del rendimiento cuando los procedimientos almacenados se llaman repetidamente.
  • Tráfico cliente/servidor reducido: Si el ancho de banda de red es una preocupación en su entorno, le agradará saber que los procedimientos almacenados pueden reducir las largas consultas SQL a una sola línea que se transmite por cable.
  • Reutilización eficiente de código y abstracción de programación: Los procedimientos almacenados pueden ser utilizados por varios usuarios y programas cliente. Si los utiliza de forma planificada, descubrirá que el ciclo de desarrollo lleva menos tiempo.
  • Controles de seguridad mejorados: Puede conceder a los usuarios permiso para ejecutar un procedimiento almacenado independientemente de los permisos de la tabla subyacente.

Los procedimientos almacenados son similares a las funciones definidas por el usuario, pero hay diferencias sutiles.

Estructura

Los procedimientos almacenados son similares a las construcciones vistas en otros lenguajes de programación. Aceptan datos en forma de parámetros de entrada que se especifican en el momento de la ejecución. Estos parámetros de entrada (si se implementan) se utilizan en la ejecución de una serie de sentencias que producen algún resultado. Este resultado se devuelve al entorno de llamada mediante el uso de un conjunto de registros, parámetros de salida y un código de retorno. Eso puede sonar como un bocado, pero encontrará que los procedimientos almacenados son en realidad bastante simples.

Ejemplo

Veamos un ejemplo práctico relacionado con la tabla denominada inventario que se muestra al final de esta página. Esta información se actualiza en tiempo real, y los gerentes de almacén comprueban constantemente los niveles de productos almacenados en su almacén y disponibles para su envío. En el pasado, cada gerente realizaba consultas similares a las siguientes:

SELECCIONE el producto, Cantidad
FROM Inventario
WHERE Warehouse = ‘FL’

Esto resultó en un rendimiento ineficiente en el SQL Server. Cada vez que un jefe de almacén ejecutaba la consulta, el servidor de base de datos se veía obligado a recompilar la consulta y a ejecutarla desde cero. También requería que el gerente del almacén tuviera conocimiento de SQL y los permisos apropiados para acceder a la información de la tabla.
En cambio, el proceso puede simplificarse mediante el uso de un procedimiento almacenado. Aquí está el código para un procedimiento llamado sp_GetInventory que recupera los niveles de inventario para un almacén determinado.

CREATE PROCEDURE sp_GetInventory
@location varchar(10)
AS
SELECCIONE el producto, Cantidad
FROM Inventario
WHERE Warehouse = @location

El gerente del almacén de Florida puede acceder a los niveles de inventario emitiendo el comando:

EXECUTE sp_GetInventory ‘FL’

El jefe de almacén de Nueva York puede utilizar el mismo procedimiento almacenado para acceder al inventario de esa área:

EXECUTE sp_GetInventory ‘NY’

Es cierto que este es un ejemplo simple, pero los beneficios de la abstracción se pueden ver aquí. El jefe de almacén no necesita entender SQL ni el funcionamiento interno del procedimiento. Desde una perspectiva de rendimiento, el procedimiento almacenado hace maravillas. El SQL Server crea un plan de ejecución una vez y luego lo reutiliza conectando los parámetros apropiados en el momento de la ejecución.
Ahora que ha aprendido los beneficios de los procedimientos almacenados, salga y úselos. Pruebe algunos ejemplos y mida las mejoras de rendimiento logradas: ¡se sorprenderá!

Tabla de inventario

ID Producto Almacén Cantidad 142Judías verdesNY100214PeasFL200825CornNY140512Judías LimaNY180491TomatesFL80379SandiaFL85

TAMBIÉN TE INTERESA

la-IA-estará-detrás-de-todas-nuestras-compras-online

En poco tiempo, la IA estará detrás de todas nuestras compras online…

No sería descabellado pensar que la IA estuviera detrás de todas nuestras compras online en no mucho tiempo. El sector se mueve en estos momentos para proponer soluciones a los ecommerce y el cliente final termina por dejarse guiar por un sistema que va más allá de unas simples recomendaciones. Y es que las herramientas

precio-OPPO-A18

OPPO A18, no se puede pedir más a un móvil por ese precio…

OPPO acaba de lanzar al mercado el nuevo OPPO A18, un smartphone que podrá ser nuestro por una cifra irrisoria en el sector: 139 euros. No hay truco, ese el coste de un teléfono que tiene muchos argumentos para seducir a cualquiera. Evidentemente, no es un gama premium, pero si un gama media de lo

nube-personal-BeeStation

BeeStation o cómo crear una nube personal en tu casa en un periquete

La mayoría de los usuarios de dispositivos móviles utilizan uno más servicios de cloud disponibles en el mercado para el almacenamiento de los archivos. Con la llegada de la nube, el almacenamiento de los móviles y de los equipos informáticos ha pasado a un segundo plano, de manera que ya no es tan importante cuantos

anillo-inteligente-Rikki

Anillo inteligente: dos nuevas propuestas (una ya a la venta y otra en espera)

El anillo inteligente se va haciendo, poco a poco, un hueco en el mercado. Hasta ahora son pocas las referencias que existen, aunque existen algunas destacadas como el Anillo Circular, del que ya hemos hablado en este medio. En el horizonte, empiezan a surgir nuevas propuestas, llamando la atención del desarrollo que prepara Samsung y

presoterapia

La tecnología acerca la presoterapia a los domicilios con nuevos dispositivos

La presoterapia es una técnica terapéutica utilizada en el campo de la medicina estética y la fisioterapia para mejorar la circulación sanguínea y linfática, reducir la retención de líquidos, eliminar toxinas y favorecer la eliminación de la celulitis. Consiste en la aplicación de presión controlada sobre diferentes partes del cuerpo mediante el uso de dispositivos

Apple Vision Pro

Vision Pro: La revolución tecnológica que está conquistando España

Apple Vision Pro es la última revolución en la computación espacial. Integrando contenido digital y el mundo físico, ofrece experiencias de entretenimiento impactantes y captura recuerdos con su primera cámara tridimensional. A pesar de algunas debilidades, ha generado gran expectación en redes sociales y se ha convertido en un fenómeno social único. Descubre sus características,