Question

update with Oracle writer based on equal geometry


Badge +11

Hi All,

during the process, I use the Matcher to split up the features that have identical geometry. For this set of features, all kinds of attributes can have changed (in other words, there is no fixed ID). Hence, I would like to use the Update Operation of the Oracle writer. I cannot use the 'Match Columns', since they all might have different values,even though the geometry is equal. Is there any way to have a WHERE clause I could use? I see SDO_EQUAL, but what are the arguments for the geometry already in FME and the one in Oracle, so both can be compared? Would that be slow?

I could use a delete statement and then an insert, using FeatureWriters, so I am in control of the order of execution. I was just wondering whether it would be possible to make it work like described above.

 

regards,

Jelle


4 replies

Badge +16

Well since all attributes have changed I cant think of a way to do it without some intermediate result, which makes it more complicated then just deleteing and inserting.

Badge +11

Well since all attributes have changed I cant think of a way to do it without some intermediate result, which makes it more complicated then just deleteing and inserting.

they MIGHT have changed.

 

Since I know the old and the new version of the attribute value, I can base the delete statement on the old one and the insert on the new one.

 

 

Userlevel 2
Badge +12

How about this:

Read both datasets and do a SpatialRelator transformer (match EQUAL) So the original ID is on the "new" features.

Then you can update the database based on the original ID..

Badge +11

How about this:

Read both datasets and do a SpatialRelator transformer (match EQUAL) So the original ID is on the "new" features.

Then you can update the database based on the original ID..

that is exactly what I did ;-)

Reply