Buenas tardes,
para gustos colores, os comento mi estilo:
- Sqlerrd(3) para saber insert's o delete's
- Programación:
dow (1 = 1);
Exec Sql Fetch Next from @cursor into :@Sortida;
If SqlCode <> 0;
leave;
endif;
hacer_cosas();
enddo;
Un saludo,
Raúl Báscones
El mar., 16 jun. 2020 a las 8:39, Alberto Martinez (<
[email protected]>) escribió:
> Buenos dias. Tengo un par de dudas de SQL que las estoy haciendo
> mecánicamente hace mucho y hace tiempo que pienso en consultarlo al Foro a
> ver cómo lo véis.
> Lo primero es, para saber las líneas afectadas en un Insert delete o
> update, ¿es lo mismo usar *@variable=Sqlerrd(3) *(o @variable=Sqlerr3) que*
> getdiagnostics: @variable=ROW_COUNT*?
> Y luego otra:
> Supongo que todos hacemos bucles del tipo:
> Dow Sqlcod<>100 and Sqlcod>=0;
> Exec Sql Fetch Next from @cursor into :@Sortida;
> If Sqlcod<>100 and Sqlcod>=0;
> hacer_cosas();
>
> ENDIF;
> Enddo;
>
> El caso es que si *hacer_cosas()* es por ejemplo otra selección SQL que
> por lo que sea no encuentra un valor , nos cambia el valor del SQLcod y nos
> manda el bucle al traste.
> Yo lo que hago es guardarme el valor del Sqlcod antes de llamar a
> *hacer_cosas()* y luego dejarlo como estaba.
> Pero... hay otra manera pelín más elegante?
>
> Gracias!! ____________________________________________________
> Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
> Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________
�nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 � Publicaciones Help400, S.L.