Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/05/2007, 17h11   #1
Membre Expert
 
Avatar de GLDavid
 
Inscription : janvier 2003
Messages : 2 620
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2003
Messages : 2 620
Points : 2 474
Points : 2 474
Par défaut [Trigger] duplication suite à un trigger

Bonjour

Mon objectif est le suivant. Quand dans ma table sujet je fais une insertion, je veux récupérer certaines valeurs de cette insertion et les mettre dans une autre table (table jeune).
Donc, j'ai besoin d'un trigger.
J'ai crée le code suivant :
Code :
1
2
3
4
5
6
7
8
9
10
 
CREATE FUNCTION insert_un_jeune_for_trigger() returns TRIGGER AS
begin
IF new.jeune IS true then
INSERT INTO jeune VALUES(new.identifiant, new.sexe, new.etat_civil_lors_du_recrutement, new.mode_de_recrutement, new.niveau_d_etudes, new.raison_de_l_exclusion, new.age_lors_du_recrutement, new.date_du_recrutement, new.jeune, new.age, false, new.profession, new.exclu);
end IF;
RETURN new;
end;
 
CREATE TRIGGER trigger_insert_un_jeune AFTER INSERT ON sujet FOR EACH ROW EXECUTE PROCEDURE insert_un_jeune_for_trigger();
A priori, le trigger fonctionne lorsque je fais un insert dans la table sujet.
Sauf que, je me retrouve avec 2 fois la même ligne insérée dans la table sujet
Où ai-je fais une erreur ?
Merci d'avance de votre aide.

@++
__________________
GLDavid
Consultez la FAQ Perl ainsi que mes cours de Perl.
N'oubliez pas les balises code ni le tag

Je ne répond à aucune question technique par MP.
GLDavid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2007, 09h20   #2
Membre Expert
 
Avatar de GLDavid
 
Inscription : janvier 2003
Messages : 2 620
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2003
Messages : 2 620
Points : 2 474
Points : 2 474
Bonjour

Personne pour m'aider ou ai-je mal formuler ma question ?

@++
__________________
GLDavid
Consultez la FAQ Perl ainsi que mes cours de Perl.
N'oubliez pas les balises code ni le tag

Je ne répond à aucune question technique par MP.
GLDavid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2007, 09h32   #3
Membre Expert
 
Avatar de GLDavid
 
Inscription : janvier 2003
Messages : 2 620
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2003
Messages : 2 620
Points : 2 474
Points : 2 474
Entre parenthèse, sur la table où j'observe le doublon quand j'applique mon trigger, voici les contraintes :
Code :
1
2
3
 
id_sujet_id 	CREATE UNIQUE INDEX id_sujet_id ON sujet USING btree (identifiant) 	
id_sujet_ind 	CREATE UNIQUE INDEX id_sujet_ind ON sujet USING btree (identifiant)
identifiant étant bien entendu ma clé primaire.
Ce qui fait que je comprend de moins en moins l'erreur observée

@++
__________________
GLDavid
Consultez la FAQ Perl ainsi que mes cours de Perl.
N'oubliez pas les balises code ni le tag

Je ne répond à aucune question technique par MP.
GLDavid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2007, 11h53   #4
Membre Expert
 
Avatar de GLDavid
 
Inscription : janvier 2003
Messages : 2 620
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2003
Messages : 2 620
Points : 2 474
Points : 2 474
Bon finalement, je procèderais autrement. Merci pour ceux qui m'auront lu.
__________________
GLDavid
Consultez la FAQ Perl ainsi que mes cours de Perl.
N'oubliez pas les balises code ni le tag

Je ne répond à aucune question technique par MP.
GLDavid est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h21.


 
 
 
 
Partenaires

Hébergement Web