11<!--
2- $PostgreSQL: pgsql/doc/src/sgml/ref/copy.sgml,v 1.56 2004/04/19 17:22:30 momjian Exp $
2+ $PostgreSQL: pgsql/doc/src/sgml/ref/copy.sgml,v 1.57 2004/04/21 00:34:18 momjian Exp $
33PostgreSQL documentation
44-->
55
@@ -29,7 +29,7 @@ COPY <replaceable class="parameter">tablename</replaceable> [ ( <replaceable cla
2929 [ NULL [ AS ] '<replaceable class="parameter">null string</replaceable>' ]
3030 [ CSV [ QUOTE [ AS ] '<replaceable class="parameter">quote</replaceable>' ]
3131 [ ESCAPE [ AS ] '<replaceable class="parameter">escape</replaceable>' ]
32- [LITERAL <replaceable class="parameter">column</replaceable> [, ...] ]
32+ [FORCE NOT NULL <replaceable class="parameter">column</replaceable> [, ...] ]
3333
3434COPY <replaceable class="parameter">tablename</replaceable> [ ( <replaceable class="parameter">column</replaceable> [, ...] ) ]
3535 TO { '<replaceable class="parameter">filename</replaceable>' | STDOUT }
@@ -40,7 +40,7 @@ COPY <replaceable class="parameter">tablename</replaceable> [ ( <replaceable cla
4040 [ NULL [ AS ] '<replaceable class="parameter">null string</replaceable>' ]
4141 [ CSV [ QUOTE [ AS ] '<replaceable class="parameter">quote</replaceable>' ]
4242 [ ESCAPE [ AS ] '<replaceable class="parameter">escape</replaceable>' ]
43- [ FORCE <replaceable class="parameter">column</replaceable> [, ...] ]
43+ [ FORCEQUOTE <replaceable class="parameter">column</replaceable> [, ...] ]
4444</synopsis>
4545 </refsynopsisdiv>
4646
@@ -185,10 +185,10 @@ COPY <replaceable class="parameter">tablename</replaceable> [ ( <replaceable cla
185185 <term><literal>CSV</literal></term>
186186 <listitem>
187187 <para>
188- Enables Comma Separated Variable (<literal>CSV</>) mode. (Also called
189- Comma Separated Value). It sets the default <literal>DELIMITER</> to
190- comma, and <literal>QUOTE </> and <literal>ESCAPE </>values to
191- double-quote.
188+ Enables Comma Separated Variable (<literal>CSV</>) mode. (Also
189+ called Comma Separated Value). It sets the default
190+ <literal>DELIMITER </>to comma, and <literal>QUOTE </>and
191+ <literal>ESCAPE</> values to double-quote.
192192 </para>
193193 </listitem>
194194 </varlistentry>
@@ -207,38 +207,33 @@ COPY <replaceable class="parameter">tablename</replaceable> [ ( <replaceable cla
207207 <term><replaceable class="parameter">escape</replaceable></term>
208208 <listitem>
209209 <para>
210- Specifies the character that should appear before a <literal>QUOTE</>
211- data character value in <literal>CSV</> mode. The default is the
212- <literal>QUOTE</> value (usually double-quote).
210+ Specifies the character that should appear before a
211+ <literal>QUOTE</> data character value in <literal>CSV</> mode.
212+ The default is the <literal>QUOTE</> value (usually double-quote).
213213 </para>
214214 </listitem>
215215 </varlistentry>
216216
217217 <varlistentry>
218- <term><literal>FORCE</></term>
218+ <term><literal>FORCE QUOTE </></term>
219219 <listitem>
220220 <para>
221- In <literal>CSV</> <command>COPY TO</> mode, forces quoting
222- to be used for all non-<literal>NULL</> values in each specified
223- column. <literal>NULL</> output is never quoted.
221+ In <literal>CSV</> <command>COPY TO</> mode, forces quoting to be
222+ used for all non-<literal>NULL</> values in each specifiedcolumn.
223+ <literal>NULL</> output is never quoted.
224224 </para>
225225 </listitem>
226226 </varlistentry>
227227
228228 <varlistentry>
229- <term><literal>LITERAL </></term>
229+ <term><literal>FORCE NOT NULL </></term>
230230 <listitem>
231231 <para>
232- In <literal>CSV</> <command>COPY FROM</> mode, for each column specified,
233- do not do a <literal>null string</> comparison; instead load the value
234- literally. <literal>QUOTE</> and <literal>ESCAPE</> processing are still
235- performed.
236- </para>
237- <para>
238- If the <literal>null string</> is <literal>''</> (the default
239- in <literal>CSV</> mode), a missing input value (<literal>delimiter,
240- delimiter</>), will load as a zero-length string. <literal>Delimiter, quote,
241- quote, delimiter</> is always treated as a zero-length string on input.
232+ In <literal>CSV</> <command>COPY FROM</> mode, process each
233+ specified column as though it were quoted and hance not a
234+ <literal>NULL</> value. For the default <literal>null string</> in
235+ <literal>CSV</> mode (<literal>''</>), this causes a missing
236+ values to be input as a zero-length strings.
242237 </para>
243238 </listitem>
244239 </varlistentry>
@@ -483,7 +478,7 @@ COPY <replaceable class="parameter">tablename</replaceable> [ ( <replaceable cla
483478 suffixed by the <literal>QUOTE</> character, and any occurrence
484479 within the value of a <literal>QUOTE</> character or the
485480 <literal>ESCAPE</> character is preceded by the escape character.
486- You can also use <literal>FORCE</> to force quotes when outputting
481+ You can also use <literal>FORCE QUOTE </> to force quotes when outputting
487482 non-<literal>NULL</> values in specific columns.
488483 </para>
489484
@@ -496,7 +491,7 @@ COPY <replaceable class="parameter">tablename</replaceable> [ ( <replaceable cla
496491 is quoted. Therefore, using the default settings, a <literal>NULL</> is
497492 written as an unquoted empty string, while an empty string is
498493 written with double quotes (<literal>""</>). Reading values follows
499- similar rules. You can use <literal>LITERAL </> to prevent <literal>NULL</>
494+ similar rules. You can use <literal>FORCE NOT NULL </> to prevent <literal>NULL</>
500495 input comparisons for specific columns.
501496 </para>
502497