Saltar al contenido

Procedimientos almacenados de SQL

septiembre 23, 2021

¿Qué es un procedimiento almacenado?

Un procedimiento almacenado es un código SQL preparado que puede guardar, por lo que el código se puede reutilizar una y otra vez.

Entonces, si tiene una consulta SQL que escribe una y otra vez, guárdela como un procedimiento almacenado y luego llámela para ejecutarla.

También puede pasar parámetros a un procedimiento almacenado, de modo que el procedimiento almacenado pueda actuar en función de los valores de parámetro que se pasan.

Sintaxis del procedimiento almacenado

CREAR PROCEDIMIENTO nombre_procedimiento
COMO
sql_statement
IR;

Ejecutar un procedimiento almacenado


Base de datos de demostración

A continuación se muestra una selección de la tabla «Clientes» en la base de datos de muestra de Northwind:

Identificación del cliente Nombre del cliente Nombre de contacto Dirección Ciudad Código postal País
1 Alfreds Futterkiste María Anders Obere Str. 57 Berlina 12209 Alemania
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México DF 05021 México
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México DF 05023 México
4 Alrededor del Cuerno Thomas Hardy 120 Hannover Sq. Londres WA1 1DP Reino Unido
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå Vuela-Salto-958 22 Suecia

Ejemplo de procedimiento almacenado

La siguiente instrucción SQL crea un procedimiento almacenado llamado «SelectAllCustomers» que selecciona todos los registros de la tabla «Clientes»:

Ejemplo

CREAR PROCEDIMIENTO Seleccionar todos los clientes
COMO
SELECCIONAR * DE Clientes
IR;

Ejecute el procedimiento almacenado anterior de la siguiente manera:

Ejemplo

EXEC SelectAllCustomers;



Procedimiento almacenado con un parámetro

La siguiente instrucción SQL crea un procedimiento almacenado que selecciona Clientes de una Ciudad en particular de la tabla «Clientes»:

Ejemplo

CREAR PROCEDIMIENTO SelectAllCustomers @City nvarchar (30)
COMO
SELECCIONAR * DE Clientes DONDE Ciudad = @Ciudad
IR;

Ejecute el procedimiento almacenado anterior de la siguiente manera:

Ejemplo

EXEC SelectAllCustomers @City = ‘Londres’;


Procedimiento almacenado con varios parámetros

Configurar múltiples parámetros es muy fácil. Simplemente enumere cada parámetro y el tipo de datos separados por una coma como se muestra a continuación.

La siguiente instrucción SQL crea un procedimiento almacenado que selecciona Clientes de una Ciudad en particular con un Código Postal particular de la tabla «Clientes»:

Ejemplo

CREAR PROCEDIMIENTO SelectAllCustomers @City nvarchar (30), @PostalCode nvarchar (10)
COMO
SELECCIONE * DE Clientes DONDE City = @City Y PostalCode = @PostalCode
IR;

Ejecute el procedimiento almacenado anterior de la siguiente manera:

Ejemplo

EXEC SelectAllCustomers @City = ‘Londres’, @ PostalCode = «WA1 1DP»;

close