Power Builder - Control de auto commit en Oracle

 
Vista:

Control de auto commit en Oracle

Publicado por Pablo Magyar (1 intervención) el 26/06/2002 00:46:04
Estoy trabajando con PowerBuilder 6.5 conectado a una base de datos Oracle 8.0.5.
Mi problema es que a pesar de tener en el código fuente la sentencia SQLCA.AUTOCOMMIT = FALSE inmediatamente después de haber definido los parámetros de conexión, la aplicación hace COMMIT en cada línea de la DW, o sea dentro del FOR NEXT con la cual las recorro, cuando el COMMIT está al salir de estos ciclos.
He comprobado que es así porque activé el PBTRACE.LOG.
Estoy desesperado porque esto me trae muchísimos problemas ya que no me permite controlar transacciones y tamién funciona super lento.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Control de auto commit en Oracle

Publicado por Milson Cardona (613 intervenciones) el 27/06/2002 01:55:47
primero que nada, podrías decirme que instrucciones tienes dentro del ciclo FOR que mencionas??

-si no tiene un insert o un delete o un update, no habrá forma de que ORACLE guarde nada, así tengas configurado el AUTOCOMMIT = TRUE.

-reviza que dentro del FOR no estes llamando un sentencia SQL EMBEBIDA, de tenerla, reviza que este utilizando la variable transaccional dentro de la sentencia, es decir, debes tener algo como esto: INSERT INTO tabla (campos) VALUES valores USING sqlca;

donde: USING sqlca; le esta indicando a PB que no grabe nada en la DB, y que espere a que la vble de transacción SQLCA le de la orden.
si te falta esta instrucción, PB grabará todo lo que insertes inmediatamente.

-te recomiendo que utilices un seguimiento PASO a PASO (debug), que es de mucha utilidad en estos casos que no sabes PB que esta ejecutando.

espero que esto te sirva de ayuda, SI la solución es otra, espero que me la hagas saber para yo tenerla presente.
SUERTE CON TU PROBLEMA

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar