diff options
author | Bruce Momjian | 2020-12-16 00:20:15 +0000 |
---|---|---|
committer | Bruce Momjian | 2020-12-16 00:20:25 +0000 |
commit | 02c767b0fe241416d7b7ee3c107dcaf379d95381 (patch) | |
tree | 2e11ea600625db6942a21b643a81c5b59603a64b | |
parent | 41ddc27f66fd398abe96e98f3e892a36270db9aa (diff) |
doc: clarify COPY TO for partitioning/inheritance
It was not clear how COPY TO behaved with partitioning/inheritance
because the paragraphs were so far apart. Also reword to simplify.
Discussion: https://postgr.es/m/20201203211723.GR24052@telsasoft.com
Author: Justin Pryzby
Backpatch-through: 10
-rw-r--r-- | doc/src/sgml/ref/copy.sgml | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/doc/src/sgml/ref/copy.sgml b/doc/src/sgml/ref/copy.sgml index 369342b74d5..0fca6583af6 100644 --- a/doc/src/sgml/ref/copy.sgml +++ b/doc/src/sgml/ref/copy.sgml @@ -413,10 +413,16 @@ COPY <replaceable class="parameter">count</replaceable> <title>Notes</title> <para> - <command>COPY TO</command> can only be used with plain tables, not - with views. However, you can write <literal>COPY (SELECT * FROM - <replaceable class="parameter">viewname</replaceable>) TO ...</literal> - to copy the current contents of a view. + <command>COPY TO</command> can be used only with plain + tables, not views, and does not copy rows from child tables + or child partitions. For example, <literal>COPY <replaceable + class="parameter">table</replaceable> TO</literal> copies + the same rows as <literal>SELECT * FROM ONLY <replaceable + class="parameter">table</replaceable></literal>. + The syntax <literal>COPY (SELECT * FROM <replaceable + class="parameter">table</replaceable>) TO ...</literal> can be used to + dump all of the rows in an inheritance hierarchy, partitioned table, + or view. </para> <para> @@ -426,16 +432,6 @@ COPY <replaceable class="parameter">count</replaceable> </para> <para> - <command>COPY</command> only deals with the specific table named; - it does not copy data to or from child tables. Thus for example - <literal>COPY <replaceable class="parameter">table</replaceable> TO</literal> - shows the same data as <literal>SELECT * FROM ONLY <replaceable - class="parameter">table</replaceable></literal>. But <literal>COPY - (SELECT * FROM <replaceable class="parameter">table</replaceable>) TO ...</literal> - can be used to dump all of the data in an inheritance hierarchy. - </para> - - <para> You must have select privilege on the table whose values are read by <command>COPY TO</command>, and insert privilege on the table into which values |