From: | erikd hv <erikdhv(at)gmail(dot)com> |
---|---|
To: | Fabio Arias <fharias(at)gmail(dot)com> |
Cc: | Lista Postgres ES <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: PROCESAR ARCHIVO DE TEXTO EN FUNCION |
Date: | 2011-06-24 21:41:59 |
Message-ID: | BANLkTi=h-s2uavvn=qpsihkT-p3xfL9d4g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Buenas tardes Fabio.
He tenido la experiencia de realizar algo parecido.
Teniendo en cuenta que la BD y el código php se ejecutaban en servidores
diferentes (respectivamente en el servidor de BD y Web) utilice las
funciones sh2_connect,ssh2_auth_password, ssh2_sftp, ssh2_scp_send para
transferir el archivo al servidor de BD desde el web y luego simplemente
ejecuto el procedimiento almacenado que carga el archivo a una tabla con la
función COPY.
Ing. Erik Hernandez V
El 23 de junio de 2011 12:57, Fabio Arias <fharias(at)gmail(dot)com> escribió:
> Muy buenas tardes, me gustaria que alguien me ayudara con el procesamiento
> de un archivo de texto en una función.
>
> La idea es que cargo desde PHP un archivo que tiene la informacion a ser
> insertada en la tabla PINPRODUCTO, pero no quiero hacerlo desde PHP ya que
> quiero controlar los errores dentro del procesimiento almacenado y conocer
> en que linea ocurrio un error y hacerle rollback a todo en caso de algun
> error.
>
> CREATE TABLE "PINPRODUCTO"
> (
> "PINE_ID" integer NOT NULL DEFAULT
> nextval('"PIN_PINE_ID_seq"'::regclass),
> "PROD_ID" integer NOT NULL,
> "LOTE_ID" integer NOT NULL,
> "PINE_SERIAL" character varying(30) NOT NULL,
> "PINE_NUMEROPIN" character varying(30) NOT NULL,
> "PINE_FECHACARGUE" date NOT NULL DEFAULT now(),
> "PINE_FECHAEXPIRACION" date NOT NULL,
> "ESPI_ID" integer NOT NULL,
> CONSTRAINT "PINPRO_pkey" PRIMARY KEY ("PINE_ID"),
> CONSTRAINT "PIN_ESPI_ID_fkey" FOREIGN KEY ("ESPI_ID")
> REFERENCES "ESTADOPIN" ("ESPI_ID") MATCH SIMPLE
> ON UPDATE NO ACTION ON DELETE NO ACTION,
> CONSTRAINT "PIN_LOTE_ID_fkey" FOREIGN KEY ("LOTE_ID")
> REFERENCES "LOTELOGICO" ("LOTE_ID") MATCH SIMPLE
> ON UPDATE NO ACTION ON DELETE NO ACTION,
> CONSTRAINT "PIN_PROD_ID_fkey" FOREIGN KEY ("PROD_ID")
> REFERENCES "PRODUCTO" ("PROD_ID") MATCH SIMPLE
> ON UPDATE NO ACTION ON DELETE NO ACTION
> )
> WITH (
> OIDS=FALSE
> );
>
> Gracias,
>
>
> Fabio Hernando Arias Vera
> Ingeniero de Sistemas
> IT Manger & Founder BrainWinner Group SAS
> follow me @fabioariasvera
> Cel. +57 320 8494130
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Carlos Manuel Cruz Núñez | 2011-06-25 01:12:43 | Procedural Language |
Previous Message | Álvaro Hernández Tortosa | 2011-06-24 20:54:17 | Re: procedural language |