problème avec GET DIAGNOSTICS
Bonjour,
j'aimerai dans une fonction plpgsql obtenir le nombre de ligne que me "trouve" un select.
Pour cela j'utilise la fonction
Code:
1 2
|
GET DIAGNOSTICS var_num_result = ROW_COUNT; |
voici mon code source :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
DECLARE
var_total_paiement double precision;
var_prix_paye double precision;
var_prix_inscription double precision;
var_prix_adhesion double precision;
var_prix_da double precision;
var_num_result integer;
BEGIN
SELECT SUM(prix) INTO var_total_paiement FROM TBL_PAIEMENT WHERE code_facture=NEW.code_facture;
SELECT SUM(prix_inscription) INTO var_prix_inscription FROM TBL_INSCRIPTION WHERE code_facture=NEW.code_facture;
SELECT SUM(prix_droit_acces) INTO var_prix_da FROM TBL_DROIT_ACCES
WHERE code_facture=NEW.code_facture;
SELECT * FROM TBL_ADHESION WHERE code_facture=NEW.code_facture;
GET DIAGNOSTICS var_prix_adhesion = ROW_COUNT;
var_prix_paye := var_prix_da + var_inscription + (var_prix_adhesion * 4);
IF var_prix_paye == var_total_paiement THEN
UPDATE TBL_INSCRIPTION SET validite=TRUE WHERE code_facture=NEW.code_facture;
ELSE
UPDATE TBL_INSCRIPTION SET validite=FALSE WHERE code_facture=NEW.code_facture;
END IF;
RETURN NEW;
END; |
Une fois la fonction executé, j'ai l'erreur suivante :
Citation:
SELECT query has no destination for result data .
Pouvez vous me dire ce qui ne va pas ? ou bien me dire comment on fait pour récuperé le nombre de ligne que trouve un SELECT dans un fonction (plpgsql).
Merci