Ver Mensaje Individual
  #1  
Antiguo 29-01-2004
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Reputación: 0
subzero Va por buen camino
Unhappy Como puedo actualizar una tabla con procedimientos

Tengo la siguiente consulta que debe actulizar una tabla después de haber ejecutado dos consultas posteriormente, la primera es para ubicar los campos que serán comparados con la segunda, y la segunda para hacer la actualización.

SET TERM ^;

CREATE PROCEDURE ACTUA_ANEXO1
AS
DECLARE VARIABLE COD_DANE VARCHAR(12);
DECLARE VARIABLE COD_DANE2 VARCHAR(12);
DECLARE VARIABLE JORNADA VARCHAR(1);
BEGIN
FOR SELECT CODIGO_DANE FROM TEMP_ANEXO1_1
INTO :COD_DANE DO
BEGIN
FOR SELECT I.INS_CODIGO, J.JOR_COD_R166
FROM INSTITUCION I, PERFIL_EDUCATIVO PE, GRADO_ESPECIALIDAD GE, GRUPO G, JORNADA J
WHERE I.INS_CODIGO_DANE=:COD_DANE
AND I.INS_ID=PE.INS_ID
AND PE.PER_EDU_ID=GE.PER_EDU_ID
AND GE.GRA_ESP_ID=G.GRA_ESP_ID
AND G.JOR_ID=J.JOR_ID
GROUP BY I.INS_CODIGO_DANE, J.JOR_COD_R166
INTO :COD_DANE2,:JORNADA DO
IF(JORNADA='1')THEN
BEGIN
UPDATE TEMP_ANEXO1_1
SET JOR_COMPLETA='S'
WHERE CODIGO_DANE=:COD_DANE2
END
IF(JORNADA='2')THEN
BEGIN
UPDATE TEMP_ANEXO1_1
SET JOR_MANNANA='S'
WHERE CODIGO_DANE=:COD_DANE2
END
IF(JORNADA='3')THEN
BEGIN
UPDATE TEMP_ANEXO1_1
SET JOR_TARDE='S'
WHERE CODIGO_DANE=:COD_DANE2
END
IF(JORNADA='4')THEN
BEGIN
UPDATE TEMP_ANEXO1_1
SET JOR_NOCTURNA='S'
WHERE CODIGO_DANE=:COD_DANE2
END
IF(JORNADA='5')THEN
BEGIN
UPDATE TEMP_ANEXO1_1
SET JOR_FINSEMANA='S'
WHERE CODIGO_DANE=:COD_DANE2
END
END
END^

SET TERM;^


El error que me arroja es:
"Dynamic SQL Error
SQL error code = -104
Token unknown - line 24, char 9
END
"

Que estoy haciendo mal???, agradesco a quien me pueda ayudar
Responder Con Cita