Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitb2de2a1

Browse files
committed
Tab completion for ALTER .. ALL IN TABLESPACE
Update the tab completion for the changes made in3c4cf08, which rework 'MOVE ALL' to be'ALTER .. ALL IN TABLESPACE'.Fujii MasaoBack-patch to 9.4, as the original change was.
1 parent465b52e commitb2de2a1

File tree

1 file changed

+39
-27
lines changed

1 file changed

+39
-27
lines changed

‎src/bin/psql/tab-complete.c

Lines changed: 39 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -953,6 +953,13 @@ psql_completion(const char *text, int start, int end)
953953

954954
/* ALTER */
955955

956+
/* ALTER TABLE */
957+
elseif (pg_strcasecmp(prev2_wd,"ALTER")==0&&
958+
pg_strcasecmp(prev_wd,"TABLE")==0)
959+
{
960+
COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_tables,
961+
"UNION SELECT 'ALL IN TABLESPACE'");
962+
}
956963
/*
957964
* complete with what you can alter (TABLE, GROUP, USER, ...) unless we're
958965
* in ALTER TABLE sth ALTER
@@ -970,6 +977,25 @@ psql_completion(const char *text, int start, int end)
970977

971978
COMPLETE_WITH_LIST(list_ALTER);
972979
}
980+
/* ALTER TABLE,INDEX,MATERIALIZED VIEW xxx ALL IN TABLESPACE xxx */
981+
elseif (pg_strcasecmp(prev4_wd,"ALL")==0&&
982+
pg_strcasecmp(prev3_wd,"IN")==0&&
983+
pg_strcasecmp(prev2_wd,"TABLESPACE")==0)
984+
{
985+
staticconstchar*constlist_ALTERALLINTSPC[]=
986+
{"SET TABLESPACE","OWNED BY",NULL};
987+
988+
COMPLETE_WITH_LIST(list_ALTERALLINTSPC);
989+
}
990+
/* ALTER TABLE,INDEX,MATERIALIZED VIEW xxx ALL IN TABLESPACE xxx OWNED BY */
991+
elseif (pg_strcasecmp(prev6_wd,"ALL")==0&&
992+
pg_strcasecmp(prev5_wd,"IN")==0&&
993+
pg_strcasecmp(prev4_wd,"TABLESPACE")==0&&
994+
pg_strcasecmp(prev2_wd,"OWNED")==0&&
995+
pg_strcasecmp(prev4_wd,"BY")==0)
996+
{
997+
COMPLETE_WITH_QUERY(Query_for_list_of_roles);
998+
}
973999
/* ALTER AGGREGATE,FUNCTION <name> */
9741000
elseif (pg_strcasecmp(prev3_wd,"ALTER")==0&&
9751001
(pg_strcasecmp(prev2_wd,"AGGREGATE")==0||
@@ -1106,6 +1132,13 @@ psql_completion(const char *text, int start, int end)
11061132
COMPLETE_WITH_LIST(list_ALTER_FOREIGN_TABLE);
11071133
}
11081134

1135+
/* ALTER INDEX */
1136+
elseif (pg_strcasecmp(prev2_wd,"ALTER")==0&&
1137+
pg_strcasecmp(prev_wd,"INDEX")==0)
1138+
{
1139+
COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_indexes,
1140+
"UNION SELECT 'ALL IN TABLESPACE'");
1141+
}
11091142
/* ALTER INDEX <name> */
11101143
elseif (pg_strcasecmp(prev3_wd,"ALTER")==0&&
11111144
pg_strcasecmp(prev2_wd,"INDEX")==0)
@@ -1169,7 +1202,8 @@ psql_completion(const char *text, int start, int end)
11691202
pg_strcasecmp(prev2_wd,"MATERIALIZED")==0&&
11701203
pg_strcasecmp(prev_wd,"VIEW")==0)
11711204
{
1172-
COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_matviews,NULL);
1205+
COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_matviews,
1206+
"UNION SELECT 'ALL IN TABLESPACE'");
11731207
}
11741208

11751209
/* ALTER USER,ROLE <name> */
@@ -1749,12 +1783,12 @@ psql_completion(const char *text, int start, int end)
17491783
COMPLETE_WITH_CONST("IDENTITY");
17501784
}
17511785

1752-
/* ALTER TABLESPACE <foo> with RENAME TO, OWNER TO, SET, RESET, MOVE */
1786+
/* ALTER TABLESPACE <foo> with RENAME TO, OWNER TO, SET, RESET */
17531787
elseif (pg_strcasecmp(prev3_wd,"ALTER")==0&&
17541788
pg_strcasecmp(prev2_wd,"TABLESPACE")==0)
17551789
{
17561790
staticconstchar*constlist_ALTERTSPC[]=
1757-
{"RENAME TO","OWNER TO","SET","RESET","MOVE",NULL};
1791+
{"RENAME TO","OWNER TO","SET","RESET",NULL};
17581792

17591793
COMPLETE_WITH_LIST(list_ALTERTSPC);
17601794
}
@@ -1776,27 +1810,6 @@ psql_completion(const char *text, int start, int end)
17761810

17771811
COMPLETE_WITH_LIST(list_TABLESPACEOPTIONS);
17781812
}
1779-
/* ALTER TABLESPACE <foo> MOVE ALL|TABLES|INDEXES|MATERIALIZED VIEWS */
1780-
elseif (pg_strcasecmp(prev4_wd,"ALTER")==0&&
1781-
pg_strcasecmp(prev3_wd,"TABLESPACE")==0&&
1782-
pg_strcasecmp(prev_wd,"MOVE")==0)
1783-
{
1784-
staticconstchar*constlist_TABLESPACEMOVETARGETS[]=
1785-
{"ALL","TABLES","INDEXES","MATERIALIZED VIEWS",NULL};
1786-
1787-
COMPLETE_WITH_LIST(list_TABLESPACEMOVETARGETS);
1788-
}
1789-
elseif ((pg_strcasecmp(prev4_wd,"TABLESPACE")==0&&
1790-
pg_strcasecmp(prev2_wd,"MOVE")==0)||
1791-
(pg_strcasecmp(prev5_wd,"TABLESPACE")==0&&
1792-
pg_strcasecmp(prev3_wd,"MOVE")==0&&
1793-
pg_strcasecmp(prev2_wd,"MATERIALIZED")==0))
1794-
{
1795-
staticconstchar*constlist_TABLESPACEMOVEOPTIONS[]=
1796-
{"OWNED BY","TO",NULL};
1797-
1798-
COMPLETE_WITH_LIST(list_TABLESPACEMOVEOPTIONS);
1799-
}
18001813

18011814
/* ALTER TEXT SEARCH */
18021815
elseif (pg_strcasecmp(prev3_wd,"ALTER")==0&&
@@ -2798,9 +2811,8 @@ psql_completion(const char *text, int start, int end)
27982811
* but we may as well tab-complete both: perhaps some users prefer one
27992812
* variant or the other.
28002813
*/
2801-
elseif ((pg_strcasecmp(prev3_wd,"FETCH")==0||
2802-
pg_strcasecmp(prev3_wd,"MOVE")==0)&&
2803-
pg_strcasecmp(prev_wd,"TO")!=0)
2814+
elseif (pg_strcasecmp(prev3_wd,"FETCH")==0||
2815+
pg_strcasecmp(prev3_wd,"MOVE")==0)
28042816
{
28052817
staticconstchar*constlist_FROMIN[]=
28062818
{"FROM","IN",NULL};

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp