Skip to content

Commit

Permalink
GPKG: make it compatibile with SQLite 3.49.1 in SQLITE_DQS=0 mode
Browse files Browse the repository at this point in the history
  • Loading branch information
rouault committed Feb 18, 2025
1 parent 3e34cfe commit 74d9558
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
2 changes: 1 addition & 1 deletion autotest/ogr/ogr_gpkg.py
Original file line number Diff line number Diff line change
Expand Up @@ -624,7 +624,7 @@ def test_ogr_gpkg_6(gpkg_ds, tmp_path):
def test_ogr_gpkg_7(gpkg_ds):
def get_feature_count_from_gpkg_contents():
with gpkg_ds.ExecuteSQL(
'SELECT feature_count FROM gpkg_ogr_contents WHERE table_name = "field_test_layer"',
"SELECT feature_count FROM gpkg_ogr_contents WHERE table_name = 'field_test_layer'",
dialect="DEBUG",
) as sql_lyr:
f = sql_lyr.GetNextFeature()
Expand Down
13 changes: 7 additions & 6 deletions ogr/ogrsf_frmts/gpkg/ogrgeopackagetablelayer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7293,12 +7293,13 @@ OGRErr OGRGeoPackageTableLayer::AlterGeomFieldDefn(
eErr = SQLCommand(
m_poDS->GetDB(),
CPLString()
.Printf("UPDATE gpkg_geometry_columns SET column_name = \"%s\" "
"WHERE lower(table_name) = lower(\"%s\") "
"AND lower(column_name) = lower(\"%s\")",
SQLEscapeName(poNewGeomFieldDefn->GetNameRef()).c_str(),
SQLEscapeName(m_pszTableName).c_str(),
SQLEscapeName(poGeomFieldDefn->GetNameRef()).c_str())
.Printf(
"UPDATE gpkg_geometry_columns SET column_name = '%s' "
"WHERE lower(table_name) = lower(\"%s\") "
"AND lower(column_name) = lower(\"%s\")",
SQLEscapeLiteral(poNewGeomFieldDefn->GetNameRef()).c_str(),
SQLEscapeName(m_pszTableName).c_str(),
SQLEscapeName(poGeomFieldDefn->GetNameRef()).c_str())
.c_str());
if (eErr != OGRERR_NONE)
{
Expand Down

0 comments on commit 74d9558

Please sign in to comment.