![]() |
Transacciones
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.... |
¿Que medio de conexión estas utilizando?
|
Hola, Te comento que para conectarnos usamos DBExpress.
Igualmente lo solucionamos cambiando los Execute Inmediate "Trunc table ...." ; por la instruccion Delete table gracias. |
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! |
La franja horaria es GMT +2. Ahora son las 06:18:24. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi