Bonjour tout le monde,

Sur une base Oracle 8i, je cherche à créer une sequence que j'utiliserai dans un trigger before insert sur une de mes tables.
En faisant des recherches avancées sur ce forum j'ai trouvé la syntaxe des 2 commandes SQL que j'ai testées sous SQL*Plus => OK.

Ensuite, j'ai déclaré cette séquence et ce trigger pour tous les schémas de ma base oracle 8i qui sont des synonymes => OK.

Depuis il m'est impossible de supprimer et de recréer "localement" cette sequence sous SQL*Plus :
Code : 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
24
25
26
SQL> select seq_an_code.nextval
  2  from dual;
select seq_an_code.nextval
       *
ERROR à la ligne 1 :
ORA-02289: sequence does not exist
 
 
SQL> drop sequence seq_an_code;
drop sequence seq_an_code
              *
ERROR à la ligne 1 :
ORA-02289: sequence does not exist
 
 
SQL> create sequence seq_an_code start with 1 increment by 1;
create sequence seq_an_code start with 1 increment by 1
                *
ERROR à la ligne 1 :
ORA-00955: name is already used by an existing object
 
SQL> drop trigger ti_an_code;
drop trigger ti_an_code
*
ERROR à la ligne 1 :
ORA-04080: trigger 'TI_AN_CODE' does not exist
Mes questions sont donc les suivantes :
1/ comment fonctionnent les synonymes ? A quoi servent-ils ? Quels changement induisent-ils dans les autres commandes (DDL) ?
2/ quel est l'objet (quel est le synonyme) qui m'empêche de créer la sequence seq_an_code ?

Merci de m'éclairer et surtout n'hésitez pas à détailler