Revision: 4694 http://sourceforge.net/p/jump-pilot/code/4694 Author: elnico Date: 2015-12-27 13:59:09 +0000 (Sun, 27 Dec 2015) Log Message: ----------- Handled geometry type for spatial tables in SQL query, according to geometry_type column values (int to code geometry type)
Modified Paths: -------------- core/trunk/src/com/vividsolutions/jump/datastore/spatialite/SpatialiteDSMetadata.java Modified: core/trunk/src/com/vividsolutions/jump/datastore/spatialite/SpatialiteDSMetadata.java =================================================================== --- core/trunk/src/com/vividsolutions/jump/datastore/spatialite/SpatialiteDSMetadata.java 2015-12-27 13:44:16 UTC (rev 4693) +++ core/trunk/src/com/vividsolutions/jump/datastore/spatialite/SpatialiteDSMetadata.java 2015-12-27 13:59:09 UTC (rev 4694) @@ -66,12 +66,21 @@ spatialExtentQuery2 = null; sridQuery = "SELECT srid FROM geometry_columns where f_table_name = '%s' and f_geometry_column = '%s'"; // geo column query needs to be built occording to geometryColumnsLayout - if (this.geometryColumnsLayout == GeometryColumnsLayout.FDO_LAYOUT) { - geoColumnsQuery = "SELECT f_geometry_column, srid, geometry_type FROM geometry_columns where f_table_name = '%s'"; + if (this.geometryColumnsLayout == GeometryColumnsLayout.FDO_LAYOUT || + this.geometryColumnsLayout == GeometryColumnsLayout.OGC_OGR_LAYOUT) { + geoColumnsQuery = "SELECT f_geometry_column, srid,\n" + + " case\n" + + " when geometry_type = 1 then 'POINT'\n" + + " when geometry_type = 2 then 'LINESTRING'\n" + + " when geometry_type = 3 then 'POLYGON'\n" + + " when geometry_type = 4 then 'MULTIPOINT'\n" + + " when geometry_type = 5 then 'MULTILINESTRING'\n" + + " when geometry_type = 6 then 'MULTIPOLYGON'\n" + + " when geometry_type = 7 then 'GEOMETRY COLLECTION'\n" + + " else geometry_type end as geometry_type\n" + + "FROM geometry_columns where f_table_name = '%s'"; } else if (this.geometryColumnsLayout == GeometryColumnsLayout.OGC_SPATIALITE_LAYOUT) { geoColumnsQuery = "SELECT f_geometry_column, srid, type FROM geometry_columns where f_table_name = '%s'"; - } else if (this.geometryColumnsLayout == GeometryColumnsLayout.OGC_OGR_LAYOUT) { - geoColumnsQuery = "SELECT f_geometry_column, srid, geometry_type FROM geometry_columns where f_table_name = '%s'"; } else { geoColumnsQuery = "SELECT '' "; } ------------------------------------------------------------------------------ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel