@@ -3213,7 +3213,7 @@ bool QgsPostgresProvider::getGeometryDetails()
3213
3213
}
3214
3214
}
3215
3215
3216
- sql = QString ( " select type,srid from geometry_columns"
3216
+ sql = QString ( " select upper( type) ,srid from geometry_columns"
3217
3217
" where f_table_name=%1 and f_geometry_column=%2 and f_table_schema=%3" )
3218
3218
.arg ( quotedValue ( tableName ) )
3219
3219
.arg ( quotedValue ( geomCol ) )
@@ -3257,7 +3257,7 @@ bool QgsPostgresProvider::getGeometryDetails()
3257
3257
// Didn't find what we need in the geometry_columns table, so
3258
3258
// get stuff from the relevant column instead. This may (will?)
3259
3259
// fail if there is no data in the relevant table.
3260
- sql = QString ( " select %1(%2),geometrytype(%2) from %3" )
3260
+ sql = QString ( " select %1(%2),upper( geometrytype(%2) ) from %3" )
3261
3261
.arg ( connectionRO->majorVersion () < 2 ? " srid" : " st_srid" )
3262
3262
.arg ( quotedIdentifier ( geometryColumn ) )
3263
3263
.arg ( mQuery );
@@ -3287,9 +3287,9 @@ bool QgsPostgresProvider::getGeometryDetails()
3287
3287
// check to see if there is a unique geometry type
3288
3288
sql = QString ( " select distinct "
3289
3289
" case"
3290
- " when geometrytype(%1) IN ('POINT','MULTIPOINT') THEN 'POINT'"
3291
- " when geometrytype(%1) IN ('LINESTRING','MULTILINESTRING') THEN 'LINESTRING'"
3292
- " when geometrytype(%1) IN ('POLYGON','MULTIPOLYGON') THEN 'POLYGON'"
3290
+ " when upper( geometrytype(%1) ) IN ('POINT','MULTIPOINT') THEN 'POINT'"
3291
+ " when upper( geometrytype(%1) ) IN ('LINESTRING','MULTILINESTRING') THEN 'LINESTRING'"
3292
+ " when upper( geometrytype(%1) ) IN ('POLYGON','MULTIPOLYGON') THEN 'POLYGON'"
3293
3293
" end "
3294
3294
" from " ).arg ( quotedIdentifier ( geometryColumn ) );
3295
3295
if ( mUseEstimatedMetadata )
0 commit comments