Skip to main content

When specifying the name of a table in the Tables connection property (or the name of a view in the Views property), you may receive the following error when querying a table in your Oracle connection (even if the connection was successfully tested):

The catalog needs to be specified in the TABLE or VIEW property.

However, Oracle does not make use of catalogs. With this in mind, what should be done to work around the error?

This error will be encountered in all connectors provided by CData when connecting to a data source with multiple schemas or catalogs. The error is thrown to avoid ambiguity between tables/views that may exist in multiple catalogs or schemas.

To work around the error, the fully qualified name of the table/view will need to be specified in the Tables or Views property. In other words, the table/view name will need to be prefixed with the names of both the catalog and the schema that it belongs to.

However, since Oracle does not make use of catalogs, the connection will specify the catalog name for each table as NULL. This can be seen when querying the system table sys_tables:

This means that the table/view name will need to be prefixed with NULL as the catalog name in addition to its schema name. Refer to the following example:

NULL.SchemaName.TableName

Once the table or view is specified as such, the error will be resolved and the query should execute without issues.

Should issues persist, please reach out to [email protected] for further assistance.


Reply