From: | marcosrios(at)planet(dot)com(dot)pe |
---|---|
To: | Anthony <asotolongo(at)uci(dot)cu> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: COPY TO a filename dinamico |
Date: | 2013-05-03 13:55:28 |
Message-ID: | 20130503085528.15572d5aw734kwis@webmail.planet.com.pe |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Estimado Anthony,
Gracias por tu sugerencia, he logrado generar filename dinamicos y
agregarlos al COPY TO.
Adicionalmente para no tener problema con la ' (comilla simple) en la
cadena del SELECT... deberán colocar '' (comilla simple 2 veces) por
cada comilla simple, ejemplo:
v_cadena:='COPY (SELECT
to_char(a.ano,''FM9999'')||to_char(a.mes,''FM09'')||''00'' AS
cperiodo,...'
El archivo v_filename='LE2033106165520130100140100001111.TXT' le
agregue el delimitador y quedo asi: v_filename :=
btrim(v_filename)||''' (delimiter '||'''|'''||')';
Finalmente el EXECUTE v_cadena;
Saludos,
---
Ing. Marcos T. Ríos Rodríguez
marcosrios(at)planet(dot)com(dot)pe
Arequipa - Perú
Anthony <asotolongo(at)uci(dot)cu> escribió:
> conforma tu cadena de COPY ..... con las parametros necesarios y
> tratalo como un text luego debes ejecutar esa sentencia con
> EXECUTE 'tu comando con copy';
>
> ejemplo:
> comando:-= 'COPY (select * from tutabla) TO '||camino ||'''WITH CSV';
> execute comando;
>
>
> saludos
>
> El 02/05/2013 6:30, marcosrios(at)planet(dot)com(dot)pe escribió:
>> Estimada Lista,
>>
>> Por favor, necesito ejecutar COPY (SELECT ...) TO filename
>> (DELIMITER '|'); pero que me permita construir el filename
>> dinamicamente.
>>
>> Lo debo hacer tanto para windows como para linux.
>>
>> He probado con:
>> DECLARE
>> v_filename CHARACTER VARYING(60);
>> BEGIN
>> v_filename := 'E:\\LES\\LE'||btrim(v_ruc)||to_char(EXTRACT(YEAR
>> FROM v_fecha),'FM9999')||to_char(EXTRACT(MONTH FROM v_fecha),'FM09')
>>
>> COPY (Select ...) TO E'''||v_filename||''' (delimiter '|');
>>
>> y me arroja ERROR: no se permiten rutas relativas para COPY hacia
>> un archivo
>> CONTEXT: sentencia SQL: «copy
>>
>> Desde ya les agradezco cualquier sugerencia que me ayude a resolver
>> este problema.
>>
>>
>> Saludos,
>> ---
>> Ing. Marcos T. Ríos Rodríguez
>> marcosrios(at)planet(dot)com(dot)pe
>> Arequipa - Perú
>>
>>
>> -
>> Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
>> Para cambiar tu suscripción:
>> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>> http://www.uci.cu
>
>
> http://www.uci.cu
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda
From | Date | Subject | |
---|---|---|---|
Next Message | Martín Marqués | 2013-05-03 14:40:28 | Re: Posible Bug |
Previous Message | Leonardo Castillo | 2013-05-03 13:52:41 | Problema con consulta compleja |