From: | Anthony Sotolongo <asotolongo(at)gmail(dot)com> |
---|---|
To: | kernel <jucabapa(at)gmail(dot)com>, Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: cargar fichero en remoto |
Date: | 2019-10-15 15:40:33 |
Message-ID: | 9450040a-5163-ee56-df69-78d73f30b0a4@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola Kernel, puedes seguir usando el CSV pero le puedes hacer pipe (|)
hacia el server donde vas a cargarlo, por ejemplo:
cat tu_datos_csv.csv | psql -d tu_base -h tu_server_remoto -U tu_user -c
"copy tu_table from stdin with delimiter ';' csv" --en este caso si el
delimitador es (;) pero lo puedes cambiar al tuyo
Saludos
El 14-10-19 a las 12:50, kernel escribió:
>
> El 14/10/2019 a las 16:40, Francisco Olarte escribió:
>> Kernel:
>>
>> On Mon, Oct 14, 2019 at 3:10 PM kernel <jucabapa(at)gmail(dot)com> wrote:
>>> Hasta la fecha siempre he tenido la base de datos en la misma ubicación
>>> que la aplicación, estaba acostumbrado a cargar ficheros con la
>>> sentencia COPY,
>>> Hoy he contratado un alojamiento de DB en OVH y me doy cuenta de que
>>> eso
>>> ya no lo puedo hacer.
>>> Antes exportaba el excel como CSV y ejecutaba un COPY y a correr....
>>> ¿Alguien me puede dar una pista de como puedo generar desde un excel un
>>> fichero sql (entiendo que un copy con STDIN o algo asi) para la carga?
>> Si no tienes problemas con el ingles, busca en el manual en la
>> referencia del psql el comando \copy (
>> https://www.postgresql.org/docs/12/app-psql.html ).
>>
>> Si los tienes, o estas mu vago, te cuento: COPY ( comando sql ) se
>> puede ejecutar como "FROM STDIN", en cuyo caso EL SERVIDOR no lee un
>> archivo, sino que espera los datos por el "socket" en un protocolo (
>> que esta en el manual ). PSQL ( el programa cliente ) tiene un comando
>> "\COPY" ( es un BACKSLASH-COMMAND ), que lo que hace, cuando le pones
>> un "FROM ARCHIVO" es 1.- Lanzar un comando COPY FROM STDIN en el
>> SERVIDOR, 2.- Leer el archivo y mandarselo por el protocolo. Es lo que
>> en algunos sitios llaman "Client side copy"
>>
>> TLDR: Usa \copy para archivos en el cliente, copy a secas para el
>> servidor. Leete el help y/o el manual de \copy
>>
>> Francisco Olarte.
>
> ok, gracias
>
> El manual de \copy no lo he encontrado, entiendo que es lo que viene
> la ayuda del psql
>
> Un Saludo
>
>
>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | kernel | 2019-10-15 16:14:18 | Re: cargar fichero en remoto |
Previous Message | Carlos T. Groero Carmona | 2019-10-14 18:31:12 | Re: Puede pg_basebackup afectar performace? |