Réinitialisation d'une sequence par rapport à l'id d'une table
1DECLARE
2 v_max_id NUMBER;
3BEGIN
4 -- Récupèrer le dernier ID utilisé dans la table
5 SELECT COALESCE(MAX(id), 0) INTO v_max_id FROM mon_schema.ma_table;
6
7 -- Repositionner la séquence pour démarrer au bon endroit
8 EXECUTE IMMEDIATE 'ALTER SEQUENCE mon_schema.SEQ_ma_sequence RESTART START WITH ' || (v_max_id + 1) ;
9
10 DBMS_OUTPUT.PUT_LINE('Séquence repositionnée à ' || (v_max_id + 1));
11END;
12/