Re: [Pgsql-ayuda] Insertar valores de un archivo de texto

From: postgres(at)enelserver(dot)com
To: "Gustavo Adolfo Barrero Pulido" <gustavo(dot)barrero(at)unimeta(dot)edu(dot)co>
Cc: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [Pgsql-ayuda] Insertar valores de un archivo de texto
Date: 2004-01-11 15:48:43
Message-ID: 32847.200.67.29.237.1073836123.squirrel@enelserver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hola,
>
> Soy nuevo en el mundo de PosgreSQL y necesito saber cómo hago para
> insertar algunos valores que tengo en un archivo [1] de texto en un
> tabla???
>
> [1] Ej.:
> "EPS034";"RC";"3393047";"HERNANDEZ";"LOPEZ";"NICOLE";"NAIAN";22/1/1999;"5"
> "EPS034";"RC";"3393047";"HERNANDEZ";"LOPEZ";"NICOLE";"NAIAN";22/1/1999;"5"
>
> Ahhh, se me olvidaba, en PosgreSQL se pueden hacer subconsultas??
>
> Hasta la próxima,
>
>
>
>
> Gustavo Adolfo Barrero Pulido
>
> GuBA
> Linux User #318688
> gustavo(at)linux(dot)net
> Miembro GaLlo (http://gallo.tuxstone.net)
> Villavicencio - Meta - Colombia
>

Va

pones esto en un script que se llame digamos ... split.pl

#!/usr/bin/perl

open (ARCHIVO , 'tuarchivoconlainformacion')
|| die ' no se abrio el archivo';

while (<ARCHIVO>){
#quitamos el enter al final del archivo
chomp;
#reemplazamos las comillas dobles por sencillas
$_ =~s/\"/\'/g;
# a cada linea del archivo la dividimos en campos separados por ; y lo
#ponemos en un arreglo de nombre data

@data = split (/;/);

#armamos el comando insert con los valores del arreglo @data

$ins = "insert into tabla values (";

$ins .= $data[0] .",";
$ins .= $data[1] .",";
$ins .= $data[2] .",";
$ins .= $data[3] .",";
$ins .= $data[4] .",";
$ins .= $data[5] .",";
$ins .= $data[6] .",";
$ins .= "'" . $data[7] ."',";
$ins .= $data[8] ;

$ins .= ");\n";

print $ins ;
}
close ( ARCHIVO );

Ya que lo tienenes lo ejecutas:

perl split.pl > inserts.sql

ya que tienes tu archivo inserts.sql se lo mandas al postgresql

psql -U usuario dasededatos < inserts.sql

Se puede hacer que el mismo script lo inserte en la base de datos pero es
domingo y ya va a iniciar el partido de Kansas Vs Indianapolis y seguido
de Green Bay VS Philadelphia. De hecho la temporada termino cuando
eliminiaron a mis 49ers Pero esto no tiene nada que ver con postgresql

Seguimos ...

,''`. Leonel Nunez
: :' : http://enelserver.com
`. `' DEBIAN GNU/LINUX
`- A REAL FREE OS

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jose Joaquin Lorente Garcia 2004-01-12 09:38:47 Re: [Pgsql-ayuda] sobre dbms para postgress en Linux
Previous Message Gustavo Adolfo Barrero Pulido 2004-01-11 00:10:56 [Pgsql-ayuda] Insertar valores de un archivo de texto