Posez votre question Signaler

SQL contrainte check évalué avant un trigger [Résolu]

paki131 - Dernière réponse le 5 sept. 2008 à 00:57
Bonjour,
Je construit un base de donnée en SQL sur PostgreSQL
Mon problème: j'ai une contrainte primary key sur une table et un trigger sur la meme table qui s'occupe que modifié les valeurs pour que tout fonctionne bien
ma_table:
-reference1 REFERENCES table1(id),
-reference2 REFERENCES table2(id),
-quantite int,
-primary key(reference1, reference2)
create or replace function trigger_ma_table() RETURNS TRIGGER as
$$
begin
if tg_op='INSERT' and exists (select reference1 from ma_table
where reference1 = new.reference1 and reference2 = new.reference2)
then
update ma_table set quantite=quantite+new.quantite
where reference1 = new.reference1 and reference2 = new.reference2;
return null;
end if;
return new;
end
$$
language plpgsql;
donc si je fais un insert d'une ligne qui ce trouve déja dans la BD ca ne fonctionnera pas a cause de la pk qui se fait avant, ce que je voudrais c'est que les quantite s'aditionne.
merci pour vos réponse.
Lire la suite 

SQL contrainte check évalué avant un trigger »

1 réponses
Réponse
-1
moins plus
ok erreur de ma part désolé pour l'éventuel dérangement
Ajouter un commentaire
Ce document intitulé « SQL contrainte check évalué avant un trigger » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?