BUENAS AMIGOS DEL FORO TENGO UN PROBLEMA QUE POR IGNORANCIA NO LOGRO RESOLVER
TENGO 2 TABLAS
<CURSOS>
CODIGO
NOMBRE
CUPOS
INSCRITOS
<INSCRITOS>
CEDULA
CODIGO_CURSO
TENGO DOS TRIGGER PARA LA TABLA INSCRITOS
CREATE TRIGGER [DelActividades] ON dbo.INSCRITOS
FOR DELETE
AS
BEGIN
DECLARE @Codigo Varchar(2)
SET @Codigo =(SELECT CODIGO_CURSO FROM Deleted)
UPDATE CURSOS
SET inscritos=(SELECT COUNT(Cedula) FROM INSCRITOS WHERE codigo_CURSO=@Codigo)
WHERE CODIGO=@Codigo
END
CREATE TRIGGER [DelActividades] ON dbo.INSCRITOS
FOR INSERT
AS
BEGIN
DECLARE @Codigo Varchar(2)
SET @Codigo =(SELECT CODIGO_CURSO FROM Deleted)
UPDATE CURSOS
SET inscritos=(SELECT COUNT(Cedula) FROM INSCRITOS WHERE codigo_CURSO=@Codigo)
WHERE CODIGO=@Codigo
END
SON DOS UNO PARA CUANDO BORRAMOS UN REGISTRO ACTUALIZA EN LA TABLA CURSOS EL TOTAL DE INSCRITOS
Y OTRO PARA LA INSERCION QUE TAMBIEN ACTUALIZA LA MISMA TABLA EL TOTAL DE INSCRITOS
EL PROBLEMA ES CUANDO ALGUIEN SE CAMBIA DE CURSO OSEA UN UPDATE DEBO ACTUALIZAR TANTO EL CURSO EN QUE ESTABA COMO EN EL QUE VA A ESTAR OSEA ALGO ASI EN PSEUDOCODIGO
ACTUALIZA CURSO
ASIGNANDO INSRITOS A LA SUMA DE LOS INSCRITOS DONDE CODIGO= NUEVO CURSO Y TAMBIEN VIEJO CURSO
ES LO MISMO QUE DECIR NUEVO =NUEVO+1
VIEJO =VIEJO-1 ;
EL ROLLO ES QUE CON LA TABLA LOGICA INSERTED, O DELETE NO CAMINA PORQUE NO ESTOY NI INSERTANDO NI BORRANDO SOLO CAMBIANDO
DE REPENTE PARA USTEDES CON SU EXPERIENCIA ESTO ES UNA TONTERIA PERO PARA ESO ESTOY ACA ....PARA APRENDER DE LOS QUE SABEN
AGRADECIDO ....