Par matta le 11/05/2006 - 23:18
Bonjour
j'ai un pb de rollback.
qui n'a sans doute rien a voir avec postgres
mais bon si quelqu'un a une idée.
j'ai un COMMIT non maitrisé avec postgres
et pas ms sql express.
Ma config
- postgres 8.1.0
- powerbuilder 6.5 or powerbuilder 10.5 is same result
- odbc driver 8.01.02.00
ROLLBACK KO
SQLCA.Lock = "RC"
SQLCA.autocommit = FALSE
dw_av_pc.settransObject(SQLCA)
dw_av_pc.InsertRow(0)
dw_av_pc.setitem(1, "exr_id", 8)
dw_av_pc.setitem(1, "pc_id", 24312)
dw_av_pc.setitem(1, "pc_typ", 'AA')
dw_av_pc.setitem(1, "statut", 'O')
messagebox('polo', dw_av_pc.update()) ==> j'ai 1
rollback using SQLCA;
select * from gc_pc where pc_typ = 'AA' ==> 8 24312 'AA' O // et merde
LOG PSQLODBC
conn=62467136, PGAPI_DriverConnect(out)='DSN=gc_pgsql;DATABASE=gc;SERVER=localhost;PORT=5432;SSLMODE=prefer;UID=postgres;PWD=xxxxxxxx;A6=;A7=100;A8=8192;B0=254;B1=8190;BI=4;C2=information_schema.;CX=1b50c88'
conn=62467136, query='INSERT INTO public.gc_pc ( exr_id, pc_id, pc_typ, statut ) VALUES ( 8, 24312, 'AA', 'O' )'
conn=62467136, query='COMMIT'
conn=62467136, PGAPI_Disconnect
conn=62489672, query='ROLLBACK'
conn=62489672, PGAPI_Disconnect
lui fonctionne
execute immediate 'begin; ';
execute immediate "insert into gc_pc values (8 , 24312, 'AV', now(), 'O'); ";
execute immediate 'rollback TRANSACTION ; ' USING SQLCA;