Re: [GENERAL] Load multiple CSV file in Postgres using COPY

Поиск
Список
Период
Сортировка
От Adrian Klaver
Тема Re: [GENERAL] Load multiple CSV file in Postgres using COPY
Дата
Msg-id 16346c8a-0245-56fe-d12f-d662f20201f3@aklaver.com
обсуждение исходный текст
Ответ на Re: [GENERAL] Load multiple CSV file in Postgres using COPY  (Murtuza Zabuawala <murtuza.zabuawala@enterprisedb.com>)
Список pgsql-general
On 02/17/2017 05:55 AM, Murtuza Zabuawala wrote:
> Thank you All for your suggestions, But I was looking for solution
> around COPY command only.

Sort of a cheat:

https://www.postgresql.org/docs/9.6/static/sql-copy.html

PROGRAM

     A command to execute. In COPY FROM, the input is read from standard
output of the command, and in COPY TO, the output is written to the
standard input of the command.

     Note that the command is invoked by the shell, so if you need to
pass any arguments to shell command that come from an untrusted source,
you must be careful to strip or escape any special characters that might
have a special meaning for the shell. For security reasons, it is best
to use a fixed command string, or at least avoid passing any user input
in it.


>
> --
> Regards,
> Murtuza Zabuawala
> EnterpriseDB: http://www.enterprisedb.com <http://www.enterprisedb.com/>
> The Enterprise PostgreSQL Company
>
> On Fri, Feb 17, 2017 at 3:06 PM, Alexander Shchapov
> <alexanderad@gmail.com <mailto:alexanderad@gmail.com>> wrote:
>
>     You might want to look into pgloader: http://pgloader.io/
>
>     On Fri, Feb 17, 2017 at 7:26 AM, Murtuza Zabuawala
>     <murtuza.zabuawala@enterprisedb.com
>     <mailto:murtuza.zabuawala@enterprisedb.com>> wrote:
>     > Hi,
>     >
>     > Is there any way to load multiple CSV files at once using single COPY
>     > command?
>     >
>     > I have scenario where I have to load multiple files,
>     >
>     > COPY prdxgdat FROM 'Z:/data-2016-04-01.csv' WITH DELIMITER ',' CSV
>     HEADER Y
>     > COPY prdxgdat FROM 'Z:/data-2016-04-02.csv' WITH DELIMITER ',' CSV
>     HEADER Y
>     > COPY prdxgdat FROM 'Z:/data-2016-04-03.csv' WITH DELIMITER ',' CSV
>     HEADER Y
>     > COPY prdxgdat FROM 'Z:/data-2016-04-04.csv' WITH DELIMITER ',' CSV
>     HEADER Y
>     > COPY prdxgdat FROM 'Z:/data-2016-04-05.csv' WITH DELIMITER ',' CSV
>     HEADER Y
>     > COPY prdxgdat FROM 'Z:/data-2016-04-06.csv' WITH DELIMITER ',' CSV
>     HEADER Y
>     > ..
>     > ..
>     > ..
>     > ..
>     > COPY prdxgdat FROM 'Z:/data-2016-04-50.csv' WITH DELIMITER ',' CSV
>     HEADER Y
>     >
>     > 50 files -> 50 COPY command, In my use case I think this is not a
>     good way
>     > to load data, Can you suggest any better way to do this?
>     >
>     > I can always write external script (eg: shell script) but is there
>     any other
>     > way to do this using single COPY command?
>     >
>     > --
>     > Regards,
>     > Murtuza Zabuawala
>     > EnterpriseDB: http://www.enterprisedb.com
>     > The Enterprise PostgreSQL Company
>
>
>
>     --
>     Alexander Shchapov
>
>


--
Adrian Klaver
adrian.klaver@aklaver.com


В списке pgsql-general по дате отправления:

Предыдущее
От: Murtuza Zabuawala
Дата:
Сообщение: Re: [GENERAL] Load multiple CSV file in Postgres using COPY
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: [GENERAL] Access privileges /yyyy -- role that granted thisprivilege.