#1 Wed 29 October 2025 18:12
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 1021
QGIS: Enchainer requetes SQL sur GPKG
Bonsoir à tous,
J'ai une base de données au format GPKG, sur laquelle j'ai une chaine de requêtes SQL pour mettre à jour les données attributaires (des UPDATE principalement).
Dans le gestionnaire de bases de données de QGis, je suis obligé de sélectionner chaque requête une à une pour les exécuter. Si j'en sélectionne plusieurs à la suite, j'ai l'erreur :
You can only execute one statement at a time.
Je pense que pour enchainer les requêtes SQL en une seule fois, le mieux serait de passer par un script Python (?).
Je me débrouille un peu en Python (en dehors de QGis), mais le souci, c'est que je n'arrive pas à activer l'extension "mod_spatialite" pour que les fonctions spatiales du module sqlite3, et mes requêtes, bien qu'attributaires uniquement, concernent des couches spatiales.
J'ai par exemple ce message pour un simple UPDATE :
Erreur pour : UPDATE matable SET monchamp = mavaleur... -> no such function: ST_IsEmpty
Comment feriez-vous pour automatiser une chaine de requêtes SQL sur un GPKG, vous ?
Je n'ai jamais utilisé la console Python de QGis (je ne sais pas faire) : peut-être serait-ce plus simple que mon installation Python Windows ?
Merci pour vos conseils !
Dernière modification par Sylvain M. (Wed 29 October 2025 18:13)
Sylvain M.
Hors ligne
#2 Mon 03 November 2025 18:10
- Alban Kraus
- Participant actif
- Lieu: Tulle (19)
- Date d'inscription: 13 Jan 2022
- Messages: 84
Re: QGIS: Enchainer requetes SQL sur GPKG
Bonjour Sylvain,
Personnellement, j'aurais utilisé la ligne de commande et ogr2ogr, qui permet d'exécuter un script SQL sur n'importe quel format de données :
https://gdal.org/en/stable/programs/ogr … gr2ogr-sql
On doit pouvoir l'exécuter en Python aussi.
Hors ligne


