Beruflich Dokumente
Kultur Dokumente
PROCEDIMIENTOS ALMACENADOS 1
Introducción
Un procedimiento almacenado es un procedimiento escrito por un desarrollador de aplicaciones
para bases de datos y que está asociado a una base de datos específica. A continuación, otras
aplicaciones de escritorio o Web pueden invocar estos procedimientos almacenados para acceder
y manipular datos de la base de datos.
Acceso programático a
Los procedimientos almacenados permiten el acceso a una base de datos una base de datos
mediante la invocación de un procedimiento existente en lugar de tener que escribir nuestras
propias instrucciones SQL. Los procedimientos almacenados están formados por secuencias de
instrucciones Transact-SQL, y funcionan de modo similar a los procedimientos de una aplicación
Web en cuanto a que las instrucciones se invocan por su nombre, y pueden tener tanto
parámetros de entrada como de salida.
Los tres tipos de procedimientos almacenados son:
Procedimientos almacenados que devuelven registros
Los procedimientos almacenados que devuelven registros se utilizan para encontrar registros
específicos, clasificar y filtrar esos registros, y devolver el resultado de las operaciones de
búsqueda, clasificación y filtrado hacia una aplicación desde la cual se ha invocado. Estos
procedimientos almacenados se basan en instrucciones Select de SQL.
Un ejemplo de un procedimiento almacenado que devuelve registros es una petición de la
cantidad, fecha y receptor de los tres últimos movimientos procesados en una cuenta bancaria. Es
tos datos son enviados a la aplicación que lo invoco y mostrarlo en un control apropiado.
Param1, Param2, param3…: Son los nombres que se dan a los parámetros
Tipo: Int, char(n),varchar(n),datetime,numeric(#,#), etc
Parámetros de Salida
Envían valores desde un procedimiento almacenado al exterior, por lo general a una aplicación
Sintaxis:
@param1 tipo Output,@param2 tipo Output,@param3 tipo Output,…
Instrucción SQL
Pueden estar conformadas por comandos Insert, update, select, delete.
Use empresa
go
------Comprobar------------
Select * from empleados
go
--Nota: Si queremos ingresar más registros, seria de la forma siguiente:
2.2 Mostrar los empleados que ganan más del sueldo enviado al procedimiento
2.3 Mostrar los empleados que ganan entre el rango de sueldos enviados al procedimiento
-----Ejecutar para mostrar los registros que ganan entre 1000 y 2000-----------
Execute Sp_muestradin3 1000,2000
Go
-----Ejecutar para mostrar los registros que ganan entre 500 y 1000-----------
Execute Sp_muestradin3 500,1000
Go
2.5 Mostrar los empleados según el sexo y el rango de años enviados al procedimiento
-----Ejecutar para mostrar los registros que ganan entre 1000 y 2000 y son hombres-----------
Execute Sp_muestradin5 1000,2000,1
go
-----Ejecutar para enviar la información a modificar en el registro del empleado según el código
enviado-----------
Execute Sp_modificadin2 2, 'Campos Flores', 1500, 1,'26/09/1980'
Go
----------Comprobar----------
Select * from empleados
go
----------Comprobar----------
Select * from empleados
go
----------Comprobar----------
SENATI - TRUJILLO
Select * from empleados
go 8
Practica 3.2: Se desea crear un procedimiento almacenado que muestre la cantidad de registros de
que ganan más de 1000
-----Ejecutar para capturar la cantidad de registros de los que ganan más de 1000-----------
Practica 3.3: Se desea crear un procedimiento almacenado que muestre el total de los sueldos que
se paga a los empleados
go
go
select * from cargo
go
select * from empleado
go
*/----------------------------VISTAS------------------------------*/
CREATE VIEW VISTAEMPLEADO
AS
SELECT E.CODEMP,E.APELLIDOS,E.NOMBRES,E.SEXO,C.DESCRIPCION AS CARGO
FROM EMPLEADO E,CARGO C WHERE E.CODCAR=C.CODCAR
GO
SELECT * FROM VISTAEMPLEADO
Go
Se pide lo siguiente:
Determinar el tipo de relación entre las tablas, por ejemplo:
Facultad Vs Escuela === Uno a Muchos
Crear la Base de Datos
Crear las tablas y relacionarlas
Crear un procedimiento almacenado para cada tabla para insertar, buscar, modificar y
eliminar registros
Nota: Aquí algunos datos a insertar por ejemplo son(usted inserte más):
Para Área
1 Ciencias
2 Letras
Para Facultad
1 Ingeniería
2 Ciencias Sociales
3 Educación
Para Escuela
1 Ingeniería Química 1
2 Ingeniería Mecánica 1
3 Derecho 2
4 Sociología 2
5 Educación Inicial 3
6 Educación Primaria 3
Para Cargo
1 Jefe de Practicas
2 Coordinador Académico
3 Auxiliar
SENATI - TRUJILLO
4 Contador
13
Para Nacionalidad
1 Peruana
2 Alemana
3 Colombiana
4 Mexicana
5 Americana
6 Ecuatoriana
Para Profesor
1 Juárez Linares Juan Manuel 1 2 3 1
2 López Huamán Rosa Laura 0 3 1 2
3 Porras Ore Ana María 0 4 1 2
4 López rojas Laura Josefa 1 1 5 1
b)
c)
Crear un procedimiento almacenado que muestre todas las escuelas por facultad usando la
vista A
Crear un procedimiento almacenado para mostrar los profesores por Nacionalidad y Area
usando la vista B
Crear un procedimiento almacenado para mostrar los profesores por escuela indicada usando
la vista C
Crear un procedimiento almacenado para mostrar los profesores x escuela usando la vista C