Bonjour,
Je n'arrive pas à gérer explicitement le comit et le rollback d'instruction sql. Comment faire svp ?

Extrait de mon script shell Unix --> MODE a deux valeurs, S et V, S comme simulation de la mise à jour (donc rollback) et V pour validation (commit)

Code ksh : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
sqlplus -s $DB_USER/$DB_PASS $MODE << !EOD   > $FICHIER_RESSQL
        set heading off
        set pagesize 0
        set linesize 1000
        set serveroutput on
        set verify off
        set feedback off 
        DECLARE
 
        BEGIN
             UPDATE XC_VALIDATION_CCAM SET VERSION_DONNEES = '03901' 
              WHERE VERSION = 41 ;
 
             if &1 = 'S'
             then
               rollback ;
             else
               commit ;
             end if;
        END ; 
/
        exit ;
!EOD

Quand j'exécute, la mise à jour ne se fait pas quelque soit la valeur passée S ou V !

Cordialement.