RE: Remove "FROM" in "DELETE FROM" when using tab-completion

tanghy.fnst@fujitsu.com <tanghy.fnst@fujitsu.com>

From: "tanghy.fnst@fujitsu.com" <tanghy.fnst@fujitsu.com>
To: Julien Rouhaud <rjuju123@gmail.com>, Dilip Kumar <dilipbalaut@gmail.com>, Julien Rouhaud <rjuju123@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2021-05-10T06:36:19Z
Lists: pgsql-hackers
On Monday, May 10, 2021 2:48 PM, Julien Rouhaud <rjuju123@gmail.com>  worte
>I think the behavior now is correct.  The goal of autocompletion is to save
>keystrokes and time.  As the only valid keyword after a DELETE (at least in a
>DeleteStmt) is FROM, it's a good thing that you get back "DELETE FROM" directly
>rather than asking that to autocomplete in multiple steps.
>
>Now, the \help command is for commands, which is a different thing as the
>command in that case is DELETE not DELETE FROM, even if you will have to follow
>your DELETE with a FROM.

Thanks for your reply. I totally agree with you on the convenience of "DELETE FROM" autocompletion.
But I also noticed some autocompletion for "DELETE" in some cases is just "DELETE" already. 

=# EXPLAIN[TAB]
ANALYZE  DECLARE  DELETE   INSERT   SELECT   UPDATE   VERBOSE

=# COPY ([TAB]
DELETE  INSERT  SELECT  TABLE   UPDATE  VALUES  WITH

Maybe we should keep the behavior consistent? 
I mean we can change all "DELETE" to "DELETE FROM"  or just remove "FROM" for consistency.

On Monday, May 10, 2021 2:51 PM, Dilip Kumar <dilipbalaut@gmail.com> wrote
>I agree with Julien.  But, I also agree with the consistency point
>from Tang.  So maybe we can fix the insert and add INSERT INTO in the
>tab completion?

Yeah. Change "INSERT" to "INSERT INTO" can be a good solution, too.
But just like I mentioned above, some cases in tab-completion make "DELETE" to "DELETE FROM", some cases make "DELETE" to "DELETE".
I'm not sure which cases could change "INSERT" to "INSERT INTO".
Please share with me your thought on it.

Regards,
Tang 
 







Commits

  1. Make saner the tab completion of INSERT and DELETE in psql

  2. psql tab completion improvements, from Greg Sabino Mullane: