Re: Added tab completion for the missing options in copy statement - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Added tab completion for the missing options in copy statement
Date
Msg-id 20200717054510.GG29811@paquier.xyz
Whole thread Raw
In response to Re: Added tab completion for the missing options in copy statement  (vignesh C <vignesh21@gmail.com>)
Responses Re: Added tab completion for the missing options in copy statement
List pgsql-hackers
On Fri, Jul 10, 2020 at 09:58:28AM +0530, vignesh C wrote:
> Thanks for reviewing the patch.
> This changes is already present in the document, no need to make any
> changes as shown below:
>
> COPY table_name [ ( column_name [, ...] ) ]
>     FROM { 'filename' | PROGRAM 'command' | STDIN }
>     [ [ WITH ] ( option [, ...] ) ]
>     [ WHERE condition ]

Not completely actually.  The page of psql for \copy does not mention
the optional where clause, and I think that it would be better to add
that for consistency (perhaps that's the point raised by Ahsan?).  I
don't see much point in splitting the description of the meta-command
into two lines as we already mix stdin and stdout for example which
only apply to respectively "FROM" and "TO", so let's just append the
conditional where clause at its end.  Attached is a patch doing so
that I intend to back-patch down to v12.

Coming back to your proposal, another thing is that with your patch
you recommend a syntax still present for compatibility reasons, but I
don't think that we should recommend it to the users anymore, giving
priority to the new grammar of the post-9.0 era.  I would actually go
as far as removing BINARY from the completion when specified just
after COPY to simplify the code, and specify the list of available
options after typing "COPY ... WITH (FORMAT ", with "text", "csv" and
"binary".  Adding completion for WHERE after COPY FROM is of course a
good idea.
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Julien Rouhaud
Date:
Subject: Re: expose parallel leader in CSV and log_line_prefix
Next
From: Amit Kapila
Date:
Subject: Re: INSERT INTO SELECT, Why Parallelism is not selected?