L3 Info : SGBD
 
◃  Ch. 12 Oracle PL/SQL  ▹
 

Attribution automatique d'un numéro de clé

  • Étape 1 : création d'une séquence
    CREATE SEQUENCE etudiant_etud_id_seq;
  • Étape 2 : création du trigger
    CREATE OR REPLACE TRIGGER trig_etudiant 
    BEFORE INSERT ON etudiant
    FOR EACH ROW
    DECLARE
      numetud INTEGER := etudiant_etud_id_seq.nextval;
    BEGIN
      :new.etud_id := numetud;
    END;
    /
  • Depuis Oracle 12c, le trigger n'est plus indispensable, il est possible de définir un appel à la pseudocolonne nextval d'une séquence comme valeur par défaut d'une colonne lors de la définition d'une table...