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.

Reply via email to