This works perfectly fine with an Oracle TABLE but not with a VIEW. Why?
uri = QgsDataSourceURI()uri.setConnection(host, port, db, username, pw)uri.setWkbType(QGis.WKBPolygon)uri.setDataSource(schema, table, geomcol)vlayer = QgsVectorLayer(uri.uri(), table, 'oracle')print vlayer.isValid()..and returns TRUE. However, the same code does not work with a VIEW. Both TABLE and VIEW have correct entry in USER_SDO_GEOM_METADATA. All spatial tables in the database load correctly; none of the views do.All spatial tables and views load correctly in QGIS using Layer->Add Layer->Add Oracle Spatial Layer. Is it meant to work only with tables or am I doing something wrong?
أكثر...
uri = QgsDataSourceURI()uri.setConnection(host, port, db, username, pw)uri.setWkbType(QGis.WKBPolygon)uri.setDataSource(schema, table, geomcol)vlayer = QgsVectorLayer(uri.uri(), table, 'oracle')print vlayer.isValid()..and returns TRUE. However, the same code does not work with a VIEW. Both TABLE and VIEW have correct entry in USER_SDO_GEOM_METADATA. All spatial tables in the database load correctly; none of the views do.All spatial tables and views load correctly in QGIS using Layer->Add Layer->Add Oracle Spatial Layer. Is it meant to work only with tables or am I doing something wrong?
أكثر...