Re: psql -f COPY from STDIN
От | Tom Lane |
---|---|
Тема | Re: psql -f COPY from STDIN |
Дата | |
Msg-id | 8452.1289618531@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | psql -f COPY from STDIN (Tarlika Elisabeth Schmitz <postgresql2@numerixtechnology.de>) |
Ответы |
Re: psql -f COPY from STDIN
|
Список | pgsql-sql |
Tarlika Elisabeth Schmitz <postgresql2@numerixtechnology.de> writes: > The following command works fine when pasing it to psql via the -c > option: > cat event.csv | \ > psql -c "COPY (event_id, event_name) FROM STDIN DELIMITER AS ',' NULL > AS ''" > When executed from a file via -f, it does nothing (no error messages > either): > event.sql: > COPY (event_id, event_name) FROM STDIN DELIMITER AS ',' NULL AS '' > cat event.csv | psql -f event.sql I believe that psql's interpretation of "stdin" when reading from a file is that the COPY data is to come from that same file (look at the script produced by pg_dump for an example). So it reads to the end of the file, which is right away --- otherwise you'd get some incorrect-data errors. The data sourced from the cat command is never noticed at all. I think you can get the effect you're after using \copy ... from pstdin. See the psql man page. regards, tom lane
В списке pgsql-sql по дате отправления: