Skip to main content
Solved

Error when reading data through Oracle Spatial Relational reader

  • September 25, 2019
  • 4 replies
  • 38 views

fmenco
Contributor
Forum|alt.badge.img+5

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.

Best answer by erik_jan

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.

View original
Did this help you find an answer to your question?

4 replies

erik_jan
Contributor
Forum|alt.badge.img+17
  • Contributor
  • Best Answer
  • September 25, 2019

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.


fmenco
Contributor
Forum|alt.badge.img+5
  • Author
  • Contributor
  • September 25, 2019
erik_jan wrote:

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?


erik_jan
Contributor
Forum|alt.badge.img+17
  • Contributor
  • September 25, 2019
fmenco wrote:

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.


fmenco
Contributor
Forum|alt.badge.img+5
  • Author
  • Contributor
  • September 25, 2019
erik_jan wrote:

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


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings