Migrer des bases postgresql avec PgAdmin 4:problèmes et solutions

Mise à jour du 28/04/2017

Le problème soulevé ici a été résolu par l’équipe de pgAdmin (testé sur la version 1.4 de pgAdmin). Si vous trouvez ce problème et que vous avez une version antérieure de pgAdmin 4, il suffit de télécharger et installer la dernière version). Par contre la méthode peut toujours servir pour contourner des éventuelles erreurs de pgAdmin, en réutilisant la syntaxe récupérée sur la fenêtre d’erreur)

Depuis peu, la nouvelle version de PostgreSQL 9.6 est disponible. Parmi les nouveautés, une nouvelle interface du client PgAdmin est disponible (PgAdmin 4 v1.1).
Si vous voulez migrer vos bases de données d’une version précédente de PostgreSQL vers une base 9.6, ce n’est pas gagné!
Tout d’abord plantons le décor: je ne parlerai que du travail sous Windows, je n’ai pas des infos si ceci arrive aussi sous Linux. Deuxièmement, j’ai reporté le bug depuis un mois à l’équipe de PgAdmin mais pour l’instant il n’a pas été pris en charge. Mais comme il faut bien continuer à travailler en attendant que le problème soit résolu, voici un moyen de contourner le problème.
Continuer la lecture de « Migrer des bases postgresql avec PgAdmin 4:problèmes et solutions »

Recettes Python pour QGis: accéder aux données vecteur (postgis,spatialite)

Dans cette série d’articles nous abordons comment accéder aux données de type vecteur avec Python et QGis. Tout d’abord nous avons vu dans l’article précédent (Recettes Python pour QGis: accéder aux données vecteur (shapefile)) comment charger un fichier shapefile. Dans celui-ci nous verrons comment charger une table Postgresql/Postgis et une table Spatialite. Continuer la lecture de « Recettes Python pour QGis: accéder aux données vecteur (postgis,spatialite) »

Développer une application avec pgrouting sous Windows (7):OpenLayers 3

Nous arrivons à la fin de cette série. Après avoir mis en place la base de données Postgres/Postgis, nous avons configuré Geoserver pour servir les résultats de pgrouting en un lux WMS. Il ne reste plus qu’à  créer une page html avec openlayers pour pouvoir entrer les points de départ et d’arrivée et de visualiser l’itinéraire calculé. Continuer la lecture de « Développer une application avec pgrouting sous Windows (7):OpenLayers 3 »

Développer une application avec pgrouting sous Windows (6):Configurer Geoserver

Nous avons vu dans les articles précédents comment lettre en forme les données du réseau pour pgrouting et comment développer un wrapper permettant de trouver l’itinéraire entre deux points.

Nous verrons ici comment configuer Geoserver pour fournir le résultat du wrapper en tant que couche WMS ou WFS pour l’utiliser dans une page web utilisant OpenLayers 3 (prochain article). Continuer la lecture de « Développer une application avec pgrouting sous Windows (6):Configurer Geoserver »

Développer une application avec pgrouting sous Windows (5):écrire un Wrapper

Un wrapper est une fonction de PostgreSQL comme une autre, qui contient des fonctionnalités de pgRouting et PostGIS sous une forme plus facile à utiliser que lors de l’appel des fonctions pgRouting et PostGIS directement.
Les fonctions natives de pgRouting ont été conçues pour être génériques afin de pouvoir être utilisées dans le plus large éventail d’applications. Bien que cela offre de la flexibilité, l’inconvénient est que vous pouvez être obligés de remodeler temporairement votre propre structure de données avant de pouvoir appliquer des fonctions de pgRouting.
Rédiger une fonction wrapper adaptée à votre structure de données diminue la nécessité de passer par des requêtes SQL encombrantes.
Une autre raison d’utiliser les fonctions de wrapper est de contourner les attaques par injection SQL. Ériger une barrière fonctionnelle entre les entrées de l’utilisateur et les fonctions de pgRouting natives vous permet de désinfecter les entrées utilisateur. Continuer la lecture de « Développer une application avec pgrouting sous Windows (5):écrire un Wrapper »

Développer une application avec pgrouting sous Windows (3):l’algorithme Dijkstra

L’algorithme de Dijkstra prend en entrée un graphe orienté pondéré par des réels positifs et un sommet source. Il s’agit de construire progressivement un sous-graphe dans lequel sont classés les différents sommets par ordre croissant de leur distance minimale au sommet de départ. La distance correspond à la somme des poids des arcs empruntées. Continuer la lecture de « Développer une application avec pgrouting sous Windows (3):l’algorithme Dijkstra »

Développer une application avec pgrouting sous Windows (1)

Voici une série d’articles permettant de mettre en place une application web de routage (calcul d’itinéraires) totalement autonome, c’est à dire n’utilisant aucun service web ni api pour le calcul de l’itinéraire.
Nous mettrons en place la base de données contenant le réseau routier (ou fluvial, etc.) avec Postgresql, puis nous mettrons en place un flux wms avec Geoserver et, enfin, nous développerons une page de calcul avec OpenLayers 3. Le tout sous Windows.

Dans ce premier article nous verrons la mise en place de la base de données du réseau. Continuer la lecture de « Développer une application avec pgrouting sous Windows (1) »

Mise à jour d’une base Postgresql/Postgis avec LibreOffice

Même si cela peut paraître bizarre (utiliser un outil non SIG pour mettre à jour une base SIG) il y a des occasions où cela s’avère très utile.

Une base SIG comporte deux types d’informations: l’information spatiale (géométrie) et l’information attributaire. Pour de nombreux projets, sur le terrain, on retrouve du personnel qui n’est pas formé au SIG mais qui a la charge de maintenir les informations, surtout attributaires, d’une base SIG.

Il est plus facile de mettre à leur disposition un outil tel que LibreOffice plutôt que de les former au SIG. Continuer la lecture de « Mise à jour d’une base Postgresql/Postgis avec LibreOffice »

Débuter avec Geoserver

Nous avons vu comment démarrer avec Postgresql/Postgis. Une fois que l’on a sa base de données le besoin suivant le plus courant est de mettre en ligne des données.

Bien sûr, il existe de multiples possibilités techniques pour faire ceci. Pour rester dans le plus standard, la mise en place de flux WFS et WMS à partir des données Postgresql/Postgis est l’un des moyens les plus robustes.

Pour ce faire, nous verrons maintenant comment débuter avec Geoserver.

Continuer la lecture de « Débuter avec Geoserver »