04 - Import et export de fichiers SHP
Cet exercice va vous permettre de mettre en œuvre un import et export de fichiers SHP
Question
Importer dans le schéma travail de la base stageXX les tables :
PONCTUEL_HYDROGRAPHIQUE
SURFACE_HYDROGRAPHIQUE
TRONCON_HYDROGRAPHIQUE
puis exporter toutes les tables de la base stageXX
dans le format SHP dans un dossier \masauvegarde
sur votre PC.
Indice
On pourra, par exemple, utiliser pour méthode le glisser-lâcher avec parcourir et navigateur(2) pour l'import
et une commande ogr2ogr pour exporter au format SHP
(on pourra utiliser la console osgeo4w.bat
disponible sous c:\program...\qgis
)
Solution
Pour importer en une seule fois des couches qui sont sur le 'système de fichier' on peut, par exemple, utiliser la méthode par glisser-lacher
Pour l'export, il faut lancer osgeo4w.bat sous c:\program...\qgis (à voir en fonction de l'installation de QGIS sur votre poste)
puis taper la commande :
ogr2ogr.exe -f "ESRI Shapefile" "i\masauvegarde" "PG:dbname='stageXX' host=XXX.XX.XX.XX port=5432 user='stageXX' password='XXXXX' sslmode=disable"
remplacer les XX par les bonnes valeurs...
Ceci sauvegarde toutes les tables de la base stage00.

Des alertes peuvent indiquer que des noms de champs ont été tronqués à 10 caractères qui est le maximum dans le format SHP.
vérifier sous QGIS quelques fichiers sauvegardés.
Complément :
Utilisation de ogr2ogr dans un fichier de commande (.bat si windows).
On peut automatiser les exports (et imports) dans un fichier de commande. Ci-dessous un exemple simple :
SET monpathexe=C:\Programmes\QGIS_Lyon\bin\
SET monformat="ESRI Shapefile"
SET monrepsauv="d:\divers\did"
SET mabase="stage00"
SET monserveurip=172.28.9.122
SET monserveurport=5632
SET monuser='stage00'
SET monpassword='stage00'
cls
%monpathexe%ogr2ogr --version
%monpathexe%ogr2ogr --help
%monpathexe%ogr2ogr.exe -f %monformat% %monrepsauv% "PG:dbname=%mabase% host=%monserveurip% port=%monserveurport% user=%monuser% password=%monpassword% sslmode=disable"