From: Chapilliquen Gutierrez Eduardo <ECHAPILLIQUEN@minem.gob.pe>
To: Alvaro Herrera <alvherre@commandprompt.com>
Cc: pgsql-es-ayuda@postgresql.org
Subject: RE: Ejecutar \copy desde VB
Date: Mon, 18 Jun 2007 13:00:28 -0500
Message-ID: <52865C3823D7134E909B33D382298594202A4C@srvmail01.mem.int> (raw)
References: <52865C3823D7134E909B33D3822985942028A3@srvmail01.mem.int>
<20070618173053.GE13688@alvh.no-ip.org>
Lo que pasa es que deseo cargar un archivo de texto a una tabla, lo he realizado de esta forma
copy prueba from 'c:/eduardo/RT12292006110801';
Y funciona muy bien, pero leyendo la documentación entendí que COPY solo funciona con el súper usuario,
Pero como puedo cargar mi archivo con COPY FROM STDIN??
Eduardo
-----Mensaje original-----
De: Alvaro Herrera [mailto:alvherre@commandprompt.com]
Enviado el: Monday, June 18, 2007 12:31 PM
Para: Chapilliquen Gutierrez Eduardo
CC: pgsql-es-ayuda@postgresql.org
Asunto: Re: [pgsql-es-ayuda] Ejecutar \copy desde VB
Chapilliquen Gutierrez Eduardo escribió:
> Alguien podría indicarme como puedo ejecutar el comando pgsql "\copy"
> desde una aplicación VB, tengo una conexión vía ODBC, el servidor es
> 8.2 y esta instalado en un Windows XP-SP2. He logrado ejecutar el
> comando COPY, pero para ello necesito loguearme con el súper usuario
> de la BD, cosa que no será el usuario que se utilizara para la
> aplicación, agradezco sus sugerencias
En realidad puedes usar COPY sin un superusuario, pero tienes que usar COPY FROM STDIN en lugar de tratar de pasarle un archivo.
No puedes usar \copy, puesto que esa órden es sólo de psql (el programa de consola), no es parte de la API de Postgres, ni de SQL, etc. Supongo que una solución sería que tu aplicación en VB ejecute algo como
psql -c "\copy ..."
--
Alvaro Herrera http://www.amazon.com/gp/registry/DXLWNGRJD34J
"Los dioses no protegen a los insensatos. Éstos reciben protección de otros insensatos mejor dotados" (Luis Wu, Mundo Anillo)
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: ECHAPILLIQUEN@minem.gob.pe, alvherre@commandprompt.com, pgsql-es-ayuda@postgresql.org
Subject: RE: Ejecutar \copy desde VB
In-Reply-To: <52865C3823D7134E909B33D382298594202A4C@srvmail01.mem.int>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox