v5-0004-Suggest-table-access-method-for-create-maateriali.patch
application/octet-stream
Filename: v5-0004-Suggest-table-access-method-for-create-maateriali.patch
Type: application/octet-stream
Part: 1
Patch
Format: format-patch
Series: patch v5-0004
Subject: Suggest table access method for create maaterialized view in tab-complete
| File | + | − |
|---|---|---|
| src/bin/psql/tab-complete.in.c | 10 | 3 |
From a57a1883694edc08704715f286b6a3b5b6442778 Mon Sep 17 00:00:00 2001
From: reshke kirill <reshke@double.cloud>
Date: Mon, 4 Nov 2024 16:22:59 +0000
Subject: [PATCH v5 4/4] Suggest table access method for create maaterialized
view in tab-complete
---
src/bin/psql/tab-complete.in.c | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/src/bin/psql/tab-complete.in.c b/src/bin/psql/tab-complete.in.c
index e06afddcfe..1576a3e4ca 100644
--- a/src/bin/psql/tab-complete.in.c
+++ b/src/bin/psql/tab-complete.in.c
@@ -3981,11 +3981,18 @@ match_previous_words(int pattern_id,
/* CREATE MATERIALIZED VIEW */
else if (Matches("CREATE", "MATERIALIZED"))
COMPLETE_WITH("VIEW");
- /* Complete CREATE MATERIALIZED VIEW <name> with AS */
+ /* Complete CREATE MATERIALIZED VIEW <name> with AS or USING */
else if (Matches("CREATE", "MATERIALIZED", "VIEW", MatchAny))
+ COMPLETE_WITH("AS", "USING");
+ /* Complete CREATE MATERIALIZED VIEW <name> USING with list of access methods */
+ else if (Matches("CREATE", "MATERIALIZED", "VIEW", MatchAny, "USING"))
+ COMPLETE_WITH_QUERY(Query_for_list_of_table_access_methods);
+ /* Complete CREATE MATERIALIZED VIEW <name> USING <access method> with AS */
+ else if (Matches("CREATE", "MATERIALIZED", "VIEW", MatchAny, "USING", MatchAny))
COMPLETE_WITH("AS");
- /* Complete "CREATE MATERIALIZED VIEW <sth> AS with "SELECT" */
- else if (Matches("CREATE", "MATERIALIZED", "VIEW", MatchAny, "AS"))
+ /* Complete CREATE MATERIALIZED VIEW <name> [USING <am_name>] AS with "SELECT" */
+ else if (Matches("CREATE", "MATERIALIZED", "VIEW", MatchAny, "AS") ||
+ Matches("CREATE", "MATERIALIZED", "VIEW", MatchAny, "USING", MatchAny, "AS"))
COMPLETE_WITH("SELECT");
/* CREATE EVENT TRIGGER */
--
2.34.1