#1 Tue 09 July 2013 09:51
- mysly
- Juste Inscrit !
- Lieu: Dieppe
- Date d'inscription: 5 Oct 2010
- Messages: 5
[Oracle 11g] Trigger et Géométrie
Bonjour à tous,
Nous avons une table Oracle contenant des entités de type point, parmi les champs disponibles nous avons un champ Périmètre qui nous permet de faire des buffers de taille différents. Nous souhaitons créer un buffer, à l'aide d'un trigger, dans une nouvelle table (Buffer_PT) pour chaque nouvelle entité insérée dans CAVITES_PT.
Voici mon code :
CREATE OR REPLACE
TRIGGER INSERt_BUFFER_PT
AFTER INSERT ON CAVITES_PT REFERENCING
NEW AS NEW
OLD AS OLD
FOR EACH ROW
BEGIN
insert into buffer_pt(id_b_pt, perimeter , geometry)
values (:new.id, :new.perimetre, sdo_geom.sdo_buffer(:new.geometry, :new.perimetre, 0.05, 'unit=meter'));
END;
Lors de l’intégration, j’ai bien une nouvelle ligne dans la table Buffer_PT mais la géométrie est vide.
Quelqu’un a-t-il déjà eu ce cas ?
Merci d’avance.
Aurélie SIMON
Hors ligne
#2 Tue 09 July 2013 16:23
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: [Oracle 11g] Trigger et Géométrie
Bonjour,
Pouvez-vous lancer la requete equivalente à celle faite par le trigger hors du contexte du trigger pour voir si le buffer est bien créé ?
Ca permettrait de savoir si l'erreur vient d'une eventuelle mauvaise géometrie ou bien du contexte du trigger.
Nicolas
Hors ligne
#3 Wed 10 July 2013 09:01
- mysly
- Juste Inscrit !
- Lieu: Dieppe
- Date d'inscription: 5 Oct 2010
- Messages: 5
Re: [Oracle 11g] Trigger et Géométrie
Bonjour,
En lançant juste la requête, les entités se créent correctement. Les géométries finales sont également correctes.
Aurélie
Hors ligne