From: | Samuel ROZE <samuel(dot)roze(at)aliceadsl(dot)fr> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Triggers et clefs primaires |
Date: | 2008-08-26 08:34:35 |
Message-ID: | 1219739675.6624.2.camel@samuel-laptop |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Bonjour,
J'ai un trigger (AFTER FOR EACH ROW) sur une table qui à chaque fois
qu'il y a un enregistrement sur cette même table, exécute une fonction
pgplsql qui éxécute elle-même une fonction PL/sh qui exécute un script
PHP.
Dans ce script PHP, je créer 10 enregistrements dans une autre tables où
il y a un champ qui fait référence à la table sur laquelle il y a le
trigger.
Exemple d'application:
INSERT INTO table1 (champ2, champ3) VALUES ('salut', 'samuel');
(la table1 as un champ1 (alias id) qui est un serial en clef primaire)
-> La fonction pgplsql (appelée par le trigger) récupère l'ID de
l'enregistrement (NEW.id), le donne à la fonction pl/sh qui le donne au
script PHP.
J'enregistre des données dans la table2, avec un champ qui fait
référence à l'id de la table1. Des données avec comme id de table1, l'ID
qui vient juste d'être enregistré...
ERREUR de clef étrangère... :(
Note: Les deux tables sont dans deux schémas différents, avec deux
utilisateurs différents. Cependant, aucun problème de droit a priori
(GRANT USAGE ON SCHEMA... GRANT REFERENCES ON TABLES...)
Avez-vous une idée ?
Merci à vous,
Cordialement, Samuel.
From | Date | Subject | |
---|---|---|---|
Next Message | Zoltan Boszormenyi | 2008-08-26 08:39:05 | Re: SERIAL datatype |
Previous Message | Ivan Price | 2008-08-26 07:41:59 | web form development ide/api.. |