Commit 726725d4 authored by Tom Lane's avatar Tom Lane

A bit more wordsmithing on the COPY CSV NULL business.

parent 1bd26353
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/copy.sgml,v 1.89 2009/09/17 21:49:15 momjian Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/copy.sgml,v 1.90 2009/09/18 20:01:13 tgl Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -183,8 +183,8 @@ COPY { <replaceable class="parameter">tablename</replaceable> [ ( <replaceable c ...@@ -183,8 +183,8 @@ COPY { <replaceable class="parameter">tablename</replaceable> [ ( <replaceable c
<listitem> <listitem>
<para> <para>
The string that represents a null value. The default is The string that represents a null value. The default is
<literal>\N</literal> (backslash-N) in text mode, and a empty <literal>\N</literal> (backslash-N) in text mode, and an unquoted empty
value with no quotes in <literal>CSV</> mode. You might prefer an string in <literal>CSV</> mode. You might prefer an
empty string even in text mode for cases where you don't want to empty string even in text mode for cases where you don't want to
distinguish nulls from empty strings. distinguish nulls from empty strings.
</para> </para>
...@@ -249,8 +249,7 @@ COPY { <replaceable class="parameter">tablename</replaceable> [ ( <replaceable c ...@@ -249,8 +249,7 @@ COPY { <replaceable class="parameter">tablename</replaceable> [ ( <replaceable c
In <literal>CSV</> <command>COPY TO</> mode, forces quoting to be In <literal>CSV</> <command>COPY TO</> mode, forces quoting to be
used for all non-<literal>NULL</> values in each specified column. used for all non-<literal>NULL</> values in each specified column.
<literal>NULL</> output is never quoted. If <literal>*</> is specified, <literal>NULL</> output is never quoted. If <literal>*</> is specified,
non-<literal>NULL</> values for all columns of the table will be non-<literal>NULL</> values will be quoted in all columns.
quoted.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
...@@ -550,11 +549,11 @@ COPY <replaceable class="parameter">count</replaceable> ...@@ -550,11 +549,11 @@ COPY <replaceable class="parameter">count</replaceable>
<para> <para>
The <literal>CSV</> format has no standard way to distinguish a The <literal>CSV</> format has no standard way to distinguish a
<literal>NULL</> value from an empty string. <literal>NULL</> value from an empty string.
<productname>PostgreSQL</>'s <command>COPY</> handles this by <productname>PostgreSQL</>'s <command>COPY</> handles this by quoting.
quoting. A <literal>NULL</> is output as the <literal>NULL</> A <literal>NULL</> is output as the <literal>NULL</> parameter string
parameter and is not quoted, while a non-NULL value matching the and is not quoted, while a non-<literal>NULL</> value matching the
the <literal>NULL</> parameter string is quoted. Therefore, using the default <literal>NULL</> parameter string is quoted. For example, with the
settings, a <literal>NULL</> is written as an unquoted empty default settings, a <literal>NULL</> is written as an unquoted empty
string, while an empty string data value is written with double quotes string, while an empty string data value is written with double quotes
(<literal>""</>). Reading values follows similar rules. You can (<literal>""</>). Reading values follows similar rules. You can
use <literal>FORCE NOT NULL</> to prevent <literal>NULL</> input use <literal>FORCE NOT NULL</> to prevent <literal>NULL</> input
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment