Skip to content

Commit 6d5df6b

Browse files
committed
postgres provider: retrieve srs from postgis
1 parent 466631c commit 6d5df6b

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/providers/postgres/qgspostgresprovider.cpp

+8-1
Original file line numberDiff line numberDiff line change
@@ -3093,7 +3093,14 @@ QgsVectorLayerImport::ImportError QgsPostgresProvider::createEmptyLayer(
30933093
QgsCoordinateReferenceSystem QgsPostgresProvider::crs()
30943094
{
30953095
QgsCoordinateReferenceSystem srs;
3096-
srs.createFromSrid( mRequestedSrid.isEmpty() ? mDetectedSrid.toInt() : mRequestedSrid.toInt() );
3096+
int srid = mRequestedSrid.isEmpty() ? mDetectedSrid.toInt() : mRequestedSrid.toInt();
3097+
srs.createFromSrid( srid );
3098+
if ( !srs.isValid() )
3099+
{
3100+
QgsPostgresResult result = mConnectionRO->PQexec( QString( "SELECT proj4text FROM spatial_ref_sys WHERE srid=%1" ).arg( srid ) );
3101+
if ( result.PQresultStatus() == PGRES_TUPLES_OK )
3102+
srs.createFromProj4( result.PQgetvalue( 0, 0 ) );
3103+
}
30973104
return srs;
30983105
}
30993106

0 commit comments

Comments
 (0)