#1 Mon 21 January 2013 10:13
- simo lay
- Participant assidu
- Date d'inscription: 8 Dec 2011
- Messages: 172
Importer une table dans une base postgresql distante
Bonjour,
je souhaite importer un fichier CSV qui excite sur ma machine dans une base de données postgreSQL qui est sur un serveur à distant.
le problème c'est que lorsque j'essaye d'importer
Code:
copy nom_table_sur_le_serveur( x, y, z ) from E'D:\nom_table_sur_ma_machine.csv' delimiters ';' csv header;
j'obtients un message d'erreur
Code:
ERREUR: n'a pas pu ouvrir le fichier « D:dvf_baseds.csv » pour une lecture : No such file or directory
Donc je sais pas s'il'y a un moyen pour importer les fichiers csv depuis une machine vers la base à distante
merci
Dernière modification par simo lay (Mon 21 January 2013 10:13)
Hors ligne
#2 Mon 21 January 2013 10:34
Re: Importer une table dans une base postgresql distante
Bonjour,
Le fichier csv à importer doit être sur le serveur. Vous pouvez passer par un ETL pour lire le fichier CSV et envoyer les requêtes SQL.
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#3 Mon 21 January 2013 11:15
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3199
- Site web
Re: Importer une table dans une base postgresql distante
Bonjour,
je souhaite importer un fichier CSV qui excite sur ma machine
C'est la passion geek ?
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#4 Mon 21 January 2013 13:20
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: Importer une table dans une base postgresql distante
Bonjour,
Pour completer la reponse d'Yves, vous avez deux solutions relativement simples pour importer ce fichier:
• Si vous disposez d'une base Postgresql de meme version sur votre machine windows cliente, vous pouvez creer la table dans cette base, y importer les données avec COPY, puis transferer cette table vers le serveur avec pg_dump et psql:
Code:
pg_dump -d mabase -t matable | psql -h adresse-server -d baseserveur
• Si vous ne disposez pas d'un base postgreSQL locale, vous pouvez utiliser OGR (www.gdal.org) pour lire le CSV et le transferer sur la base du serveur. la programme OGR est ogr2ogr (un ETL dont parlait Yves).
Nicolas
Hors ligne
#5 Tue 22 January 2013 07:42
- simo lay
- Participant assidu
- Date d'inscription: 8 Dec 2011
- Messages: 172
Re: Importer une table dans une base postgresql distante
Bonjour,
merci de vos réponses, je testerai les deux pistes et je vous tiens au courant.
Hors ligne
#6 Tue 22 January 2013 17:54
- Louvarun
- Juste Inscrit !
- Date d'inscription: 20 Jun 2012
- Messages: 8
Re: Importer une table dans une base postgresql distante
Bonjour,
une autre piste moins simple mais intéressante : si le fichiers est sur le serveur, utiliser les "foreign data wrapper". Nous avons utilisé cela pour intégrer un référentiel taxonomique (fichier texte) :
http://si.cenlr.org/2012/09/25/interrog … reign-data
Bonne soirée,
Hors ligne
#7 Tue 22 January 2013 18:01
Re: Importer une table dans une base postgresql distante
Bonsoir,
le post précédent a été attribué à une collègue (louvarun) par erreur. Le navigateur m'ayant connecté par défaut avec son compte.
Bonne soirée
Mathieu BOSSAERT
Association GeoRezo
Hors ligne