Está en la página 1de 2

2.3 Procedimientos almacenados utilizando parámetros.

Los ejemplos de procedimientos almacenados con los que hemos trabajado hasta
este momento, son procedimientos que se manejan un tanto fijos, es decir, que
hicimos un procedimiento para agregar un registro que solamente nos funciona
para ese registro en particular: Si deseamos agregar otro, entonces debemos
crear otro procedimiento almacenado. El manejo de los procedimientos
almacenados de esta manera, se convierten muy difíciles de administrar porque
son en cierta manera estáticos. Sólo funcionan una vez y no es una manera
práctica de utilizarlos.

Para sacarle el verdadero provecho a los procedimientos almacenados debemos


trabajarlos utilizando parámetros, a través de los cuales pasaremos los valores.

Ahora crearemos un procedimiento almacenado para la creación de productos, es


decir, el mismo procedimiento almacenado lo utilizaremos para crear todos los
productos necesarios, lo que cambia en la ejecución serán los valores que se le
envían al procedimiento.

Para nuestro ejemplo consideremos una tabla de una base de datos, la tabla tiene
las siguientes características:

Veamos el ejemplo:

CREATE PROCEDURE AgregarProducto


@cod_prod char(10),
@nom_prod char(40),
@precio numeric(7,2),
@costo numeric(7,2)
AS
INSERT INTO productos
(cod_prod, NOM_PROD, precio, costo) VALUES
(@cod_prod, @nom_prod, @precio, @costo)
1
Comentario: Observe que creamos variables en el procedimiento, estas inician
con @, estas variables tienen las mismas características de los campos a los que
se hace referencia en la tabla, es decir, es preferible utilizar su mismo nombre, tipo
y longitud.

Después del AS en el primer paréntesis se definen los campos a los cuales les
envía los parámetros y en el segundo paréntesis se detallan los valores de cada
campo, exactamente en el mismo orden como han sido detallados, siempre
respetando los tipos y longitudes.

Ahora ejecutemos el procedimiento almacenado:

Execute AgregarProducto '001','prod 001', 100, 80

Ahora crearemos otro producto

Execute AgregarProducto '002','prod 002', 150, 125

También podría gustarte