Como controlar el SQLCODE en un create trigger

Hola, estoy haciendo un trigger en DB2 en un AS400 y dentro de las acciones a realizar por el trigger declaro un cursor para recorrer unos registros de una tabla.
¿Lógicamente tengo un while --- do para recorrer el cursor pero no sé como declarar el SQLCODE para controlar el final del bucle?
¿Cómo puedo hacerlo?
Muchas gracias

1 Respuesta

Respuesta
1
No se mucho de DB2/400, ni de triggers (me dedico más a la administración de sistemas), pero te puedo decir que depende si estas creando un external trigger o un SQL trigger.
Para el SQL trigger tiene el FOR statement:
BEGIN
FOR v1 AS c1 CURSOR FOR <select>
DO
<cuerpo del procedimiento para cada fila>
END FOR;
END;
puedes verlo aquí:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/sqlp/rbafydb2triggers.htm
Si estás usando DECLARE CURSOR+FETCH tienes las variables SQLCODE=100 y SQLSTATE=
Si me das algo más de información sobre lo que quieres hacer te podría ayudar más.
No se mucho de DB2/400, ni de triggers (me dedico más a la administración de sistemas), pero te puedo decir que depende si estas creando un external trigger o un SQL trigger.
Para el SQL trigger tiene el FOR statement:
BEGIN
FOR v1 AS c1 CURSOR FOR <select>
DO
<cuerpo del procedimiento para cada fila>
END FOR;
END;
puedes verlo aquí:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/sqlp/rbafydb2triggers.htm
Si estás usando DECLARE CURSOR+FETCH tienes las variables SQLCODE=100 y SQLSTATE='02000' que significa que se ha llegado al final del cursor.
Si me das algo más de información sobre lo que quieres hacer te podría ayudar más.
Gracias ya lo he resuelto, el problema que tenía era que no sabía como declarar la variable SQLCODE para controlar el final de bucle y ya lo he conseguido
Declare SQLCODE Integer

Añade tu respuesta

Haz clic para o