Solved

Error when reading data through Oracle Spatial Relational reader

  • 25 September 2019
  • 4 replies
  • 6 views

Badge

I'm trying to read the data from an Oracle Locator database into FME. When reading data through both the Oracle Spatial Object reader and the Oracle Non-Spatial reader everything goes fine.

However, with the Oracle Spatial Relational reader, I get the following errors when trying to get the table list (see image 1):

 

The log file says the following (see image 2)

 

Am I getting this error because I "only" have the Oracle Locator database, and not a full Oracle Spatial database? Or is the error due to missing parameter settings? To be clear, I'm using the same database connection.

icon

Best answer by erik_jan 25 September 2019, 15:34

View original

4 replies

Userlevel 2
Badge +12

Oracle Spatial Relational is for the Oracle SDO versions of 8.0 and older.

That version of Oracle Spatial was using a set of SDO_ tables to store the geometry.

All versions after 8.1 are using the SDO_GEOMETRY datatype.

So, only if you are using Oracle 8.0 and older and the set of SDO (Spatial Data option) tables, this reader will work.

Hope this helps clarifying the difference.

Badge

Oracle Spatial Relational is for the Oracle SDO versions of 8.0 and older.

That version of Oracle Spatial was using a set of SDO_ tables to store the geometry.

All versions after 8.1 are using the SDO_GEOMETRY datatype.

So, only if you are using Oracle 8.0 and older and the set of SDO (Spatial Data option) tables, this reader will work.

Hope this helps clarifying the difference.

Hi, thank you... Yes, this clarrifies. However, how do I read the data from my Oracle Locator database in FME then? Right now I have to read the geometry through an Oracle Spatial Object reader, and the attributes through the Oracle Non Spatial reader, since they are stored separately. How do I read both geometry and attributes through one reader?

Userlevel 2
Badge +12

Hi, thank you... Yes, this clarrifies. However, how do I read the data from my Oracle Locator database in FME then? Right now I have to read the geometry through an Oracle Spatial Object reader, and the attributes through the Oracle Non Spatial reader, since they are stored separately. How do I read both geometry and attributes through one reader?

You can use the Oracle Spatial reader for both. The reader does not find the non spatial table automatically (in the table list, but if you type the name of the table in the list, you can still add it).

The other option is the option you are using: Oracle Spatial Object for the geometry and Oracle Non-spatial for the attributes. Then use the FeatureJoiner (FeatureMerger before FME 2018) to join both datasets.

The last option to mention here is using the SQLCreator transformer (Oracle Spatial Object) to read the data using a join SQL statement where you have the database join the geometry and the attribute tables. I think I would prefer using this as it is probably the best performing solution.

Badge

You can use the Oracle Spatial reader for both. The reader does not find the non spatial table automatically (in the table list, but if you type the name of the table in the list, you can still add it).

The other option is the option you are using: Oracle Spatial Object for the geometry and Oracle Non-spatial for the attributes. Then use the FeatureJoiner (FeatureMerger before FME 2018) to join both datasets.

The last option to mention here is using the SQLCreator transformer (Oracle Spatial Object) to read the data using a join SQL statement where you have the database join the geometry and the attribute tables. I think I would prefer using this as it is probably the best performing solution.

Thank you....!! I tried the two other options, and yes they worked as well....

Reply