From 792c5c094c04516ded89d4824f02d19e175227e9 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Wed, 4 Jun 2025 22:56:01 +0900 Subject: [PATCH v1] psql: Add tab-completion for ALTER TABLE ADD NOT NULL. psql already supports tab-completion for ALTER TABLE ADD with constraints like CHECK and UNIQUE. However, after commit 14e87ffa5c5 introduced support for adding NOT NULL constraints using ALTER TABLE ADD, tab-completion for that case was missing. This commit adds tab-completion support for ALTER TABLE ADD NOT NULL. --- src/bin/psql/tab-complete.in.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/bin/psql/tab-complete.in.c b/src/bin/psql/tab-complete.in.c index ec65ab79fec..be4efbbf9ca 100644 --- a/src/bin/psql/tab-complete.in.c +++ b/src/bin/psql/tab-complete.in.c @@ -2726,16 +2726,17 @@ match_previous_words(int pattern_id, else if (Matches("ALTER", "TABLE", MatchAny, "ADD")) { /* make sure to keep this list and the !Matches() below in sync */ - COMPLETE_WITH("COLUMN", "CONSTRAINT", "CHECK", "UNIQUE", "PRIMARY KEY", - "EXCLUDE", "FOREIGN KEY"); + COMPLETE_WITH("COLUMN", "CONSTRAINT", "CHECK", "NOT NULL", "UNIQUE", + "PRIMARY KEY", "EXCLUDE", "FOREIGN KEY"); } /* ALTER TABLE xxx ADD [COLUMN] yyy */ else if (Matches("ALTER", "TABLE", MatchAny, "ADD", "COLUMN", MatchAny) || - Matches("ALTER", "TABLE", MatchAny, "ADD", MatchAnyExcept("COLUMN|CONSTRAINT|CHECK|UNIQUE|PRIMARY|EXCLUDE|FOREIGN"))) + Matches("ALTER", "TABLE", MatchAny, "ADD", MatchAnyExcept("COLUMN|CONSTRAINT|CHECK|NOT|UNIQUE|PRIMARY|EXCLUDE|FOREIGN"))) COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_datatypes); /* ALTER TABLE xxx ADD CONSTRAINT yyy */ else if (Matches("ALTER", "TABLE", MatchAny, "ADD", "CONSTRAINT", MatchAny)) - COMPLETE_WITH("CHECK", "UNIQUE", "PRIMARY KEY", "EXCLUDE", "FOREIGN KEY"); + COMPLETE_WITH("CHECK", "NOT NULL", "UNIQUE", "PRIMARY KEY", "EXCLUDE", + "FOREIGN KEY"); /* ALTER TABLE xxx ADD [CONSTRAINT yyy] (PRIMARY KEY|UNIQUE) */ else if (Matches("ALTER", "TABLE", MatchAny, "ADD", "PRIMARY", "KEY") || Matches("ALTER", "TABLE", MatchAny, "ADD", "UNIQUE") || -- 2.49.0