Skip to content

Commit 61a956d

Browse files
committed
Improve tab-completion for ALTER MATERIALIZED VIEW.
Author: Takao Fujii Reviewed-by: Fujii Masao Discussion: https://postgr.es/m/f9dcdef78c124517edc9e5e5880f651e@oss.nttdata.com
1 parent 9290ad1 commit 61a956d

File tree

1 file changed

+16
-3
lines changed

1 file changed

+16
-3
lines changed

src/bin/psql/tab-complete.c

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1801,9 +1801,22 @@ psql_completion(const char *text, int start, int end)
18011801
"SET SCHEMA");
18021802
/* ALTER MATERIALIZED VIEW <name> */
18031803
else if (Matches("ALTER", "MATERIALIZED", "VIEW", MatchAny))
1804-
COMPLETE_WITH("ALTER COLUMN", "OWNER TO", "RENAME TO",
1805-
"SET SCHEMA");
1806-
1804+
COMPLETE_WITH("ALTER COLUMN", "CLUSTER ON", "DEPENDS ON EXTENSION",
1805+
"OWNER TO", "RENAME", "RESET (", "SET");
1806+
/* ALTER MATERIALIZED VIEW xxx RENAME */
1807+
else if (Matches("ALTER", "MATERIALIZED", "VIEW", MatchAny, "RENAME"))
1808+
COMPLETE_WITH_ATTR(prev2_wd, " UNION SELECT 'COLUMN' UNION SELECT 'TO'");
1809+
else if (Matches("ALTER", "MATERIALIZED", "VIEW", MatchAny, "ALTER|RENAME", "COLUMN"))
1810+
COMPLETE_WITH_ATTR(prev3_wd, "");
1811+
/* ALTER MATERIALIZED VIEW xxx RENAME yyy */
1812+
else if (Matches("ALTER", "MATERIALIZED", "VIEW", MatchAny, "RENAME", MatchAnyExcept("TO")))
1813+
COMPLETE_WITH("TO");
1814+
/* ALTER MATERIALIZED VIEW xxx RENAME COLUMN yyy */
1815+
else if (Matches("ALTER", "MATERIALIZED", "VIEW", MatchAny, "RENAME", "COLUMN", MatchAnyExcept("TO")))
1816+
COMPLETE_WITH("TO");
1817+
/* ALTER MATERIALIZED VIEW xxx SET */
1818+
else if (Matches("ALTER", "MATERIALIZED", "VIEW", MatchAny, "SET"))
1819+
COMPLETE_WITH("(", "SCHEMA", "TABLESPACE", "WITHOUT CLUSTER");
18071820
/* ALTER POLICY <name> */
18081821
else if (Matches("ALTER", "POLICY"))
18091822
COMPLETE_WITH_QUERY(Query_for_list_of_policies);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy