My workplace has an oracle database with a very large number of spatial tables.

Therefore, it takes a long time to load the oracle connection in QGIS.

Does anyone know how this could be speed up?

  • Do you use the 'geometry_columns' table? That speeds things up for SQL Server... might fix things for Oracle too. – Alex Leith May 22 '15 at 11:12

The time is spent for reading metadata of all available tables. By looking at the GUI of QGIS it does not offer a proper method for speeding it up. Checking the "Only look for user's tables" would work if you can change the ownership to QGIS user but if you work in an enterprise that is probably not possible and a bad idea anyways.

There should be a possibility to restrict the list of tables before starting to read the metadata. Easy start would be to add an option "only look in user_sdo_geom_metadata" while now there is only an option "only look in all_sdo_geom_metadata". Then you could simple create a new Oracle user for QGIS and register just the necessary tables and views into user_sdo_geom_metadata.

Another option would be to make QGIS UI to offer a possibility to make a new Oracle DB connection with a user defined table list. In GDAL it is made by adding a comma delimited list at the end of the connection string as described in http://www.gdal.org/drv_oci.html

| improve this answer | |
  • I had access to an ArcGIS trial and load times were about the same as for SQL Server. Now I can only use QGIS to access the Oracle Spatial tables, and it's taking really long to load. Hoping they will add an option to speed up this process. – Cindy Jayakumar Jun 3 '16 at 11:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.