#1 Tue 08 October 2019 09:49
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 995
[PostGis] [QGis] Couche sans clé primaire (vues)
Bonjour à tous,
Suite à ce message, je prends la bonne résolution de passer systématiquement par DB Manager pour charger mes couches PostGis.
Cependant, je fais face à un nouveau petit problème : pour pas mal de mes couches, issues de vues (matérialisées), j'obtiens une erreur au chargement car QGis n'identifie pas de clé primaire.
Pas de clé mentionnée pour la vue/requête.
Couche PostgreSQL sans clé primaire
Effectivement, quand je passe par le bouton "Ajouter une couche PostGis" (donc sans passer par DBManager), je dois indiquer manuellement pour ces vues quel champ utiliser comme clé primaire.
Y aurait-il un moyen, dans le SQL de création de la vue (matérialisée), de définir quel champs est une clé primaire, et que QGis l'identifie automatiquement ?
Sylvain M.
Hors ligne
#2 Tue 08 October 2019 09:52
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 995
Re: [PostGis] [QGis] Couche sans clé primaire (vues)
Bon, je crois avoir trouvé la solution (et j'avais même déjà participé à l'échange en question) : https://forums.postgresql.fr/viewtopic.php?id=1854
Il semblerait qu'un
Code:
row_number() OVER () AS oid
soit suffisant !
Je teste ça !
Sylvain M.
Hors ligne
#3 Tue 08 October 2019 09:56
- Sylvain M.
- Participant assidu
- Lieu: Saint-Pierre-des-Nids (53)
- Date d'inscription: 8 Sep 2005
- Messages: 995
Re: [PostGis] [QGis] Couche sans clé primaire (vues)
Je teste ça !
Testé, et approuvé !
Au cas où ce soit utile à d'autres !
Sylvain M.
Hors ligne