#1 Tue 15 March 2022 14:17
- image95
- Participant assidu
- Date d'inscription: 6 Sep 2014
- Messages: 256
QGIS/Gestionnaire BD: stockage resultat requete SQL ?
Bonjour,
Le plugin Qgis Gestionnaire BD offre une fenêtre SQL permettant notamment
d'executer des requetes et de charger en tant que nouvelle couche.
Peut on dire que le resultat qui peut etre chargé dans le canvas est une vue ?
Il ne semble pas véritablement s'agir d'une couche temporaire ?
Le resultat est il stocké au niveau du projet Qgis?
Merci.
Dernière modification par image95 (Tue 15 March 2022 14:21)
Hors ligne
#2 Tue 15 March 2022 22:09
- JD
- Moderateur
- Date d'inscription: 8 Aug 2013
- Messages: 726
Re: QGIS/Gestionnaire BD: stockage resultat requete SQL ?
Bonjour,
la couche chargée grâce à au gestionnaire de BD de qgis est une couche virtuelle et est stockée en effet dans le projet qgis.
Ca agit aussi un peu comme une vue. Néanmoins, il faut faire attention notamment en terme de performance.
Cordialement,
Hors ligne
#3 Wed 16 March 2022 09:57
- image95
- Participant assidu
- Date d'inscription: 6 Sep 2014
- Messages: 256
Re: QGIS/Gestionnaire BD: stockage resultat requete SQL ?
D'accord merci. Je comprends mieux maintenant la différence entre une couche temporaire et une couche virtuelle.
La couche virtuelle offre l'avantage d'etre stockée au niveau du projet qgis. Et sera donc restaurée lors de la réouverture du projet, contrairement à une couche temporaire.
Pour les couches virtuelles, si j'ai bien compris,pour un user Postgis, l'avantage de passer par la fenêtre SQL du menu gestionnaire de BD est qu'elle supporte le SQL et les fonctions Postgis. Contrairement au menu classique des couches virtuelles (vecteur-> couche virtuelle) qui si je dis pas de betises supporte du SQL mais les fonctions Spatialite. Je vois que le menu GEstionnaire de BD supporte aussi les couches virtuelles comme 'fournisseur de traitement'.
Peut etre que Qgis offre la possiblité egalement de requeter en SQL via des couches shapefiles? De generer par exemple une couche virtuelle depuis des requetes SQL et des couches shp?
Hors ligne
#4 Wed 16 March 2022 23:00
- JD
- Moderateur
- Date d'inscription: 8 Aug 2013
- Messages: 726
Re: QGIS/Gestionnaire BD: stockage resultat requete SQL ?
La couche virtuelle offre l'avantage d'etre stockée au niveau du projet qgis. Et sera donc restaurée lors de la réouverture du projet, contrairement à une couche temporaire.
Oui. C'est vrai. Après l'extension memory layer saver permet de palier au problème des couches temporaires en sauvegardant dans un fichier .mldata à l'endroit où est stocké le projet.
Pour les couches virtuelles, si j'ai bien compris,pour un user Postgis, l'avantage de passer par la fenêtre SQL du menu gestionnaire de BD est qu'elle supporte le SQL et les fonctions Postgis. Contrairement au menu classique des couches virtuelles (vecteur-> couche virtuelle) qui si je dis pas de betises supporte du SQL mais les fonctions Spatialite. Je vois que le menu GEstionnaire de BD supporte aussi les couches virtuelles comme 'fournisseur de traitement'.
Quand j'ai lu votre message initialement, je suis parti du postulat que vous n'utilisiez pas postgis ou autres choses mais visiblement mon postulat était faux. Pour être tout à fait correct, lorsque vous requêtez une couche postgis, la couche chargée est comme une vue. En fait il stocke le résultat de la requête sql dans les paramètres de la couche et l'exécute quand il a besoin (rafraichissement de l'écran, ...).
Selon le fournisseur, le mécanisme n'est pas le même. Quand je vous parlais de couches virtuelles, c'est effectivement pour les requêtes qui utilisent le fournisseur couche virtuelle.
Peut etre que Qgis offre la possiblité egalement de requeter en SQL via des couches shapefiles? De generer par exemple une couche virtuelle depuis des requetes SQL et des couches shp?
En effet, toutes les couches chargées (notamment les couches autres que dans un sgbdr) type shp, csv peuvent être requêter en utilisant le moteur "spatialite" fournit par les couches virtuelles.
Hors ligne