Hola compañeros, buen dia, tengo un problema cuando quiero guardar el siguiente procedimiento almacenado, anteriormente utilizaba informix pero ahora me he perdido con algo de la sintaxis, necesito de su ayuda por favor.
Código MySQL:
Ver originalDELIMITER //
#Procedimiento para verificar alumnos aprobados
)
#Variables para el control del cursor y auxiliares
#Variables del cursor recorrido
#Llenado de tabla temporal
#Aqui se definen los datos de quienes quiero obtener los datos y se insertan
#en una tabla temporal para que la base siga con sus datos.
#Primero genero mi tabla temporal
mensaj
VARCHAR(30)#Se agrego para mostrar si fue aprobatoria su calificación ) ;
#Realizo la validacion de que insertare por lo menos un registro en mi tabla temporal
WHERE a.db01_nom_prueba
= nom_prueba
AND a.db01_cat_prueba
= categoria
AND a.db01_mat_eria
= materia
AND a.db01_car_rera
= carrera
AND a.db01_uni_vers
= universidad
; IF l_con_tador
> 0 THEN #Reviso que por lo menos tenga un registro para insertar
WHERE a.db01_nom_prueba
= nom_prueba
AND a.db01_cat_prueba
= categoria
AND a.db01_mat_eria
= materia
AND a.db01_car_rera
= carrera
AND a.db01_uni_vers
= universidad
;
#select* from alu_temp
#Declaro mi cursor para comenzar el recorrido
SELECT identi
, nombre
, catego
, fecpru
, nestud, cestud, edstud, materi,
carrer, universidad
#Revisar los registros por recorrer y tomar el error cuando se terminen
OPEN recorrido ;
r1_loop : LOOP
FETCH CURSOR
INTO ridenti
, rnombre
, rcatego
, rfecpru
, rnestud, rcestud, redstud,
rmateri, rcarrer, runiver ;
LEAVE r1_loop ;
#En este apartado se realiza el tratamiento para cada registro por recorrer
SET mensaj
= "No aprobado"
SET con_row
= con_row
+ 1 ; CLOSE recorrido ;
#drop table alu_temp;
#Si no hay mas de un registro por insertar termina
SELECT 'No hay registros con los parametros de entrada, intente con otros...' AS mensaje
;
[/CODE]