Procedimientos Almacenados Sql Server - Bases de Datos en Microsoft Sql Server 2014 (31-35)
Buen día amigos de IncanatoIt, continuamos en este curso de base de datos en Microsoft Sql Server 2014, en este artículo trabajaremos con procedimientos almacenados.
Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:
Programación Transact SQL
--Evaluamos si ya existe el procedimiento
Ejemplo 2:
Implementar un procedimiento almacenado que permita mostrar los pagos de un determinado pasajero, considerar para este caso como parámetro de búsqueda el número de documento del pasajero.
--Evaluamos si ya existe el procedimiento
--Evaluamos si ya existe el procedimiento
Puedes seguir el curso Completo desde:
Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:
Programación Transact SQL
Scripts
Procedimientos Almacenados
Funciones
Triggers
Procedimientos Almacenados
Son un conjunto de instrucciones de Transact-SQL que pueden aceptar y devolver parámetros proporcionados por el usuario.
Tipos de procedimientos almacenados
Procedimientos Almacenados del Sistema:
Generalmente están guardados en la base de datos MASTER son identificados por iniciar en SP, permiten realizar una amplia variedad de tareas, a continuación mostramos algunos procedimientos almacenados del sistema:
Sp_columns
Sp_column_privileges
Sp_databases
Sp_fkeys
Sp_pkeys
Sp_tables
Sp_server_info
Sp_statistics
Ejemplos
--Procedimiento
del sistema que muestra
--las
columnas de la tabla país
sp_columns pais
--Procedimiento
almacenado del sistema para mostrar los
--privilegios
de las columnas involucradas de la tabla pasajero
Sp_column_privileges
pasajero
--Procedimiento
almacenado del sistema que muestra
--las base
de datos del servidor activo.
Sp_databases
--Procedimiento
almacenado que muestra las características
--de nuestro
servidor activo
sp_server_info
--procedimiento
almacenado que muestra donde se hace referencia
--a la tabla
pasajero
Sp_fkeys
pasajero
--Procedimiento
almacenado que muestra la llave primaria
--de la
tabla pasajero
Sp_pkeys
pasajero
Procedimientos Almacenados definidos por el usuario:
Son procedimientos que se implementan en forma personalizada según las necesidades del usuario.
Los Procedimientos Almacenados pueden tener parámetros de entrada y salida.
Procedimientos Almacenados - Sintáxis
Create procedure Nombre_Procedimiento
@parámetro1 [tipo dato],
@parámetroN [tipo dato]
AS
<Instrucciones>
Ejemplos:
Ejemplo 1:
Implementar un procedimiento almacenado que muestre el listado de los países y su total de pasajeros.
Implementar un procedimiento almacenado que muestre el listado de los países y su total de pasajeros.
Tabla Pasajero - País
--Evaluamos si ya existe el procedimiento
--almacenado
que queremos implementar
--si ya
existe lo eliminamos
if
object_id('pasajerosxpais') is not null
begin
drop procedure
pasajerosxpais
end
go
--Implementamos
nuestro procedimiento almacenado
create procedure
pasajerosxpais
as
select pai.nombre,count(*) as [Total]
from pasajero pas join
pais pai
on pas.idpais=pai.idpais
group by pai.nombre
go
--Ejecutamos
el procedimiento almacenado
exec
pasajerosxpais
Ejemplo 2:
Implementar un procedimiento almacenado que permita mostrar los pagos de un determinado pasajero, considerar para este caso como parámetro de búsqueda el número de documento del pasajero.
Tabla Pasajero - Pais=Pago
--Evaluamos si ya existe el procedimiento
--almacenado
que queremos implementar
--si ya
existe lo eliminamos
if
object_id('pagosxpasajero') is not null
begin
drop procedure
pagosxpasajero
end
go
--Implementamos
nuestro procedimiento almacenado
alter procedure
pagosxpasajero
@num_documento varchar(12)
as
select fecha,monto,tipo_comprobante,num_comprobante
from pago where idpasajero=
(select idpasajero from pasajero
where num_documento=@num_documento)
go
--Ejecutamos
el procedimiento almacenado y le enviamos el parámetro de entrada
exec
pagosxpasajero '47715777'
Ejemplo 3:
Implementar un procedimiento almacenado que permita registrar un Nuevo país, para este caso definir como parámetro de entrada todos los campos referentes a la tabla país.
Implementar un procedimiento almacenado que permita registrar un Nuevo país, para este caso definir como parámetro de entrada todos los campos referentes a la tabla país.
Tabla País
--Evaluamos
si ya existe el procedimiento
--almacenado
que queremos implementar
--si ya
existe lo eliminamos
if
object_id('nuevopais') is not null
begin
drop procedure
nuevopais
end
go
--Implementamos
nuestro procedimiento almacenado
create procedure nuevopais
@idpais char(4),
@nombre varchar(30)
as
insert into pais (idpais,nombre)
values(@idpais,@nombre)
go
--Ejecutamos
el procedimiento almacenado y le enviamos los parámetros de entrada
exec
nuevopais '0014','Dinamarca'
Ejemplo 4:
Implementar un procedimiento almacenado que retorne el total de pagos recibidos en una determinada fecha.
Tabla Pago
--Evaluamos si ya existe el procedimiento
--almacenado
que queremos implementar
--si ya
existe lo eliminamos
if
object_id('pagosxfecha') is not null
begin
drop procedure
pagosxfecha
end
go
--Implementamos
nuestro procedimiento almacenado
create procedure pagosxfecha
@fecha date,
@total money output
as
select @total=sum(monto) from pago
where fecha=@fecha
go
--Ejecutamos
el procedimiento almacenado y le enviamos
--los
parámetros
declare @t money
exec pagosxfecha '2014-05-05',@total=@t output
print 'Total' + cast(@t as char(10))
Procedimientos Almacenados (31-35) Bases de Datos en Microsoft Sql Server 2014
Saludos Imperio, un abrazo a la distancia.
Saludos Imperio, un abrazo a la distancia.
Procedimientos Almacenados Sql Server - Bases de Datos en Microsoft Sql Server 2014 (31-35)
Reviewed by IncanatoIt-ad
on
9:39
Rating:
como haría si me pedirían:
ResponderEliminarRealizar consultas de Mantenimiento para todas las Tablas(10 registros en cada uno), utilizando
procedimientos almacenados
¿Cómo hacer lo siguiente?
ResponderEliminar1.- Consultas de Préstamos por devolver y devueltos ???
2.- Listado de Productos por Clasificación
3.- Productos más solicitados
4.- Consultas de Mantenimiento de todas las tablas(mínimo 10 registros) utilizando procedimientos almacenados
Excelentes videos, muchas gracias
ResponderEliminar