PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

Script Unix pour alimenter une table via un fichier plat

Technique - général | Script Unix pour alimenter une table via un fichier plat

Par abibes le 29/06/2006 - 10:00

Bonjour tout le monde,

Je voudrais faire un script sous unix qui prend en paramètre le nom d'un fichier plat pour pouvoir alimenter une table dans Postgres 8.1.3.

Si quelqu'un a une idée ou a déja fait pareil, merci d'avance.

Options d'affichage des commentaires

Sélectionnez la méthode d'affichage des commentaires que vous préférez, puis cliquez sur "Sauvegarder les paramètres" pour activer vos changements.

psql ?

SAS/ = 29 Juin, 2006 - 15:12

Bonjour,

psql mabase monuseur < monfichierplat

Pouvez-vous nous en dire un peu plus sur le contenu du fichier et ce que vous voulez en faire ?

Librement,
Stéphane Schildknecht


Précisions...

abibes/ = 29 Juin, 2006 - 15:22

Merci pour votre réponse si rapide.

Mais, j'avais oublié de spécifier que les données dans le fichier ne contiennent pas de délimiteur.

Exemple:
000115TataToto2006-10-26
000116TitiTiti2006-02-19
...
Donc il faut parser ce fichier ligne par ligne et insérer les données pour chaque colonne.

Id = 0:5 (indexes)
Nom = 6:9
Prenom = 10:13
Date = 14:24

C'est comme lire le fichier en java ligne par ligne et initialiser chaque champ avec des subString()

id = ligne.subString(0,6);
nom = ligne.subString(6,9);
...

J'espère que c'est plus clair et que c'est surtout faisable.

Merci.


© PostgreSQLFr, tous droits rĂ©servĂ©s.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.