Skip to content

Commit 202cbdf

Browse files
committed
Add tab-completion for ALTER TABLE ALTER CONSTRAINT in psql.
Back-patch to 9.4 where ALTER TABLE ALTER CONSTRAINT was added. Michael Paquier, bug reported by Andrey Lizenko.
1 parent afeacd2 commit 202cbdf

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/bin/psql/tab-complete.c

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1605,7 +1605,7 @@ psql_completion(const char *text, int start, int end)
16051605
else if (pg_strcasecmp(prev4_wd, "ALTER") == 0 &&
16061606
pg_strcasecmp(prev3_wd, "TABLE") == 0 &&
16071607
pg_strcasecmp(prev_wd, "ALTER") == 0)
1608-
COMPLETE_WITH_ATTR(prev2_wd, " UNION SELECT 'COLUMN'");
1608+
COMPLETE_WITH_ATTR(prev2_wd, " UNION SELECT 'COLUMN' UNION SELECT 'CONSTRAINT'");
16091609

16101610
/* ALTER TABLE xxx RENAME */
16111611
else if (pg_strcasecmp(prev4_wd, "ALTER") == 0 &&
@@ -1655,12 +1655,13 @@ psql_completion(const char *text, int start, int end)
16551655
COMPLETE_WITH_ATTR(prev3_wd, "");
16561656

16571657
/*
1658-
* If we have ALTER TABLE <sth> DROP|RENAME|VALIDATE CONSTRAINT, provide
1659-
* list of constraints
1658+
* If we have ALTER TABLE <sth> ALTER|DROP|RENAME|VALIDATE CONSTRAINT,
1659+
* provide list of constraints
16601660
*/
16611661
else if (pg_strcasecmp(prev5_wd, "ALTER") == 0 &&
16621662
pg_strcasecmp(prev4_wd, "TABLE") == 0 &&
1663-
(pg_strcasecmp(prev2_wd, "DROP") == 0 ||
1663+
(pg_strcasecmp(prev2_wd, "ALTER") == 0 ||
1664+
pg_strcasecmp(prev2_wd, "DROP") == 0 ||
16641665
pg_strcasecmp(prev2_wd, "RENAME") == 0 ||
16651666
pg_strcasecmp(prev2_wd, "VALIDATE") == 0) &&
16661667
pg_strcasecmp(prev_wd, "CONSTRAINT") == 0)

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