Message posté par : anne39
----------------------------------------
Bonjour,
J'essaie d'écrire un trigger qui manipule 3 tables géographiques dans PostGIS.
La fonction se déclenche lors de l'insertion d'un objet dans la table A.
Je souhaite insérer dans la table C, le résultat des intersections entre les objets de la
table A et ceux de la table B.
Je l'ai écrit ainsi :
-----------------
Code :
INSERT INTO public.table_C(geometrie)
SELECT
st_intersection(table_A.geometrie, table_B.geometrie) as intersection
FROM public.table_A, public.table_B
WHERE
st_intersects(NEW.geometrie,table_B.geometrie)
;
-----------------
Or les lignes s'insèrent bien dans la table C mais il y a un problème avec la
géométrie : quand je l'ouvre dans QGIS ou FME, je récupère les lignes mais il n' a
pas de géométrie associée.
J'imagine que la géométrie créée par la fonction st_intersection n'est pas
correcte mais je ne sais pas ce que je dois faire pour qu'elle le soit.
Si je fais une vue à partir de la même requête, QGIS lit parfaitement la colonne
intersection et affiche la géométrie des entités.
Je ne comprends donc pas la logique.
Auriez-vous une piste ?
Merci :-)
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=363762#p363762
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net