[Pgsql-ayuda] Insertar valores de un archivo de texto
Alvaro Herrera
alvherre@dcc.uchile.cl
Mon, 12 Jan 2004 15:01:25 -0300
On Sun, Jan 11, 2004 at 10:48:43AM -0500, postgres@enelserver.com wrote:
> > "EPS034";"RC";"3393047";"HERNANDEZ";"LOPEZ";"NICOLE";"NAIAN";22/1/1999;"5"
> > "EPS034";"RC";"3393047";"HERNANDEZ";"LOPEZ";"NICOLE";"NAIAN";22/1/1999;"5"
>
> #!/usr/bin/perl
>
> open (ARCHIVO , 'tuarchivoconlainformacion')
> || die ' no se abrio el archivo';
>
> while (<ARCHIVO>){
> chomp;
> $_ =~s/\"/\'/g;
> @data = split (/;/);
Ojo, esto falla si tienes un campo del estilo "Hernandez;Salgado". En
general separar campos no es tan trivial en el caso general. Si se
tiene esta situacion se necesita una correccion a este script, la cual
queda de ejercicio para el lector.
Otro hint: es mejor usar COPY que un INSERT para cada linea, es mucho
mas rapido.
> 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
:-D
--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Everybody understands Mickey Mouse. Few understand Hermann Hesse.
Hardly anybody understands Einstein. And nobody understands Emperor Norton."