1. Reportes y consultas
CURSOS IMPARTIDOS
INPUT
select id_curso, nombre_curso, dia_impartido
from Ceclav.dbo.Curso
OUTPUT
ALUMNOS INSCRITOS POR PROMOTOR
INPUT
SELECT p.id_promotor, p.nombre_promotor, p.apellido_pat,
(SELECT COUNT (*) FROM Ceclav.dbo.Inscripcion i
WHERE p.id_promotor = i.id_promotor) AS alumnos_inscritos
FROM Ceclav.dbo.Promotor p;
OUTPUT
2. CURSOS QUE IMPARTEN LOS MAESTROS
INPUT
SELECT id_prof, nombre_prof, apellido_mat, nombre_curso
FROM Ceclav.dbo.Profesor, Ceclav.dbo.Curso
WHERE id_curso = id_curso_imp
OUTPUT
CALIFICACIONES DE ALUMNOS
INPUT
SELECT c.id_alumno ,a.nombre_alumno, a.apellido_pat, c.id_curso,
c.calificacion
FROM Ceclav.dbo.Alumno a, Ceclav.dbo.Calificacion c
WHERE a.id_alumno = c.id_alumno
4. Procedure
PROCEDIMIENTO ALMACENADO PARA DETERMINAR UNA NUEVA INSCRIPCIÓN
INPUT
CREATE PROCEDURE NuevaInscripcion @id_alumno INT
AS
--Declaración de la variable para la nueva inscripción
DECLARE @id_insc INT
-- Se toma el valor maximo de la tabla inscripción
SELECT @id_insc=MAX(id_inscrip)
FROM Inscripcion
---Determinando la siguiente inscripción
SELECT @id_insc=@id_insc+1
---Insertando la nueva inscripción
INSERT INTO Inscripcion(id_inscrip, id_curso, id_alumno, id_prof,
id_promotor, pago_insc)
VALUES(@id_insc, GETDATE(), @id_alumno)
---Regresando el valor de la inscripción
RETURN @id_insc;
Transacción
TRANSACCIÓN INICIO DE UNA INSCRIPCIÓN
INPUT
INSERT INTO Alumno(id_alumno, apellido_pat, apellido_mat, direccion)
VALUES(239379, 'Angelica', 'Naranjo', 'F. I. Madero');
SAVE TRANSACTION ComienzoInscripcion;
INSERT INTO Inscripcion(id_inscrip, id_curso, id_prof, id_alumno,
id_promotor, pago_insc)
VALUES(2000, 383, 1005, 239379, 999, '600.00');
IF @@ERROR<> 0 ROLLBACK TRANSACTION ComienzoInscripcion;
COMMIT TRANSACTION
5. Trigger
DISPARADOR QUE SE UTILIZA PARA INSERTAR Y ACTUALIZAR LA TABLA CURSO
CON MINUSCULA
INPUT
CREATE TRIGGER CambioCurso
ON Curso
FOR INSERT, UPDATE
AS
UPDATE Curso
SET nombre_curso = LOWER(nombre_curso)
WHERE Curso.id_curso = inserted.id_curso;
DISPARADOR QUE SE UTILIZA PARA INSERTAR Y ACTUALIZAR LA TABLA CURSO
CON MAYUSCULA
INPUT
CREATE TRIGGER CambioCurso
ON Curso
FOR INSERT, UPDATE
AS
UPDATE Curso
SET nombre_curso = UPPER(nombre_curso)
WHERE Curso.id_curso = inserted.id_curso;