Skip to content
Snippets Groups Projects

Resolve "Introduce an index on `quadkey` in the `Building` table for SpatiaLite databases"

All threads resolved!
+ 5
3
@@ -486,8 +486,7 @@ class SpatiaLiteExposure(SpatiaLiteDatabase, AbstractExposure):
sql_statement += "'MULTIPOLYGON', 'XY')"
self.connection.execute(sql_statement)
# Create index for table Entity
sql_statement = "CREATE INDEX idx_entity ON "
sql_statement += "Entity(quadkey, osm_id)"
sql_statement = "CREATE INDEX idx_entity_quadkey ON Entity(quadkey, osm_id)"
self.connection.execute(sql_statement)
# Create triggers to ensure unique datasets even for osm_id = NULL
for trigger_type in ["INSERT", "UPDATE"]:
@@ -535,6 +534,9 @@ class SpatiaLiteExposure(SpatiaLiteDatabase, AbstractExposure):
sql_statement = "SELECT AddGeometryColumn('Building', 'geom', 4326, "
sql_statement += "'MULTIPOLYGON', 'XY')"
self.connection.execute(sql_statement)
# Create index for table Building
sql_statement = "CREATE INDEX idx_building_quadkey ON Building(quadkey)"
self.connection.execute(sql_statement)
logger.debug("Table `Building` created")
# Create table Tile
@@ -630,7 +632,7 @@ class SpatiaLiteExposure(SpatiaLiteDatabase, AbstractExposure):
sql_statement = "CREATE INDEX idx_entity_reference_quadkey ON "
sql_statement += "EntityReference(quadkey)"
self.connection.execute(sql_statement)
sql_statement = "CREATE INDEX idx_entity_reference_country_iso_code ON "
sql_statement = "CREATE INDEX idx_entityreference_countryisocode ON "
sql_statement += "EntityReference(country_iso_code)"
self.connection.execute(sql_statement)
logger.debug("Table `EntityReference` created")
Loading