Skip to main content

Hi,

I'm trying to use a featureReader to read a spatial table, however I need to link to a non-spatial table in the same connection to complete some filtering within the where clause. However it seems that the featureReader only allows either/or rather than both types.

The reason for using the featureReader is i'm told its quicker.

My question is can you use the featureReader with spatial and non spatial tables (oracle) within one? if not what would be the best way to accomplish this?

You should be able to read non-spatial tables (in the same database instance) by using the oracle spatial reader. If the tables aren't selectable in FME, you may have to manually add the Oracle spatial metadata to your non-spatial table.

Have a look at this article for more details: https://knowledge.safe.com/articles/782/adding-metadata-entries-for-oracle-spatial-tables.html


You should be able to read non-spatial tables (in the same database instance) by using the oracle spatial reader. If the tables aren't selectable in FME, you may have to manually add the Oracle spatial metadata to your non-spatial table.

Have a look at this article for more details: https://knowledge.safe.com/articles/782/adding-metadata-entries-for-oracle-spatial-tables.html

Thanks david_r,

 

 

I feel like i'm now getting closer however I'm getting this error now...any ideas why it seems to be ignoring my other table (STOCK)?

 

 

select "DEPT"."UNIQUE_KEY"

 

, "DEPT"."GEOMETRY"

 

from ( select *

 

from "DEPT" a

 

where ( mdsys.sdo_relate( a.geometry, :bindingquerygeom, 'mask=ANYINTERACT ' ) = 'TRUE' ) )

 

"DEPT"

 

where DEPT.unique_key = stock.unique_key

 

and stock.category in ( 48330

 

, 4617 )

 

 

 

 


Thanks david_r,

 

 

I feel like i'm now getting closer however I'm getting this error now...any ideas why it seems to be ignoring my other table (STOCK)?

 

 

select "DEPT"."UNIQUE_KEY"

 

, "DEPT"."GEOMETRY"

 

from ( select *

 

from "DEPT" a

 

where ( mdsys.sdo_relate( a.geometry, :bindingquerygeom, 'mask=ANYINTERACT ' ) = 'TRUE' ) )

 

"DEPT"

 

where DEPT.unique_key = stock.unique_key

 

and stock.category in ( 48330

 

, 4617 )

 

 

 

 

I would need some more information, in particular the source of this SQL and what the error message is. Could you perhaps post the whole log here?

 

 


You should be able to read non-spatial tables (in the same database instance) by using the oracle spatial reader. If the tables aren't selectable in FME, you may have to manually add the Oracle spatial metadata to your non-spatial table.

Have a look at this article for more details: https://knowledge.safe.com/articles/782/adding-metadata-entries-for-oracle-spatial-tables.html

So I've worked out that I needed to put commas between my tables rather than just a space and it seems to then pick up my non-spatial table okay. However its now complaining that my non-spatial table doesn't have a SRID set for the geometry column, which is true cause it doesn't have a spatial column as I just dummied in the metadata entry to be able to select it.

 

 

I'm getting to the conclusion that featurereader isn't up for this and will revert back to a normal SQLCreator instead.

 

 


Reply