Vous n'êtes pas identifié(e).
Pages : 1
Bonjour,
Est ce qu'il est possible de paramétrer un triggers dans une base donnée qui utiliserait une table située sur une autre base ?
Mon trigger "jointure spatiale" consiste à remplir un champ commune (avec le nom de la commune) lorsque je crée un point d'une table école.
Si je m'en tiens à la requête de la fonction trigger et qui fonctionne lorsque les tables commune (avec son champ nom) et école (avec son champ commune) sont dans la meme base placées dans le schema "Scolaire".
CREATE OR REPLACE FUNCTION "Scolaire".update_nomcom()
RETURNS trigger AS
$BODY$
BEGIN
select into new.commune nom FROM "Scolaire"."table_Commune" where st_within(new.geom, geom);
return new ;
END;
$BODY$
...
maintenant si ma table Commune se trouve dans une autre base appelée "Administratif", j'ai tenté ça mais en vain:
CREATE OR REPLACE FUNCTION "Scolaire".update_nomcom()
RETURNS trigger AS
$BODY$
BEGIN
select into new.commune nom FROM "Administratif"."Scolaire"."table_Commune" where st_within(new.geom, geom);
return new ;
END;
$BODY$
...
Pour etre concis, quel format pr spécifier une table dans une base particulière ?
j'ai tenté ce format: base.schema.table
Merci.
Aurélien
Dernière modification par Aurel17 (05/05/2020 15:51:53)
Hors ligne
Les bases sont des objets hermétiques et autonomes. Vous ne pouvez pas faire de requêtes concernant des objets de la base X en étant connecté sur la base Y.
Si vous avez besoin de cela, c'est que vous auriez dû créer dans une seule base des schémas correspondant à vos bases actuelles.
Guillaume.
Hors ligne
Bonjour,
Je ne sais pas si votre sujet est toujours d'actualité mais à mon avis, vous pourriez avoir cela avec dblink : https://docs.postgresql.fr/10/contrib-d … ction.html
Hors ligne
Pages : 1