Récuperer une 2eme fois l'identifiant depuis une vue
Bonjour à tous et bonne année 2011,:)
Lors de l'insertion dans une vue multi-table je récupère l'identifiant d'une table pour l'insérer dans une autre table :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
CREATE OR ALTER TRIGGER V_LIGNE_COMMANDE_AI0 FOR V_LIGNE_COMMANDE
ACTIVE AFTER INSERT POSITION 0
AS
declare LigneID BIGINT;
begin
insert into tb_commande_ligne (commande_id,taux_remise,taux_taxe,accepted)
values (new.commande_id, new.taux_remise, new.taux_taxe,new.accepted)RETURNING LIGNE_ID into : LigneID;
insert into st_tb_ligne (Ligne_id,Ligne_qte,ligne_pu,art_id)
values (:LigneID,new.ligne_qte,new.ligne_pu,new.art_id);
end |
Jusque là ça fonctionne bien.
L'appel de l'Insert se fait dans une procédure stockée :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
insert into v_ligne_commande
(commande_id,
taux_remise,
taux_taxe,
accepted,
ligne_qte,
ligne_pu,
art_id)
values
(:commande_id,
:taux_remise,
:taux_taxe,
:accepted,
:ligne_qte,
:ligne_pu,
:art_id) returning ligne_id into :IDLIGNE; |
J'essaye de faire un 2eme RETURNING pour récupérer le LIGNE_ID dans le IDLIGNE mais il semblerais que ca ne fonctionne pas (valeur NULL).
J'aimerais savoir si il n' y a pas un autre moyen de le faire autre que :
Code:
1 2 3 4
|
select gen_id(NOM_GENERATEUR, 1)
from rdb$database
into :IDLIGNE ; |
Merci de votre aide.