Gracias,

No lo he probado pero claro que si que debe de funcionar, pero lo que yo quiero es capturarlo en una variable de tipo bitea , alguna funcion o algo que me devuelva el resultado de una consulta en formato csv como si fuese una variable TEXT

Gracias de nuevo

El 18/02/2021 a las 10:12, Anthony Sotolongo escribió:
Hola nuevamente, lo que te comentamos debe funcionar, ¿Intentaste ejecutar lo que te comentamos? Desde tu máquina apuntando a tu servicio en la nube.




El jue., 18 de febrero de 2021 4:01 a. m., kernel <jucab...@gmail.com <mailto:jucab...@gmail.com>> escribió:


    El 18/02/2021 a las 1:01, Horacio Miranda escribió:


    On 18/02/2021 8:55 am, Anthony Sotolongo wrote:

    Hola Kernel, como comentas puedes usar STDOUT, el cual te
    enviará los datos a tu client, por ejemplo con psql:


    psql -U postgres -h tu_server_en_la_nube -c "COPY (select * from
    tu_tabla) to STDOUT WITH CSV HEADER DELIMITER ',';" > tu_archivo.csv


    Los servidores pueden mandar email tambien.

    Puedes hacer esta logica si quieres en el server en la nube que
    es mas rapido ejecutar cosas locales.

    #!/bin/bash

    PGUSER=<USER>
    PGPASSWORD=<PASS>
    PGPORT=<PUERTO>
    PGDATABASE=<BASE>
    PGHOST=<HOST>

    psql -c "COPY (select * from tu_tabla) to STDOUT WITH CSV HEADER
    DELIMITER ',';" > /tmp/tu_archivo.csv

    cd /tmp  # Esto solo es para evitar que en el ZIP esten los path
    como /tmp
    zip tu_archivo.csv.zip tu_archivo.csv
    uuencode tu_archivo.csv tu_archivo.csv | mail -s
    "export_desde_lanube_$(hostname)" algun_m...@domain.com
    <mailto:algun_m...@domain.com>

    uuencode lo encuentras como parte del sharutils si usas algo como
    rpm puedes hacer "yum provides */uuencode"

    Ahora puedes hacer un sftp, o cualquier cosa que quieras para
    traerte el archivo.

    Si lo quieres local puedes hacer un rsync tambien, posibilidades
    hay muchas.
    Ahora si este archivo es algo que se genera para un cliente, que
    se envie un email de forma automatica creo que puede ser bien
    interesante.


    Saludos


    On 2/17/21 4:14 PM, kernel wrote:

    Hola,

    Necesito generar un fichero csv desde una aplicación, hasta la
    fecha llamaba a una función , la cual me ejecutaba una
    sentencia copy de un query determinado y lo sacaba a un fichero
    local.

    Si contrato algún servicio de DB en la nube no voy a poder
    dejar el fichero en local. He visto que la función copy tiene
    algo de stdout , pero no se como conectarlo son mi aplicación.

    El lenguaje que utilizo es 4GL , solo  puedo hacer querys cuyo
    resultado lo recojo en variables

    me pregunto si existe alguna función en la que pueda generar un
    csv desde una consulta y me lo devuelva en un tipo de variable
    byte o algo asi,  que luego yo pueda guardar donde yo quiera|.||||
    |

    no se si he sido capaz de explicarme.

    Gracias

    Un Saludo

    hola no se si me he explicado bien, lo que tengo en la nube no es
    un servidor, es un servicio postgresql , nada mas , por eso el
    problema

    Gracias



Reply via email to