Bonjour,
Est-il possible d'utiliser le résultat d'une fonction comme paramètre d'initialisation d'une séquence?
Voici ce que j'aimerais faire:
Merci
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
27
28 drop table TEST; CREATE TABLE TEST (ID NUMBER NOT NULL); CREATE OR REPLACE FUNCTION DEBUT_SEQUENCE RETURN NUMBER IS debut NUMBER; BEGIN select MAX(ID) into debut from TEST; IF debut = NULL THEN RETURN 1; ELSE RETURN (debut+1); END IF; END; / CREATE sequence SEQ_ID start with DEBUT_SEQUENCE increment by 1 nocycle; END; CREATE OR REPLACE TRIGGER NUMEROAUTO before insert on TEST for each row BEGIN select SEQ_ID.nextval into :new.ID from dual; END; /
Cordialement
Piotr
Partager