[gdal-dev] Pass >1 geometry field via ODBC

Even Rouault even.rouault at spatialys.com
Fri Feb 14 13:04:15 PST 2020


> If there are two records in the Geometry_Columns table, QGis will only read
> the WKT field defined in the first record.
> 
> Is this a limitation of the ODBC driver?

Yes, the driver isn't currently designed to deal with that. Assuming that the 
schema of the Geometry_Columns has a unicity constraint on (f_table_name, 
f_geometry_column), and not f_table_name only, I suspect the driver would 
report two OGR layers (if you look at the ogrinfo output), one with each of 
the geometry column active, but with the same name, which would probably 
confuse QGIS later.

> Or is there a specific way to pass >1 geometry field from a table to QGis 
via ODBC?

Not that I can think of, apart the trick you found.

QGIS can only deal with a single geometry column per layer, but it can deal 
with OGR layers that report several geometry layers (for other drivers that 
have such capability, like PostgreSQL, SQLite, etc), by instanciating one QGIS 
layer for each geometry column.

Even

-- 
Spatialys - Geospatial professional services
http://www.spatialys.com


More information about the gdal-dev mailing list