PDA

Ver la Versión Completa : Transacciones


juanmdq
05-01-2007, 19:45:57
Al manejar una transaccion desde delphi hacia oracle me ocurre el siguiente problema que espero alguien pueda ayudarme a resolver

Abro una transaccion en Delphi y necesito hacer los Commit y Rollback desde delphi (en los Stored no tengo esas sentencias) esto es necesario porque bloqueo algunos campos y con cada Commit o Rollback se me desbloquean cosa que no quiero que ocurra.

El problema se me presenta cuando en un Stored se ejecuta un Execute Inmediate (hace un commit, no se porqué) y se me desbloquean todos los campos, por lo que pierdo el control del bloqueo.

Ojála puedan ayudarme, lo necesito con urgencia....

delphi.com.ar
08-01-2007, 20:40:47
¿Que medio de conexión estas utilizando?

juanmdq
12-01-2007, 14:51:58
Hola, Te comento que para conectarnos usamos DBExpress.
Igualmente lo solucionamos cambiando los
Execute Inmediate "Trunc table ...." ;
por
la instruccion Delete table

gracias.

delphi.com.ar
12-01-2007, 14:59:42
Ahora entiendo cual es tu problema, las funciones DDL (Data Definition Language: Alters, Create, Drop, Truncate...) producen automáticamente un commit. En cambio DELETE es una función del tipo DML (Data Manipulation Language: SELECT, UPDATE, INSERT, DELETE) son "transaccionables".

Saludos!