Está en la página 1de 9

CREANDO PROCEDIMIENTOS ALMACENADOS

1- Abrimos una nueva consulta (un nuevo scrip)

Una vez creado el nuevo scrip comenzamos a programar

2- Primero creamos procedimientos almacenados para la tabla Cliente


de nuestra base de datos SistemaGimnasio. El procedimiento a
continuación se llama SP_InsertarCliente , primero declaramos
las variables globales como en nuestra trabla cliente.
A continuación ejecutamos nuestro procedimiento almacenado
para ellos utilizamos el comando Exec + el nombre del
procedimiento + los valores a insertar en comillas simples estos
últimos, pero a como observamos en la imagen en el atributo
Cod_Cliente y Edad (recuadro verde) los dejamos vacío dado que
más adelante utilizamos cursores para crear códigos automáticos
y calcular la edad del cliente.

Ahora veamos el resultado de la ejecución de nuestro


procedimiento almacenado SP_InsertarCliente.

En esta primera captura podemos observar el registro de todos los


clientes ya insertado

En esta otra captura observemos el resultado de la ejecución del


procedimiento almacenado anteriormente.
3- Procedimiento almacenado SP_BuscarPorCodigo con este
procedimiento almacenado permite buscar a los clientes por su
código (Atributo Cod_Cliente), para ellos creamos nuestros
procedimiento Create Procedure SP_BuscarPorCodigo ,
declaramos nuestra variable local @Cod_Cliente Varchar (10),
luego seleccionamos la tabla de Cliente.

Ahora ejecutamos nuestro procedimiento almacenado y buscamos


el código 0001jipo a como vemos en la image. Exec
SP_BuscarPorCliente ‘0001jipo’

4- SP_BuscarPorNombres Con este procedimiento almacenado


podemos realizar búsqueda de los clientes por sus nombres.
Ahora veremos distintos resultados con la ejecución de nuestro
procedimiento almacenado.

En esta imagen vemos que solo obtuvimos un resultado del nombre


creado.

En este otro resultado obtuvimos dos nombres que iniciaban igual

Y en este último vemos que no se encuentran ningún resultado ya


que no hay ningún cliente registrado con ese nombre

Por lo que podemos demostrar que el procedimiento funciona


perfectamente.

5- SP_BuscarPorLetra Con este procedimiento se quiere poder


buscar un registro por la letra del Primer nombre del cliente a como
vemos a continuación Creamos el procedimiento y dentro del
código usamos el comando like ‘%’ lo que indica que la
comparación del primer nombre se realiza sólo en el primer
carácter.
Ahora ejecutamos nuestro procedimiento almacenado buscando
los nombres que inicien con la letra A.

6- SP_ActualizarrCliente Este procedimiento es para poder actualizar los


datos del cliente , primero declaramos Create procedure
SP_ActualizarCliente , luego declaramos nuestras variables globales ,
actualizamos nuestra tabla cliente con el comando UPDATE y por ultimo
asignamos a los atrbutos las variables globales declaradas para poder
modificar a como vemos en la imagen.

Y mostramos el resultado de nuestro procedimiento almacenado

7- SP_ControlIngresoCliente con este procedimiento almacenado lo que


hacemos es que controlamos que no halla clientes duplicados dado que si
se quiere ingresar nuevamente el mismo cliente con este procedimiento
almacenado se verificara si el cliente ya existe de manera comparando cada
atributo si es igual toda la cadena entonces enviara un msj que diga “EL
USUARIO YA EXISTE” y si no existe y se ingresa entonces enviara un msj
“EL REGISTRO SE A INGRESADO CORRECTAMENTE”, y si hay un
atributo not null y no se ingresa entonces enviara un msj “NO SE PUEDEN
INGRESAR VALORES NULOS” a como vemos en la siguiente captura.

Creado Cursores

1- CurEdad Este cursor lo empleamos para calcular la edad de los clientes de


acuerdo a su fecha de nacimiento y la fecha actual , lo primero que hacemos
declaramos nuestras variables locales , seleccionamos los atributos de
nuestra tabla cliente los cuales utilizaremos para calcular y asignar el
resultado, actualizamos nuestra tabla cliente y luego con set= Edad
asignamos al atributo edad el resultado de nuestra operación , en la cual
compara y resta la fecha de nacimiento con la fecha actual (en la cual
utilizamos el comando GETDATE() el cual nos da la fecha actual) a como
vemos a continuación e la imagen.
Ahora veremos el registro clientes antes de ejecutar nuestro cursor lo cual
muestra en la columna Edad valores NULL

Una vez ejecutado nuestro cursor podemos observar que nos muestra
calcula y muestra la edad de los clientes.
2- Cursor CurCod_Cliente con este cursor creamos un código para
cada cliente utilizamos el comando lower y anteponemos tres
ceros“000” luego concatenamos con + con el Id_Cliente que es un
entero en el cual también se utilizó el comando identity para que el
Id_Cliente aumente de 1 en 1 (Id_Cliente int identity(1,1))
concatenamos y luego sustraemos la primera letra de cada del
primer nombre, segundo nombre, primer apellido y segundo apellido
esto con el comando substring (@Pnombre_cte,1,1) a como
observamos acontinuacion
Observemos que antes de ejecutar nuestro cursor el valor del atributo es
nulo

Una vez ejecutado nuestro cursor obtenemos el siguiente resultado