简略查问两个非凡的copy的返回值
https://www.postgresql.org/do...

CopyInResponseThe backend is ready to copy data from the frontend to a table; see Section 52.2.5.CopyOutResponseThe backend is ready to copy data from a table to the frontend; see Section 52.2.5.

copy 相干音讯

CommandComplete (B)Byte1('C')Identifies the message as a command-completed response.其中:StringFor a COPY command, the tag is COPY rows where rows is the number of rows copied. (Note: the row count appears only in PostgreSQL 8.2 and later.)CopyData (F & B)Byte1('d')Identifies the message as COPY data.CopyDone (F & B)Byte1('c')Identifies the message as a COPY-complete indicator.CopyFail (F)Byte1('f')Identifies the message as a COPY-failure indicator.CopyInResponse (B)Byte1('G')Identifies the message as a Start Copy In response. The frontend must now send copy-in data (if not prepared to do so, send a CopyFail message).CopyOutResponse (B)Byte1('H')Identifies the message as a Start Copy Out response. This message will be followed by copy-out data.CopyBothResponse (B)Byte1('W')Identifies the message as a Start Copy Both response. This message is used only for Streaming Replication.

copy to file

postgres=# copy (select * from t1 ) to '/tmp/t1.csv';COPY 5

copy from stdin

postgres=# copy t1 from stdin  (DELIMITER '|');Enter data to be copied followed by a newline.End with a backslash and a period on a line by itself, or an EOF signal.>> 23|gg>> 24|qq>> 25|tt>> COPY 3

copy to stdout

postgres=# copy t1 to STDOUT (DELIMITER '|');;23|gg24|qq25|tt