[Lazarus-es] Fw: Conocer números de registros afectados por un procedimiento almacenado en Firebird 2.1.3

Ismael L. Donis García ismael en citricos.co.cu
Jue Feb 18 14:49:08 CET 2010


Rennvio el mensaje porque no se si llegó a la lista o no.

Como podría conocer los registros afectados por una transacción que ocurren en un procedimiento almacenado?

Si realizo:
rsce.SQL.Text := 'delete from tmp';
trace.StartTransaction;
rsce.ExecSQL;
intfilas := rsce.RowsAffected;

Me asigna correctamente los registros borrados den la variable intfilas

Pero si realizo:
rsce.SQL.Text := 'execute procedure delete_tmp';
trace.StartTransaction;
rsce.ExecSQL;
intfilas := rsce.RowsAffected;

No me asigna los registros eliminados por el procedimiento almacenado en la variable intfilas

Eso mismo sucede para la inserción y actualización de registros.

Como podría solucionar dicho problema?

En Firebird el procedimiento almacenado está construido de la siguiente forma para el caso de la inserción de registros, la cual no se si es la correcta:

begin
  /* Procedimiento para agregar las entidades */
  insert into eadatge (entidad, eadp, proceso) values (:vch_entidad, :dat_eadp, :int_proceso) returning row_count into :int_reg;
  suspend;
end

GRACIAS a TO2S
=========
¦¦ ISMAEL ¦¦
=========
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20100218/d6961894/attachment-0002.html>


More information about the Lazarus-es mailing list