Copy

Copies data between files and tables.

Synopsis

COPY [ BINARY ] table [ WITH OIDS ]
     FROM { 'filename' | stdin }
     [ [ USING ] DELIMITERS 'delimiter' ]
     [ WITH NULL AS 'null_string' ]
COPY [ BINARY ] table [ WITH OIDS ]
     TO { 'filename' | stdout }
     [ [ USING ] DELIMITERS 'delimiter' ]
     [ WITH NULL AS 'null_string' ]

Parameters

BINARY

The BINARY mode keyword. This specifies that you wish for COPY to store and read data in PostgreSQL’s own binary format (rather than text). When using binary format, the WITH NULL and DELIMITERS keywords are not applicable.

table

The name of an existing table to either copy data from, or to.

FROM

The FROM keyword, which indicates that the COPY operation will copy data from either a file or stdin into table.

TO

The TO keyword, which indicates that the COPY operation will copy data to either a file or stdout, from the data in table.

WITH OIDS

The optional oid specifier. This indicates that the copy operation is to either select or insert the unique object ID (oid) of each row, depending on whether or not it is a COPY FROM or COPY TO.

filename

The absolute path to the file chosen for input or output (i.e., /usr/local/pgsql/data/employeetable). You must specify an absolute path.

stdin

The standard input option. When used in place of a filename, this indicates that data will be accepted from the client application, rather than a file. If you are using psql to enter data, you will be prompted to type in text if you initiate a COPY FROM on stdin.

stdout

The standard output option. ...

Get Practical PostgreSQL now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.