LCOV - code coverage report
Current view: top level - src/bin/psql - sql_help.c (source / functions) Coverage Total Hit
Test: PostgreSQL 20devel Lines: 0.5 % 561 3
Test Date: 2026-09-21 19:15:53 Functions: 0.5 % 187 1
Legend: Lines:     hit not hit

            Line data    Source code
       1              : /*
       2              :  * *** Do not change this file by hand. It is automatically
       3              :  * *** generated from the DocBook documentation.
       4              :  *
       5              :  * generated by src/bin/psql/create_help.pl
       6              :  *
       7              :  */
       8              : 
       9              : #define N_(x) (x)               /* gettext noop */
      10              : 
      11              : #include "postgres_fe.h"
      12              : #include "sql_help.h"
      13              : 
      14              : static void
      15            0 : sql_help_ABORT(PQExpBuffer buf)
      16              : {
      17            0 :     appendPQExpBuffer(buf,
      18              :                       "ABORT [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ]");
      19            0 : }
      20              : 
      21              : static void
      22            0 : sql_help_ALTER_AGGREGATE(PQExpBuffer buf)
      23              : {
      24            0 :     appendPQExpBuffer(buf,
      25              :                       "ALTER AGGREGATE %s ( %s ) RENAME TO %s\n"
      26              :                       "ALTER AGGREGATE %s ( %s )\n"
      27              :                       "                OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
      28              :                       "ALTER AGGREGATE %s ( %s ) SET SCHEMA %s\n"
      29              :                       "\n"
      30              :                       "%s\n"
      31              :                       "\n"
      32              :                       "* |\n"
      33              :                       "[ %s ] [ %s ] %s [ , ... ] |\n"
      34              :                       "[ [ %s ] [ %s ] %s [ , ... ] ] ORDER BY [ %s ] [ %s ] %s [ , ... ]",
      35              :                       _("name"),
      36              :                       _("aggregate_signature"),
      37              :                       _("new_name"),
      38              :                       _("name"),
      39              :                       _("aggregate_signature"),
      40              :                       _("new_owner"),
      41              :                       _("name"),
      42              :                       _("aggregate_signature"),
      43              :                       _("new_schema"),
      44              :                       _("where aggregate_signature is:"),
      45              :                       _("argmode"),
      46              :                       _("argname"),
      47              :                       _("argtype"),
      48              :                       _("argmode"),
      49              :                       _("argname"),
      50              :                       _("argtype"),
      51              :                       _("argmode"),
      52              :                       _("argname"),
      53              :                       _("argtype"));
      54            0 : }
      55              : 
      56              : static void
      57            0 : sql_help_ALTER_COLLATION(PQExpBuffer buf)
      58              : {
      59            0 :     appendPQExpBuffer(buf,
      60              :                       "ALTER COLLATION %s REFRESH VERSION\n"
      61              :                       "\n"
      62              :                       "ALTER COLLATION %s RENAME TO %s\n"
      63              :                       "ALTER COLLATION %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
      64              :                       "ALTER COLLATION %s SET SCHEMA %s",
      65              :                       _("name"),
      66              :                       _("name"),
      67              :                       _("new_name"),
      68              :                       _("name"),
      69              :                       _("new_owner"),
      70              :                       _("name"),
      71              :                       _("new_schema"));
      72            0 : }
      73              : 
      74              : static void
      75            0 : sql_help_ALTER_CONVERSION(PQExpBuffer buf)
      76              : {
      77            0 :     appendPQExpBuffer(buf,
      78              :                       "ALTER CONVERSION %s RENAME TO %s\n"
      79              :                       "ALTER CONVERSION %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
      80              :                       "ALTER CONVERSION %s SET SCHEMA %s",
      81              :                       _("name"),
      82              :                       _("new_name"),
      83              :                       _("name"),
      84              :                       _("new_owner"),
      85              :                       _("name"),
      86              :                       _("new_schema"));
      87            0 : }
      88              : 
      89              : static void
      90            0 : sql_help_ALTER_DATABASE(PQExpBuffer buf)
      91              : {
      92            0 :     appendPQExpBuffer(buf,
      93              :                       "ALTER DATABASE %s [ [ WITH ] %s [ ... ] ]\n"
      94              :                       "\n"
      95              :                       "%s\n"
      96              :                       "\n"
      97              :                       "    ALLOW_CONNECTIONS %s\n"
      98              :                       "    CONNECTION LIMIT %s\n"
      99              :                       "    IS_TEMPLATE %s\n"
     100              :                       "\n"
     101              :                       "ALTER DATABASE %s RENAME TO %s\n"
     102              :                       "\n"
     103              :                       "ALTER DATABASE %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     104              :                       "\n"
     105              :                       "ALTER DATABASE %s SET TABLESPACE %s\n"
     106              :                       "\n"
     107              :                       "ALTER DATABASE %s REFRESH COLLATION VERSION\n"
     108              :                       "\n"
     109              :                       "ALTER DATABASE %s SET %s { TO | = } { %s | DEFAULT }\n"
     110              :                       "ALTER DATABASE %s SET %s FROM CURRENT\n"
     111              :                       "ALTER DATABASE %s RESET %s\n"
     112              :                       "ALTER DATABASE %s RESET ALL",
     113              :                       _("name"),
     114              :                       _("option"),
     115              :                       _("where option can be:"),
     116              :                       _("allowconn"),
     117              :                       _("connlimit"),
     118              :                       _("istemplate"),
     119              :                       _("name"),
     120              :                       _("new_name"),
     121              :                       _("name"),
     122              :                       _("new_owner"),
     123              :                       _("name"),
     124              :                       _("new_tablespace"),
     125              :                       _("name"),
     126              :                       _("name"),
     127              :                       _("configuration_parameter"),
     128              :                       _("value"),
     129              :                       _("name"),
     130              :                       _("configuration_parameter"),
     131              :                       _("name"),
     132              :                       _("configuration_parameter"),
     133              :                       _("name"));
     134            0 : }
     135              : 
     136              : static void
     137            0 : sql_help_ALTER_DEFAULT_PRIVILEGES(PQExpBuffer buf)
     138              : {
     139            0 :     appendPQExpBuffer(buf,
     140              :                       "ALTER DEFAULT PRIVILEGES\n"
     141              :                       "    [ FOR { ROLE | USER } %s [, ...] ]\n"
     142              :                       "    [ IN SCHEMA %s [, ...] ]\n"
     143              :                       "    %s\n"
     144              :                       "\n"
     145              :                       "%s\n"
     146              :                       "\n"
     147              :                       "GRANT { { SELECT | INSERT | UPDATE | DELETE | TRUNCATE | REFERENCES | TRIGGER | MAINTAIN }\n"
     148              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
     149              :                       "    ON TABLES\n"
     150              :                       "    TO { [ GROUP ] %s | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
     151              :                       "\n"
     152              :                       "GRANT { { USAGE | SELECT | UPDATE }\n"
     153              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
     154              :                       "    ON SEQUENCES\n"
     155              :                       "    TO { [ GROUP ] %s | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
     156              :                       "\n"
     157              :                       "GRANT { EXECUTE | ALL [ PRIVILEGES ] }\n"
     158              :                       "    ON { FUNCTIONS | ROUTINES }\n"
     159              :                       "    TO { [ GROUP ] %s | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
     160              :                       "\n"
     161              :                       "GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
     162              :                       "    ON TYPES\n"
     163              :                       "    TO { [ GROUP ] %s | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
     164              :                       "\n"
     165              :                       "GRANT { { USAGE | CREATE }\n"
     166              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
     167              :                       "    ON SCHEMAS\n"
     168              :                       "    TO { [ GROUP ] %s | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
     169              :                       "\n"
     170              :                       "GRANT { { SELECT | UPDATE }\n"
     171              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
     172              :                       "    ON LARGE OBJECTS\n"
     173              :                       "    TO { [ GROUP ] %s | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
     174              :                       "\n"
     175              :                       "REVOKE [ GRANT OPTION FOR ]\n"
     176              :                       "    { { SELECT | INSERT | UPDATE | DELETE | TRUNCATE | REFERENCES | TRIGGER | MAINTAIN }\n"
     177              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
     178              :                       "    ON TABLES\n"
     179              :                       "    FROM { [ GROUP ] %s | PUBLIC } [, ...]\n"
     180              :                       "    [ CASCADE | RESTRICT ]\n"
     181              :                       "\n"
     182              :                       "REVOKE [ GRANT OPTION FOR ]\n"
     183              :                       "    { { USAGE | SELECT | UPDATE }\n"
     184              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
     185              :                       "    ON SEQUENCES\n"
     186              :                       "    FROM { [ GROUP ] %s | PUBLIC } [, ...]\n"
     187              :                       "    [ CASCADE | RESTRICT ]\n"
     188              :                       "\n"
     189              :                       "REVOKE [ GRANT OPTION FOR ]\n"
     190              :                       "    { EXECUTE | ALL [ PRIVILEGES ] }\n"
     191              :                       "    ON { FUNCTIONS | ROUTINES }\n"
     192              :                       "    FROM { [ GROUP ] %s | PUBLIC } [, ...]\n"
     193              :                       "    [ CASCADE | RESTRICT ]\n"
     194              :                       "\n"
     195              :                       "REVOKE [ GRANT OPTION FOR ]\n"
     196              :                       "    { USAGE | ALL [ PRIVILEGES ] }\n"
     197              :                       "    ON TYPES\n"
     198              :                       "    FROM { [ GROUP ] %s | PUBLIC } [, ...]\n"
     199              :                       "    [ CASCADE | RESTRICT ]\n"
     200              :                       "\n"
     201              :                       "REVOKE [ GRANT OPTION FOR ]\n"
     202              :                       "    { { USAGE | CREATE }\n"
     203              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
     204              :                       "    ON SCHEMAS\n"
     205              :                       "    FROM { [ GROUP ] %s | PUBLIC } [, ...]\n"
     206              :                       "    [ CASCADE | RESTRICT ]\n"
     207              :                       "\n"
     208              :                       "REVOKE [ GRANT OPTION FOR ]\n"
     209              :                       "    { { SELECT | UPDATE }\n"
     210              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
     211              :                       "    ON LARGE OBJECTS\n"
     212              :                       "    FROM { [ GROUP ] %s | PUBLIC } [, ...]\n"
     213              :                       "    [ CASCADE | RESTRICT ]",
     214              :                       _("target_role"),
     215              :                       _("schema_name"),
     216              :                       _("abbreviated_grant_or_revoke"),
     217              :                       _("where abbreviated_grant_or_revoke is one of:"),
     218              :                       _("role_name"),
     219              :                       _("role_name"),
     220              :                       _("role_name"),
     221              :                       _("role_name"),
     222              :                       _("role_name"),
     223              :                       _("role_name"),
     224              :                       _("role_name"),
     225              :                       _("role_name"),
     226              :                       _("role_name"),
     227              :                       _("role_name"),
     228              :                       _("role_name"),
     229              :                       _("role_name"));
     230            0 : }
     231              : 
     232              : static void
     233            0 : sql_help_ALTER_DOMAIN(PQExpBuffer buf)
     234              : {
     235            0 :     appendPQExpBuffer(buf,
     236              :                       "ALTER DOMAIN %s\n"
     237              :                       "    { SET DEFAULT %s | DROP DEFAULT }\n"
     238              :                       "ALTER DOMAIN %s\n"
     239              :                       "    { SET | DROP } NOT NULL\n"
     240              :                       "ALTER DOMAIN %s\n"
     241              :                       "    ADD %s [ NOT VALID ]\n"
     242              :                       "ALTER DOMAIN %s\n"
     243              :                       "    DROP CONSTRAINT [ IF EXISTS ] %s [ RESTRICT | CASCADE ]\n"
     244              :                       "ALTER DOMAIN %s\n"
     245              :                       "     RENAME CONSTRAINT %s TO %s\n"
     246              :                       "ALTER DOMAIN %s\n"
     247              :                       "    VALIDATE CONSTRAINT %s\n"
     248              :                       "ALTER DOMAIN %s\n"
     249              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     250              :                       "ALTER DOMAIN %s\n"
     251              :                       "    RENAME TO %s\n"
     252              :                       "ALTER DOMAIN %s\n"
     253              :                       "    SET SCHEMA %s\n"
     254              :                       "\n"
     255              :                       "%s\n"
     256              :                       "\n"
     257              :                       "[ CONSTRAINT %s ]\n"
     258              :                       "{ NOT NULL | CHECK (%s) }",
     259              :                       _("name"),
     260              :                       _("expression"),
     261              :                       _("name"),
     262              :                       _("name"),
     263              :                       _("domain_constraint"),
     264              :                       _("name"),
     265              :                       _("constraint_name"),
     266              :                       _("name"),
     267              :                       _("constraint_name"),
     268              :                       _("new_constraint_name"),
     269              :                       _("name"),
     270              :                       _("constraint_name"),
     271              :                       _("name"),
     272              :                       _("new_owner"),
     273              :                       _("name"),
     274              :                       _("new_name"),
     275              :                       _("name"),
     276              :                       _("new_schema"),
     277              :                       _("where domain_constraint is:"),
     278              :                       _("constraint_name"),
     279              :                       _("expression"));
     280            0 : }
     281              : 
     282              : static void
     283            0 : sql_help_ALTER_EVENT_TRIGGER(PQExpBuffer buf)
     284              : {
     285            0 :     appendPQExpBuffer(buf,
     286              :                       "ALTER EVENT TRIGGER %s DISABLE\n"
     287              :                       "ALTER EVENT TRIGGER %s ENABLE [ REPLICA | ALWAYS ]\n"
     288              :                       "ALTER EVENT TRIGGER %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     289              :                       "ALTER EVENT TRIGGER %s RENAME TO %s",
     290              :                       _("name"),
     291              :                       _("name"),
     292              :                       _("name"),
     293              :                       _("new_owner"),
     294              :                       _("name"),
     295              :                       _("new_name"));
     296            0 : }
     297              : 
     298              : static void
     299            0 : sql_help_ALTER_EXTENSION(PQExpBuffer buf)
     300              : {
     301            0 :     appendPQExpBuffer(buf,
     302              :                       "ALTER EXTENSION %s UPDATE [ TO %s ]\n"
     303              :                       "ALTER EXTENSION %s SET SCHEMA %s\n"
     304              :                       "ALTER EXTENSION %s ADD %s\n"
     305              :                       "ALTER EXTENSION %s DROP %s\n"
     306              :                       "\n"
     307              :                       "%s\n"
     308              :                       "\n"
     309              :                       "  ACCESS METHOD %s |\n"
     310              :                       "  AGGREGATE %s ( %s ) |\n"
     311              :                       "  CAST (%s AS %s) |\n"
     312              :                       "  COLLATION %s |\n"
     313              :                       "  CONVERSION %s |\n"
     314              :                       "  DOMAIN %s |\n"
     315              :                       "  EVENT TRIGGER %s |\n"
     316              :                       "  FOREIGN DATA WRAPPER %s |\n"
     317              :                       "  FOREIGN TABLE %s |\n"
     318              :                       "  FUNCTION %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
     319              :                       "  MATERIALIZED VIEW %s |\n"
     320              :                       "  OPERATOR %s (%s, %s) |\n"
     321              :                       "  OPERATOR CLASS %s USING %s |\n"
     322              :                       "  OPERATOR FAMILY %s USING %s |\n"
     323              :                       "  [ PROCEDURAL ] LANGUAGE %s |\n"
     324              :                       "  PROCEDURE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
     325              :                       "  ROUTINE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
     326              :                       "  SCHEMA %s |\n"
     327              :                       "  SEQUENCE %s |\n"
     328              :                       "  SERVER %s |\n"
     329              :                       "  TABLE %s |\n"
     330              :                       "  TEXT SEARCH CONFIGURATION %s |\n"
     331              :                       "  TEXT SEARCH DICTIONARY %s |\n"
     332              :                       "  TEXT SEARCH PARSER %s |\n"
     333              :                       "  TEXT SEARCH TEMPLATE %s |\n"
     334              :                       "  TRANSFORM FOR %s LANGUAGE %s |\n"
     335              :                       "  TYPE %s |\n"
     336              :                       "  VIEW %s\n"
     337              :                       "\n"
     338              :                       "%s\n"
     339              :                       "\n"
     340              :                       "* |\n"
     341              :                       "[ %s ] [ %s ] %s [ , ... ] |\n"
     342              :                       "[ [ %s ] [ %s ] %s [ , ... ] ] ORDER BY [ %s ] [ %s ] %s [ , ... ]",
     343              :                       _("name"),
     344              :                       _("new_version"),
     345              :                       _("name"),
     346              :                       _("new_schema"),
     347              :                       _("name"),
     348              :                       _("member_object"),
     349              :                       _("name"),
     350              :                       _("member_object"),
     351              :                       _("where member_object is:"),
     352              :                       _("object_name"),
     353              :                       _("aggregate_name"),
     354              :                       _("aggregate_signature"),
     355              :                       _("source_type"),
     356              :                       _("target_type"),
     357              :                       _("object_name"),
     358              :                       _("object_name"),
     359              :                       _("object_name"),
     360              :                       _("object_name"),
     361              :                       _("object_name"),
     362              :                       _("object_name"),
     363              :                       _("function_name"),
     364              :                       _("argmode"),
     365              :                       _("argname"),
     366              :                       _("argtype"),
     367              :                       _("object_name"),
     368              :                       _("operator_name"),
     369              :                       _("left_type"),
     370              :                       _("right_type"),
     371              :                       _("object_name"),
     372              :                       _("index_method"),
     373              :                       _("object_name"),
     374              :                       _("index_method"),
     375              :                       _("object_name"),
     376              :                       _("procedure_name"),
     377              :                       _("argmode"),
     378              :                       _("argname"),
     379              :                       _("argtype"),
     380              :                       _("routine_name"),
     381              :                       _("argmode"),
     382              :                       _("argname"),
     383              :                       _("argtype"),
     384              :                       _("object_name"),
     385              :                       _("object_name"),
     386              :                       _("object_name"),
     387              :                       _("object_name"),
     388              :                       _("object_name"),
     389              :                       _("object_name"),
     390              :                       _("object_name"),
     391              :                       _("object_name"),
     392              :                       _("type_name"),
     393              :                       _("lang_name"),
     394              :                       _("object_name"),
     395              :                       _("object_name"),
     396              :                       _("and aggregate_signature is:"),
     397              :                       _("argmode"),
     398              :                       _("argname"),
     399              :                       _("argtype"),
     400              :                       _("argmode"),
     401              :                       _("argname"),
     402              :                       _("argtype"),
     403              :                       _("argmode"),
     404              :                       _("argname"),
     405              :                       _("argtype"));
     406            0 : }
     407              : 
     408              : static void
     409            0 : sql_help_ALTER_FOREIGN_DATA_WRAPPER(PQExpBuffer buf)
     410              : {
     411            0 :     appendPQExpBuffer(buf,
     412              :                       "ALTER FOREIGN DATA WRAPPER %s\n"
     413              :                       "    [ HANDLER %s | NO HANDLER ]\n"
     414              :                       "    [ VALIDATOR %s | NO VALIDATOR ]\n"
     415              :                       "    [ CONNECTION %s | NO CONNECTION ]\n"
     416              :                       "    [ OPTIONS ( [ ADD | SET | DROP ] %s ['%s'] [, ... ]) ]\n"
     417              :                       "ALTER FOREIGN DATA WRAPPER %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     418              :                       "ALTER FOREIGN DATA WRAPPER %s RENAME TO %s",
     419              :                       _("name"),
     420              :                       _("handler_function"),
     421              :                       _("validator_function"),
     422              :                       _("connection_function"),
     423              :                       _("option"),
     424              :                       _("value"),
     425              :                       _("name"),
     426              :                       _("new_owner"),
     427              :                       _("name"),
     428              :                       _("new_name"));
     429            0 : }
     430              : 
     431              : static void
     432            0 : sql_help_ALTER_FOREIGN_TABLE(PQExpBuffer buf)
     433              : {
     434            0 :     appendPQExpBuffer(buf,
     435              :                       "ALTER FOREIGN TABLE [ IF EXISTS ] [ ONLY ] %s [ * ]\n"
     436              :                       "    %s [, ... ]\n"
     437              :                       "ALTER FOREIGN TABLE [ IF EXISTS ] [ ONLY ] %s [ * ]\n"
     438              :                       "    RENAME [ COLUMN ] %s TO %s\n"
     439              :                       "ALTER FOREIGN TABLE [ IF EXISTS ] %s\n"
     440              :                       "    RENAME TO %s\n"
     441              :                       "ALTER FOREIGN TABLE [ IF EXISTS ] %s\n"
     442              :                       "    SET SCHEMA %s\n"
     443              :                       "\n"
     444              :                       "%s\n"
     445              :                       "\n"
     446              :                       "    ADD [ COLUMN ] [ IF NOT EXISTS ] %s %s [ COLLATE %s ] [ %s [ ... ] ]\n"
     447              :                       "    DROP [ COLUMN ] [ IF EXISTS ] %s [ RESTRICT | CASCADE ]\n"
     448              :                       "    ALTER [ COLUMN ] %s [ SET DATA ] TYPE %s [ COLLATE %s ]\n"
     449              :                       "    ALTER [ COLUMN ] %s SET DEFAULT %s\n"
     450              :                       "    ALTER [ COLUMN ] %s DROP DEFAULT\n"
     451              :                       "    ALTER [ COLUMN ] %s { SET | DROP } NOT NULL\n"
     452              :                       "    ALTER [ COLUMN ] %s SET STATISTICS %s\n"
     453              :                       "    ALTER [ COLUMN ] %s SET ( %s = %s [, ... ] )\n"
     454              :                       "    ALTER [ COLUMN ] %s RESET ( %s [, ... ] )\n"
     455              :                       "    ALTER [ COLUMN ] %s SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT }\n"
     456              :                       "    ALTER [ COLUMN ] %s OPTIONS ( [ ADD | SET | DROP ] %s ['%s'] [, ... ])\n"
     457              :                       "    ADD %s [ NOT VALID ]\n"
     458              :                       "    VALIDATE CONSTRAINT %s\n"
     459              :                       "    DROP CONSTRAINT [ IF EXISTS ]  %s [ RESTRICT | CASCADE ]\n"
     460              :                       "    DISABLE TRIGGER [ %s | ALL | USER ]\n"
     461              :                       "    ENABLE TRIGGER [ %s | ALL | USER ]\n"
     462              :                       "    ENABLE REPLICA TRIGGER %s\n"
     463              :                       "    ENABLE ALWAYS TRIGGER %s\n"
     464              :                       "    SET WITHOUT OIDS\n"
     465              :                       "    INHERIT %s\n"
     466              :                       "    NO INHERIT %s\n"
     467              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     468              :                       "    OPTIONS ( [ ADD | SET | DROP ] %s ['%s'] [, ... ])",
     469              :                       _("name"),
     470              :                       _("action"),
     471              :                       _("name"),
     472              :                       _("column_name"),
     473              :                       _("new_column_name"),
     474              :                       _("name"),
     475              :                       _("new_name"),
     476              :                       _("name"),
     477              :                       _("new_schema"),
     478              :                       _("where action is one of:"),
     479              :                       _("column_name"),
     480              :                       _("data_type"),
     481              :                       _("collation"),
     482              :                       _("column_constraint"),
     483              :                       _("column_name"),
     484              :                       _("column_name"),
     485              :                       _("data_type"),
     486              :                       _("collation"),
     487              :                       _("column_name"),
     488              :                       _("expression"),
     489              :                       _("column_name"),
     490              :                       _("column_name"),
     491              :                       _("column_name"),
     492              :                       _("integer"),
     493              :                       _("column_name"),
     494              :                       _("attribute_option"),
     495              :                       _("value"),
     496              :                       _("column_name"),
     497              :                       _("attribute_option"),
     498              :                       _("column_name"),
     499              :                       _("column_name"),
     500              :                       _("option"),
     501              :                       _("value"),
     502              :                       _("table_constraint"),
     503              :                       _("constraint_name"),
     504              :                       _("constraint_name"),
     505              :                       _("trigger_name"),
     506              :                       _("trigger_name"),
     507              :                       _("trigger_name"),
     508              :                       _("trigger_name"),
     509              :                       _("parent_table"),
     510              :                       _("parent_table"),
     511              :                       _("new_owner"),
     512              :                       _("option"),
     513              :                       _("value"));
     514            0 : }
     515              : 
     516              : static void
     517            0 : sql_help_ALTER_FUNCTION(PQExpBuffer buf)
     518              : {
     519            0 :     appendPQExpBuffer(buf,
     520              :                       "ALTER FUNCTION %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     521              :                       "    %s [ ... ] [ RESTRICT ]\n"
     522              :                       "ALTER FUNCTION %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     523              :                       "    RENAME TO %s\n"
     524              :                       "ALTER FUNCTION %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     525              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     526              :                       "ALTER FUNCTION %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     527              :                       "    SET SCHEMA %s\n"
     528              :                       "ALTER FUNCTION %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     529              :                       "    [ NO ] DEPENDS ON EXTENSION %s\n"
     530              :                       "\n"
     531              :                       "%s\n"
     532              :                       "\n"
     533              :                       "    CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT\n"
     534              :                       "    IMMUTABLE | STABLE | VOLATILE\n"
     535              :                       "    [ NOT ] LEAKPROOF\n"
     536              :                       "    [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER\n"
     537              :                       "    PARALLEL { UNSAFE | RESTRICTED | SAFE }\n"
     538              :                       "    COST %s\n"
     539              :                       "    ROWS %s\n"
     540              :                       "    SUPPORT %s\n"
     541              :                       "    SET %s { TO | = } { %s | DEFAULT }\n"
     542              :                       "    SET %s FROM CURRENT\n"
     543              :                       "    RESET %s\n"
     544              :                       "    RESET ALL",
     545              :                       _("name"),
     546              :                       _("argmode"),
     547              :                       _("argname"),
     548              :                       _("argtype"),
     549              :                       _("action"),
     550              :                       _("name"),
     551              :                       _("argmode"),
     552              :                       _("argname"),
     553              :                       _("argtype"),
     554              :                       _("new_name"),
     555              :                       _("name"),
     556              :                       _("argmode"),
     557              :                       _("argname"),
     558              :                       _("argtype"),
     559              :                       _("new_owner"),
     560              :                       _("name"),
     561              :                       _("argmode"),
     562              :                       _("argname"),
     563              :                       _("argtype"),
     564              :                       _("new_schema"),
     565              :                       _("name"),
     566              :                       _("argmode"),
     567              :                       _("argname"),
     568              :                       _("argtype"),
     569              :                       _("extension_name"),
     570              :                       _("where action is one of:"),
     571              :                       _("execution_cost"),
     572              :                       _("result_rows"),
     573              :                       _("support_function"),
     574              :                       _("configuration_parameter"),
     575              :                       _("value"),
     576              :                       _("configuration_parameter"),
     577              :                       _("configuration_parameter"));
     578            0 : }
     579              : 
     580              : static void
     581            0 : sql_help_ALTER_GROUP(PQExpBuffer buf)
     582              : {
     583            0 :     appendPQExpBuffer(buf,
     584              :                       "ALTER GROUP %s ADD USER %s [, ... ]\n"
     585              :                       "ALTER GROUP %s DROP USER %s [, ... ]\n"
     586              :                       "\n"
     587              :                       "%s\n"
     588              :                       "\n"
     589              :                       "    %s\n"
     590              :                       "  | CURRENT_ROLE\n"
     591              :                       "  | CURRENT_USER\n"
     592              :                       "  | SESSION_USER\n"
     593              :                       "\n"
     594              :                       "ALTER GROUP %s RENAME TO %s",
     595              :                       _("role_specification"),
     596              :                       _("user_name"),
     597              :                       _("role_specification"),
     598              :                       _("user_name"),
     599              :                       _("where role_specification can be:"),
     600              :                       _("role_name"),
     601              :                       _("group_name"),
     602              :                       _("new_name"));
     603            0 : }
     604              : 
     605              : static void
     606            0 : sql_help_ALTER_INDEX(PQExpBuffer buf)
     607              : {
     608            0 :     appendPQExpBuffer(buf,
     609              :                       "ALTER INDEX [ IF EXISTS ] %s RENAME TO %s\n"
     610              :                       "ALTER INDEX [ IF EXISTS ] %s SET TABLESPACE %s\n"
     611              :                       "ALTER INDEX %s ATTACH PARTITION %s\n"
     612              :                       "ALTER INDEX %s [ NO ] DEPENDS ON EXTENSION %s\n"
     613              :                       "ALTER INDEX [ IF EXISTS ] %s SET ( %s [= %s] [, ... ] )\n"
     614              :                       "ALTER INDEX [ IF EXISTS ] %s RESET ( %s [, ... ] )\n"
     615              :                       "ALTER INDEX [ IF EXISTS ] %s ALTER [ COLUMN ] %s\n"
     616              :                       "    SET STATISTICS %s\n"
     617              :                       "ALTER INDEX ALL IN TABLESPACE %s [ OWNED BY %s [, ... ] ]\n"
     618              :                       "    SET TABLESPACE %s [ NOWAIT ]",
     619              :                       _("name"),
     620              :                       _("new_name"),
     621              :                       _("name"),
     622              :                       _("tablespace_name"),
     623              :                       _("name"),
     624              :                       _("index_name"),
     625              :                       _("name"),
     626              :                       _("extension_name"),
     627              :                       _("name"),
     628              :                       _("storage_parameter"),
     629              :                       _("value"),
     630              :                       _("name"),
     631              :                       _("storage_parameter"),
     632              :                       _("name"),
     633              :                       _("column_number"),
     634              :                       _("integer"),
     635              :                       _("name"),
     636              :                       _("role_name"),
     637              :                       _("new_tablespace"));
     638            0 : }
     639              : 
     640              : static void
     641            0 : sql_help_ALTER_LANGUAGE(PQExpBuffer buf)
     642              : {
     643            0 :     appendPQExpBuffer(buf,
     644              :                       "ALTER [ PROCEDURAL ] LANGUAGE %s RENAME TO %s\n"
     645              :                       "ALTER [ PROCEDURAL ] LANGUAGE %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }",
     646              :                       _("name"),
     647              :                       _("new_name"),
     648              :                       _("name"),
     649              :                       _("new_owner"));
     650            0 : }
     651              : 
     652              : static void
     653            0 : sql_help_ALTER_LARGE_OBJECT(PQExpBuffer buf)
     654              : {
     655            0 :     appendPQExpBuffer(buf,
     656              :                       "ALTER LARGE OBJECT %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }",
     657              :                       _("large_object_oid"),
     658              :                       _("new_owner"));
     659            0 : }
     660              : 
     661              : static void
     662            0 : sql_help_ALTER_MATERIALIZED_VIEW(PQExpBuffer buf)
     663              : {
     664            0 :     appendPQExpBuffer(buf,
     665              :                       "ALTER MATERIALIZED VIEW [ IF EXISTS ] %s\n"
     666              :                       "    %s [, ... ]\n"
     667              :                       "ALTER MATERIALIZED VIEW %s\n"
     668              :                       "    [ NO ] DEPENDS ON EXTENSION %s\n"
     669              :                       "ALTER MATERIALIZED VIEW [ IF EXISTS ] %s\n"
     670              :                       "    RENAME [ COLUMN ] %s TO %s\n"
     671              :                       "ALTER MATERIALIZED VIEW [ IF EXISTS ] %s\n"
     672              :                       "    RENAME TO %s\n"
     673              :                       "ALTER MATERIALIZED VIEW [ IF EXISTS ] %s\n"
     674              :                       "    SET SCHEMA %s\n"
     675              :                       "ALTER MATERIALIZED VIEW ALL IN TABLESPACE %s [ OWNED BY %s [, ... ] ]\n"
     676              :                       "    SET TABLESPACE %s [ NOWAIT ]\n"
     677              :                       "\n"
     678              :                       "%s\n"
     679              :                       "\n"
     680              :                       "    ALTER [ COLUMN ] %s SET STATISTICS %s\n"
     681              :                       "    ALTER [ COLUMN ] %s SET ( %s = %s [, ... ] )\n"
     682              :                       "    ALTER [ COLUMN ] %s RESET ( %s [, ... ] )\n"
     683              :                       "    ALTER [ COLUMN ] %s SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT }\n"
     684              :                       "    ALTER [ COLUMN ] %s SET COMPRESSION %s\n"
     685              :                       "    CLUSTER ON %s\n"
     686              :                       "    SET WITHOUT CLUSTER\n"
     687              :                       "    SET ACCESS METHOD %s\n"
     688              :                       "    SET TABLESPACE %s\n"
     689              :                       "    SET ( %s [= %s] [, ... ] )\n"
     690              :                       "    RESET ( %s [, ... ] )\n"
     691              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }",
     692              :                       _("name"),
     693              :                       _("action"),
     694              :                       _("name"),
     695              :                       _("extension_name"),
     696              :                       _("name"),
     697              :                       _("column_name"),
     698              :                       _("new_column_name"),
     699              :                       _("name"),
     700              :                       _("new_name"),
     701              :                       _("name"),
     702              :                       _("new_schema"),
     703              :                       _("name"),
     704              :                       _("role_name"),
     705              :                       _("new_tablespace"),
     706              :                       _("where action is one of:"),
     707              :                       _("column_name"),
     708              :                       _("integer"),
     709              :                       _("column_name"),
     710              :                       _("attribute_option"),
     711              :                       _("value"),
     712              :                       _("column_name"),
     713              :                       _("attribute_option"),
     714              :                       _("column_name"),
     715              :                       _("column_name"),
     716              :                       _("compression_method"),
     717              :                       _("index_name"),
     718              :                       _("new_access_method"),
     719              :                       _("new_tablespace"),
     720              :                       _("storage_parameter"),
     721              :                       _("value"),
     722              :                       _("storage_parameter"),
     723              :                       _("new_owner"));
     724            0 : }
     725              : 
     726              : static void
     727            0 : sql_help_ALTER_OPERATOR(PQExpBuffer buf)
     728              : {
     729            0 :     appendPQExpBuffer(buf,
     730              :                       "ALTER OPERATOR %s ( { %s | NONE } , %s )\n"
     731              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     732              :                       "\n"
     733              :                       "ALTER OPERATOR %s ( { %s | NONE } , %s )\n"
     734              :                       "    SET SCHEMA %s\n"
     735              :                       "\n"
     736              :                       "ALTER OPERATOR %s ( { %s | NONE } , %s )\n"
     737              :                       "    SET ( {  RESTRICT = { %s | NONE }\n"
     738              :                       "           | JOIN = { %s | NONE }\n"
     739              :                       "           | COMMUTATOR = %s\n"
     740              :                       "           | NEGATOR = %s\n"
     741              :                       "           | HASHES\n"
     742              :                       "           | MERGES\n"
     743              :                       "          } [, ... ] )",
     744              :                       _("name"),
     745              :                       _("left_type"),
     746              :                       _("right_type"),
     747              :                       _("new_owner"),
     748              :                       _("name"),
     749              :                       _("left_type"),
     750              :                       _("right_type"),
     751              :                       _("new_schema"),
     752              :                       _("name"),
     753              :                       _("left_type"),
     754              :                       _("right_type"),
     755              :                       _("res_proc"),
     756              :                       _("join_proc"),
     757              :                       _("com_op"),
     758              :                       _("neg_op"));
     759            0 : }
     760              : 
     761              : static void
     762            0 : sql_help_ALTER_OPERATOR_CLASS(PQExpBuffer buf)
     763              : {
     764            0 :     appendPQExpBuffer(buf,
     765              :                       "ALTER OPERATOR CLASS %s USING %s\n"
     766              :                       "    RENAME TO %s\n"
     767              :                       "\n"
     768              :                       "ALTER OPERATOR CLASS %s USING %s\n"
     769              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     770              :                       "\n"
     771              :                       "ALTER OPERATOR CLASS %s USING %s\n"
     772              :                       "    SET SCHEMA %s",
     773              :                       _("name"),
     774              :                       _("index_method"),
     775              :                       _("new_name"),
     776              :                       _("name"),
     777              :                       _("index_method"),
     778              :                       _("new_owner"),
     779              :                       _("name"),
     780              :                       _("index_method"),
     781              :                       _("new_schema"));
     782            0 : }
     783              : 
     784              : static void
     785            0 : sql_help_ALTER_OPERATOR_FAMILY(PQExpBuffer buf)
     786              : {
     787            0 :     appendPQExpBuffer(buf,
     788              :                       "ALTER OPERATOR FAMILY %s USING %s ADD\n"
     789              :                       "  {  OPERATOR %s %s ( %s, %s )\n"
     790              :                       "              [ FOR SEARCH | FOR ORDER BY %s ]\n"
     791              :                       "   | FUNCTION %s [ ( %s [ , %s ] ) ]\n"
     792              :                       "              %s [ ( %s [, ...] ) ]\n"
     793              :                       "  } [, ... ]\n"
     794              :                       "\n"
     795              :                       "ALTER OPERATOR FAMILY %s USING %s DROP\n"
     796              :                       "  {  OPERATOR %s ( %s [ , %s ] )\n"
     797              :                       "   | FUNCTION %s ( %s [ , %s ] )\n"
     798              :                       "  } [, ... ]\n"
     799              :                       "\n"
     800              :                       "ALTER OPERATOR FAMILY %s USING %s\n"
     801              :                       "    RENAME TO %s\n"
     802              :                       "\n"
     803              :                       "ALTER OPERATOR FAMILY %s USING %s\n"
     804              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     805              :                       "\n"
     806              :                       "ALTER OPERATOR FAMILY %s USING %s\n"
     807              :                       "    SET SCHEMA %s",
     808              :                       _("name"),
     809              :                       _("index_method"),
     810              :                       _("strategy_number"),
     811              :                       _("operator_name"),
     812              :                       _("op_type"),
     813              :                       _("op_type"),
     814              :                       _("sort_family_name"),
     815              :                       _("support_number"),
     816              :                       _("op_type"),
     817              :                       _("op_type"),
     818              :                       _("function_name"),
     819              :                       _("argument_type"),
     820              :                       _("name"),
     821              :                       _("index_method"),
     822              :                       _("strategy_number"),
     823              :                       _("op_type"),
     824              :                       _("op_type"),
     825              :                       _("support_number"),
     826              :                       _("op_type"),
     827              :                       _("op_type"),
     828              :                       _("name"),
     829              :                       _("index_method"),
     830              :                       _("new_name"),
     831              :                       _("name"),
     832              :                       _("index_method"),
     833              :                       _("new_owner"),
     834              :                       _("name"),
     835              :                       _("index_method"),
     836              :                       _("new_schema"));
     837            0 : }
     838              : 
     839              : static void
     840            0 : sql_help_ALTER_POLICY(PQExpBuffer buf)
     841              : {
     842            0 :     appendPQExpBuffer(buf,
     843              :                       "ALTER POLICY %s ON %s RENAME TO %s\n"
     844              :                       "\n"
     845              :                       "ALTER POLICY %s ON %s\n"
     846              :                       "    [ TO { %s | PUBLIC | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...] ]\n"
     847              :                       "    [ USING ( %s ) ]\n"
     848              :                       "    [ WITH CHECK ( %s ) ]",
     849              :                       _("name"),
     850              :                       _("table_name"),
     851              :                       _("new_name"),
     852              :                       _("name"),
     853              :                       _("table_name"),
     854              :                       _("role_name"),
     855              :                       _("using_expression"),
     856              :                       _("check_expression"));
     857            0 : }
     858              : 
     859              : static void
     860            0 : sql_help_ALTER_PROCEDURE(PQExpBuffer buf)
     861              : {
     862            0 :     appendPQExpBuffer(buf,
     863              :                       "ALTER PROCEDURE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     864              :                       "    %s [ ... ] [ RESTRICT ]\n"
     865              :                       "ALTER PROCEDURE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     866              :                       "    RENAME TO %s\n"
     867              :                       "ALTER PROCEDURE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     868              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     869              :                       "ALTER PROCEDURE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     870              :                       "    SET SCHEMA %s\n"
     871              :                       "ALTER PROCEDURE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
     872              :                       "    [ NO ] DEPENDS ON EXTENSION %s\n"
     873              :                       "\n"
     874              :                       "%s\n"
     875              :                       "\n"
     876              :                       "    [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER\n"
     877              :                       "    SET %s { TO | = } { %s | DEFAULT }\n"
     878              :                       "    SET %s FROM CURRENT\n"
     879              :                       "    RESET %s\n"
     880              :                       "    RESET ALL",
     881              :                       _("name"),
     882              :                       _("argmode"),
     883              :                       _("argname"),
     884              :                       _("argtype"),
     885              :                       _("action"),
     886              :                       _("name"),
     887              :                       _("argmode"),
     888              :                       _("argname"),
     889              :                       _("argtype"),
     890              :                       _("new_name"),
     891              :                       _("name"),
     892              :                       _("argmode"),
     893              :                       _("argname"),
     894              :                       _("argtype"),
     895              :                       _("new_owner"),
     896              :                       _("name"),
     897              :                       _("argmode"),
     898              :                       _("argname"),
     899              :                       _("argtype"),
     900              :                       _("new_schema"),
     901              :                       _("name"),
     902              :                       _("argmode"),
     903              :                       _("argname"),
     904              :                       _("argtype"),
     905              :                       _("extension_name"),
     906              :                       _("where action is one of:"),
     907              :                       _("configuration_parameter"),
     908              :                       _("value"),
     909              :                       _("configuration_parameter"),
     910              :                       _("configuration_parameter"));
     911            0 : }
     912              : 
     913              : static void
     914            0 : sql_help_ALTER_PUBLICATION(PQExpBuffer buf)
     915              : {
     916            0 :     appendPQExpBuffer(buf,
     917              :                       "ALTER PUBLICATION %s ADD %s [, ...]\n"
     918              :                       "ALTER PUBLICATION %s DROP %s [, ...]\n"
     919              :                       "ALTER PUBLICATION %s SET { %s [, ...] | %s [, ... ] }\n"
     920              :                       "ALTER PUBLICATION %s SET ( %s [= %s] [, ... ] )\n"
     921              :                       "ALTER PUBLICATION %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
     922              :                       "ALTER PUBLICATION %s RENAME TO %s\n"
     923              :                       "\n"
     924              :                       "%s\n"
     925              :                       "\n"
     926              :                       "    TABLE %s [, ... ]\n"
     927              :                       "    TABLES IN SCHEMA { %s | CURRENT_SCHEMA } [, ... ]\n"
     928              :                       "\n"
     929              :                       "%s\n"
     930              :                       "\n"
     931              :                       "    ALL TABLES [ EXCEPT ( %s [, ... ] ) ]\n"
     932              :                       "    ALL SEQUENCES\n"
     933              :                       "\n"
     934              :                       "%s\n"
     935              :                       "\n"
     936              :                       "    TABLE %s [, ... ]\n"
     937              :                       "    TABLES IN SCHEMA { %s | CURRENT_SCHEMA } [, ... ]\n"
     938              :                       "\n"
     939              :                       "%s\n"
     940              :                       "\n"
     941              :                       "    %s [ ( %s [, ... ] ) ] [ WHERE ( %s ) ]\n"
     942              :                       "\n"
     943              :                       "%s\n"
     944              :                       "\n"
     945              :                       "    TABLE %s [, ... ]\n"
     946              :                       "\n"
     947              :                       "%s\n"
     948              :                       "\n"
     949              :                       "   [ ONLY ] %s [ * ]",
     950              :                       _("name"),
     951              :                       _("publication_object"),
     952              :                       _("name"),
     953              :                       _("publication_drop_object"),
     954              :                       _("name"),
     955              :                       _("publication_object"),
     956              :                       _("publication_all_object"),
     957              :                       _("name"),
     958              :                       _("publication_parameter"),
     959              :                       _("value"),
     960              :                       _("name"),
     961              :                       _("new_owner"),
     962              :                       _("name"),
     963              :                       _("new_name"),
     964              :                       _("where publication_object is one of:"),
     965              :                       _("table_and_columns"),
     966              :                       _("schema_name"),
     967              :                       _("and publication_all_object is one of:"),
     968              :                       _("except_table_object"),
     969              :                       _("and publication_drop_object is one of:"),
     970              :                       _("table_object"),
     971              :                       _("schema_name"),
     972              :                       _("and table_and_columns is:"),
     973              :                       _("table_object"),
     974              :                       _("column_name"),
     975              :                       _("expression"),
     976              :                       _("and except_table_object is:"),
     977              :                       _("table_object"),
     978              :                       _("and table_object is:"),
     979              :                       _("table_name"));
     980            0 : }
     981              : 
     982              : static void
     983            0 : sql_help_ALTER_ROLE(PQExpBuffer buf)
     984              : {
     985            0 :     appendPQExpBuffer(buf,
     986              :                       "ALTER ROLE %s [ WITH ] %s [ ... ]\n"
     987              :                       "\n"
     988              :                       "%s\n"
     989              :                       "\n"
     990              :                       "      SUPERUSER | NOSUPERUSER\n"
     991              :                       "    | CREATEDB | NOCREATEDB\n"
     992              :                       "    | CREATEROLE | NOCREATEROLE\n"
     993              :                       "    | INHERIT | NOINHERIT\n"
     994              :                       "    | LOGIN | NOLOGIN\n"
     995              :                       "    | REPLICATION | NOREPLICATION\n"
     996              :                       "    | BYPASSRLS | NOBYPASSRLS\n"
     997              :                       "    | CONNECTION LIMIT %s\n"
     998              :                       "    | [ ENCRYPTED ] PASSWORD '%s' | PASSWORD NULL\n"
     999              :                       "    | VALID UNTIL '%s'\n"
    1000              :                       "\n"
    1001              :                       "ALTER ROLE %s RENAME TO %s\n"
    1002              :                       "\n"
    1003              :                       "ALTER ROLE { %s | ALL } [ IN DATABASE %s ] SET %s { TO | = } { %s | DEFAULT }\n"
    1004              :                       "ALTER ROLE { %s | ALL } [ IN DATABASE %s ] SET %s FROM CURRENT\n"
    1005              :                       "ALTER ROLE { %s | ALL } [ IN DATABASE %s ] RESET %s\n"
    1006              :                       "ALTER ROLE { %s | ALL } [ IN DATABASE %s ] RESET ALL\n"
    1007              :                       "\n"
    1008              :                       "%s\n"
    1009              :                       "\n"
    1010              :                       "    %s\n"
    1011              :                       "  | CURRENT_ROLE\n"
    1012              :                       "  | CURRENT_USER\n"
    1013              :                       "  | SESSION_USER",
    1014              :                       _("role_specification"),
    1015              :                       _("option"),
    1016              :                       _("where option can be:"),
    1017              :                       _("connlimit"),
    1018              :                       _("password"),
    1019              :                       _("timestamp"),
    1020              :                       _("name"),
    1021              :                       _("new_name"),
    1022              :                       _("role_specification"),
    1023              :                       _("database_name"),
    1024              :                       _("configuration_parameter"),
    1025              :                       _("value"),
    1026              :                       _("role_specification"),
    1027              :                       _("database_name"),
    1028              :                       _("configuration_parameter"),
    1029              :                       _("role_specification"),
    1030              :                       _("database_name"),
    1031              :                       _("configuration_parameter"),
    1032              :                       _("role_specification"),
    1033              :                       _("database_name"),
    1034              :                       _("where role_specification can be:"),
    1035              :                       _("role_name"));
    1036            0 : }
    1037              : 
    1038              : static void
    1039            0 : sql_help_ALTER_ROUTINE(PQExpBuffer buf)
    1040              : {
    1041            0 :     appendPQExpBuffer(buf,
    1042              :                       "ALTER ROUTINE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
    1043              :                       "    %s [ ... ] [ RESTRICT ]\n"
    1044              :                       "ALTER ROUTINE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
    1045              :                       "    RENAME TO %s\n"
    1046              :                       "ALTER ROUTINE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
    1047              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1048              :                       "ALTER ROUTINE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
    1049              :                       "    SET SCHEMA %s\n"
    1050              :                       "ALTER ROUTINE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ]\n"
    1051              :                       "    [ NO ] DEPENDS ON EXTENSION %s\n"
    1052              :                       "\n"
    1053              :                       "%s\n"
    1054              :                       "\n"
    1055              :                       "    IMMUTABLE | STABLE | VOLATILE\n"
    1056              :                       "    [ NOT ] LEAKPROOF\n"
    1057              :                       "    [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER\n"
    1058              :                       "    PARALLEL { UNSAFE | RESTRICTED | SAFE }\n"
    1059              :                       "    COST %s\n"
    1060              :                       "    ROWS %s\n"
    1061              :                       "    SET %s { TO | = } { %s | DEFAULT }\n"
    1062              :                       "    SET %s FROM CURRENT\n"
    1063              :                       "    RESET %s\n"
    1064              :                       "    RESET ALL",
    1065              :                       _("name"),
    1066              :                       _("argmode"),
    1067              :                       _("argname"),
    1068              :                       _("argtype"),
    1069              :                       _("action"),
    1070              :                       _("name"),
    1071              :                       _("argmode"),
    1072              :                       _("argname"),
    1073              :                       _("argtype"),
    1074              :                       _("new_name"),
    1075              :                       _("name"),
    1076              :                       _("argmode"),
    1077              :                       _("argname"),
    1078              :                       _("argtype"),
    1079              :                       _("new_owner"),
    1080              :                       _("name"),
    1081              :                       _("argmode"),
    1082              :                       _("argname"),
    1083              :                       _("argtype"),
    1084              :                       _("new_schema"),
    1085              :                       _("name"),
    1086              :                       _("argmode"),
    1087              :                       _("argname"),
    1088              :                       _("argtype"),
    1089              :                       _("extension_name"),
    1090              :                       _("where action is one of:"),
    1091              :                       _("execution_cost"),
    1092              :                       _("result_rows"),
    1093              :                       _("configuration_parameter"),
    1094              :                       _("value"),
    1095              :                       _("configuration_parameter"),
    1096              :                       _("configuration_parameter"));
    1097            0 : }
    1098              : 
    1099              : static void
    1100            0 : sql_help_ALTER_RULE(PQExpBuffer buf)
    1101              : {
    1102            0 :     appendPQExpBuffer(buf,
    1103              :                       "ALTER RULE %s ON %s RENAME TO %s",
    1104              :                       _("name"),
    1105              :                       _("table_name"),
    1106              :                       _("new_name"));
    1107            0 : }
    1108              : 
    1109              : static void
    1110            0 : sql_help_ALTER_SCHEMA(PQExpBuffer buf)
    1111              : {
    1112            0 :     appendPQExpBuffer(buf,
    1113              :                       "ALTER SCHEMA %s RENAME TO %s\n"
    1114              :                       "ALTER SCHEMA %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }",
    1115              :                       _("name"),
    1116              :                       _("new_name"),
    1117              :                       _("name"),
    1118              :                       _("new_owner"));
    1119            0 : }
    1120              : 
    1121              : static void
    1122            0 : sql_help_ALTER_SEQUENCE(PQExpBuffer buf)
    1123              : {
    1124            0 :     appendPQExpBuffer(buf,
    1125              :                       "ALTER SEQUENCE [ IF EXISTS ] %s\n"
    1126              :                       "    [ AS %s ]\n"
    1127              :                       "    [ INCREMENT [ BY ] %s ]\n"
    1128              :                       "    [ MINVALUE %s | NO MINVALUE ] [ MAXVALUE %s | NO MAXVALUE ]\n"
    1129              :                       "    [ [ NO ] CYCLE ]\n"
    1130              :                       "    [ START [ WITH ] %s ]\n"
    1131              :                       "    [ RESTART [ [ WITH ] %s ] ]\n"
    1132              :                       "    [ CACHE %s ]\n"
    1133              :                       "    [ OWNED BY { %s.%s | NONE } ]\n"
    1134              :                       "ALTER SEQUENCE [ IF EXISTS ] %s SET { LOGGED | UNLOGGED }\n"
    1135              :                       "ALTER SEQUENCE [ IF EXISTS ] %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1136              :                       "ALTER SEQUENCE [ IF EXISTS ] %s RENAME TO %s\n"
    1137              :                       "ALTER SEQUENCE [ IF EXISTS ] %s SET SCHEMA %s",
    1138              :                       _("name"),
    1139              :                       _("data_type"),
    1140              :                       _("increment"),
    1141              :                       _("minvalue"),
    1142              :                       _("maxvalue"),
    1143              :                       _("start"),
    1144              :                       _("restart"),
    1145              :                       _("cache"),
    1146              :                       _("table_name"),
    1147              :                       _("column_name"),
    1148              :                       _("name"),
    1149              :                       _("name"),
    1150              :                       _("new_owner"),
    1151              :                       _("name"),
    1152              :                       _("new_name"),
    1153              :                       _("name"),
    1154              :                       _("new_schema"));
    1155            0 : }
    1156              : 
    1157              : static void
    1158            0 : sql_help_ALTER_SERVER(PQExpBuffer buf)
    1159              : {
    1160            0 :     appendPQExpBuffer(buf,
    1161              :                       "ALTER SERVER %s [ VERSION '%s' ]\n"
    1162              :                       "    [ OPTIONS ( [ ADD | SET | DROP ] %s ['%s'] [, ... ] ) ]\n"
    1163              :                       "ALTER SERVER %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1164              :                       "ALTER SERVER %s RENAME TO %s",
    1165              :                       _("name"),
    1166              :                       _("new_version"),
    1167              :                       _("option"),
    1168              :                       _("value"),
    1169              :                       _("name"),
    1170              :                       _("new_owner"),
    1171              :                       _("name"),
    1172              :                       _("new_name"));
    1173            0 : }
    1174              : 
    1175              : static void
    1176            0 : sql_help_ALTER_STATISTICS(PQExpBuffer buf)
    1177              : {
    1178            0 :     appendPQExpBuffer(buf,
    1179              :                       "ALTER STATISTICS %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1180              :                       "ALTER STATISTICS %s RENAME TO %s\n"
    1181              :                       "ALTER STATISTICS %s SET SCHEMA %s\n"
    1182              :                       "ALTER STATISTICS %s SET STATISTICS { %s | DEFAULT }",
    1183              :                       _("name"),
    1184              :                       _("new_owner"),
    1185              :                       _("name"),
    1186              :                       _("new_name"),
    1187              :                       _("name"),
    1188              :                       _("new_schema"),
    1189              :                       _("name"),
    1190              :                       _("new_target"));
    1191            0 : }
    1192              : 
    1193              : static void
    1194            0 : sql_help_ALTER_SUBSCRIPTION(PQExpBuffer buf)
    1195              : {
    1196            0 :     appendPQExpBuffer(buf,
    1197              :                       "ALTER SUBSCRIPTION %s SERVER %s\n"
    1198              :                       "ALTER SUBSCRIPTION %s CONNECTION '%s'\n"
    1199              :                       "ALTER SUBSCRIPTION %s SET PUBLICATION %s [, ...] [ WITH ( %s [= %s] [, ... ] ) ]\n"
    1200              :                       "ALTER SUBSCRIPTION %s ADD PUBLICATION %s [, ...] [ WITH ( %s [= %s] [, ... ] ) ]\n"
    1201              :                       "ALTER SUBSCRIPTION %s DROP PUBLICATION %s [, ...] [ WITH ( %s [= %s] [, ... ] ) ]\n"
    1202              :                       "ALTER SUBSCRIPTION %s REFRESH PUBLICATION [ WITH ( %s [= %s] [, ... ] ) ]\n"
    1203              :                       "ALTER SUBSCRIPTION %s REFRESH SEQUENCES\n"
    1204              :                       "ALTER SUBSCRIPTION %s ENABLE\n"
    1205              :                       "ALTER SUBSCRIPTION %s DISABLE\n"
    1206              :                       "ALTER SUBSCRIPTION %s SET ( %s [= %s] [, ... ] )\n"
    1207              :                       "ALTER SUBSCRIPTION %s SKIP ( %s = %s )\n"
    1208              :                       "ALTER SUBSCRIPTION %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1209              :                       "ALTER SUBSCRIPTION %s RENAME TO %s",
    1210              :                       _("name"),
    1211              :                       _("server_name"),
    1212              :                       _("name"),
    1213              :                       _("conninfo"),
    1214              :                       _("name"),
    1215              :                       _("publication_name"),
    1216              :                       _("publication_option"),
    1217              :                       _("value"),
    1218              :                       _("name"),
    1219              :                       _("publication_name"),
    1220              :                       _("publication_option"),
    1221              :                       _("value"),
    1222              :                       _("name"),
    1223              :                       _("publication_name"),
    1224              :                       _("publication_option"),
    1225              :                       _("value"),
    1226              :                       _("name"),
    1227              :                       _("refresh_option"),
    1228              :                       _("value"),
    1229              :                       _("name"),
    1230              :                       _("name"),
    1231              :                       _("name"),
    1232              :                       _("name"),
    1233              :                       _("subscription_parameter"),
    1234              :                       _("value"),
    1235              :                       _("name"),
    1236              :                       _("skip_option"),
    1237              :                       _("value"),
    1238              :                       _("name"),
    1239              :                       _("new_owner"),
    1240              :                       _("name"),
    1241              :                       _("new_name"));
    1242            0 : }
    1243              : 
    1244              : static void
    1245            0 : sql_help_ALTER_SYSTEM(PQExpBuffer buf)
    1246              : {
    1247            0 :     appendPQExpBuffer(buf,
    1248              :                       "ALTER SYSTEM SET %s { TO | = } { %s [, ...] | DEFAULT }\n"
    1249              :                       "\n"
    1250              :                       "ALTER SYSTEM RESET %s\n"
    1251              :                       "ALTER SYSTEM RESET ALL",
    1252              :                       _("configuration_parameter"),
    1253              :                       _("value"),
    1254              :                       _("configuration_parameter"));
    1255            0 : }
    1256              : 
    1257              : static void
    1258            0 : sql_help_ALTER_TABLE(PQExpBuffer buf)
    1259              : {
    1260            0 :     appendPQExpBuffer(buf,
    1261              :                       "ALTER TABLE [ IF EXISTS ] [ ONLY ] %s [ * ]\n"
    1262              :                       "    %s [, ... ]\n"
    1263              :                       "ALTER TABLE [ IF EXISTS ] [ ONLY ] %s [ * ]\n"
    1264              :                       "    RENAME [ COLUMN ] %s TO %s\n"
    1265              :                       "ALTER TABLE [ IF EXISTS ] [ ONLY ] %s [ * ]\n"
    1266              :                       "    RENAME CONSTRAINT %s TO %s\n"
    1267              :                       "ALTER TABLE [ IF EXISTS ] %s\n"
    1268              :                       "    RENAME TO %s\n"
    1269              :                       "ALTER TABLE [ IF EXISTS ] %s\n"
    1270              :                       "    SET SCHEMA %s\n"
    1271              :                       "ALTER TABLE ALL IN TABLESPACE %s [ OWNED BY %s [, ... ] ]\n"
    1272              :                       "    SET TABLESPACE %s [ NOWAIT ]\n"
    1273              :                       "ALTER TABLE [ IF EXISTS ] %s\n"
    1274              :                       "    ATTACH PARTITION %s { FOR VALUES %s | DEFAULT }\n"
    1275              :                       "ALTER TABLE [ IF EXISTS ] %s\n"
    1276              :                       "    DETACH PARTITION %s [ CONCURRENTLY | FINALIZE ]\n"
    1277              :                       "\n"
    1278              :                       "%s\n"
    1279              :                       "\n"
    1280              :                       "    ADD [ COLUMN ] [ IF NOT EXISTS ] %s %s [ COLLATE %s ] [ %s [ ... ] ]\n"
    1281              :                       "    DROP [ COLUMN ] [ IF EXISTS ] %s [ RESTRICT | CASCADE ]\n"
    1282              :                       "    ALTER [ COLUMN ] %s [ SET DATA ] TYPE %s [ COLLATE %s ] [ USING %s ]\n"
    1283              :                       "    ALTER [ COLUMN ] %s SET DEFAULT %s\n"
    1284              :                       "    ALTER [ COLUMN ] %s DROP DEFAULT\n"
    1285              :                       "    ALTER [ COLUMN ] %s { SET | DROP } NOT NULL\n"
    1286              :                       "    ALTER [ COLUMN ] %s SET EXPRESSION AS ( %s )\n"
    1287              :                       "    ALTER [ COLUMN ] %s DROP EXPRESSION [ IF EXISTS ]\n"
    1288              :                       "    ALTER [ COLUMN ] %s ADD GENERATED { ALWAYS | BY DEFAULT } AS IDENTITY [ ( %s ) ]\n"
    1289              :                       "    ALTER [ COLUMN ] %s { SET GENERATED { ALWAYS | BY DEFAULT } | SET %s | RESTART [ [ WITH ] %s ] } [...]\n"
    1290              :                       "    ALTER [ COLUMN ] %s DROP IDENTITY [ IF EXISTS ]\n"
    1291              :                       "    ALTER [ COLUMN ] %s SET STATISTICS { %s | DEFAULT }\n"
    1292              :                       "    ALTER [ COLUMN ] %s SET ( %s = %s [, ... ] )\n"
    1293              :                       "    ALTER [ COLUMN ] %s RESET ( %s [, ... ] )\n"
    1294              :                       "    ALTER [ COLUMN ] %s SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT }\n"
    1295              :                       "    ALTER [ COLUMN ] %s SET COMPRESSION %s\n"
    1296              :                       "    ADD %s [ NOT VALID ]\n"
    1297              :                       "    ADD %s\n"
    1298              :                       "    ALTER CONSTRAINT %s [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ] [ ENFORCED | NOT ENFORCED ]\n"
    1299              :                       "    ALTER CONSTRAINT %s [ INHERIT | NO INHERIT ]\n"
    1300              :                       "    VALIDATE CONSTRAINT %s\n"
    1301              :                       "    DROP CONSTRAINT [ IF EXISTS ]  %s [ RESTRICT | CASCADE ]\n"
    1302              :                       "    DISABLE TRIGGER [ %s | ALL | USER ]\n"
    1303              :                       "    ENABLE TRIGGER [ %s | ALL | USER ]\n"
    1304              :                       "    ENABLE REPLICA TRIGGER %s\n"
    1305              :                       "    ENABLE ALWAYS TRIGGER %s\n"
    1306              :                       "    DISABLE RULE %s\n"
    1307              :                       "    ENABLE RULE %s\n"
    1308              :                       "    ENABLE REPLICA RULE %s\n"
    1309              :                       "    ENABLE ALWAYS RULE %s\n"
    1310              :                       "    DISABLE ROW LEVEL SECURITY\n"
    1311              :                       "    ENABLE ROW LEVEL SECURITY\n"
    1312              :                       "    FORCE ROW LEVEL SECURITY\n"
    1313              :                       "    NO FORCE ROW LEVEL SECURITY\n"
    1314              :                       "    CLUSTER ON %s\n"
    1315              :                       "    SET WITHOUT CLUSTER\n"
    1316              :                       "    SET WITHOUT OIDS\n"
    1317              :                       "    SET ACCESS METHOD { %s | DEFAULT }\n"
    1318              :                       "    SET TABLESPACE %s\n"
    1319              :                       "    SET { LOGGED | UNLOGGED }\n"
    1320              :                       "    SET ( %s [= %s] [, ... ] )\n"
    1321              :                       "    RESET ( %s [, ... ] )\n"
    1322              :                       "    INHERIT %s\n"
    1323              :                       "    NO INHERIT %s\n"
    1324              :                       "    OF %s\n"
    1325              :                       "    NOT OF\n"
    1326              :                       "    OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1327              :                       "    REPLICA IDENTITY { DEFAULT | USING INDEX %s | FULL | NOTHING }\n"
    1328              :                       "\n"
    1329              :                       "%s\n"
    1330              :                       "\n"
    1331              :                       "IN ( %s [, ...] ) |\n"
    1332              :                       "FROM ( { %s | MINVALUE | MAXVALUE } [, ...] )\n"
    1333              :                       "  TO ( { %s | MINVALUE | MAXVALUE } [, ...] ) |\n"
    1334              :                       "WITH ( MODULUS %s, REMAINDER %s )\n"
    1335              :                       "\n"
    1336              :                       "%s\n"
    1337              :                       "\n"
    1338              :                       "[ CONSTRAINT %s ]\n"
    1339              :                       "{ NOT NULL [ NO INHERIT ] |\n"
    1340              :                       "  NULL |\n"
    1341              :                       "  CHECK ( %s ) [ NO INHERIT ] |\n"
    1342              :                       "  DEFAULT %s |\n"
    1343              :                       "  GENERATED ALWAYS AS ( %s ) [ STORED | VIRTUAL ] |\n"
    1344              :                       "  GENERATED { ALWAYS | BY DEFAULT } AS IDENTITY [ ( %s ) ] |\n"
    1345              :                       "  UNIQUE [ NULLS [ NOT ] DISTINCT ] %s |\n"
    1346              :                       "  PRIMARY KEY %s |\n"
    1347              :                       "  REFERENCES %s [ ( %s ) ] [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]\n"
    1348              :                       "    [ ON DELETE %s ] [ ON UPDATE %s ] }\n"
    1349              :                       "[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ] [ ENFORCED | NOT ENFORCED ]\n"
    1350              :                       "\n"
    1351              :                       "%s\n"
    1352              :                       "\n"
    1353              :                       "[ CONSTRAINT %s ]\n"
    1354              :                       "{ CHECK ( %s ) [ NO INHERIT ] |\n"
    1355              :                       "  NOT NULL %s [ NO INHERIT ] |\n"
    1356              :                       "  UNIQUE [ NULLS [ NOT ] DISTINCT ] ( %s [, ... ] [, %s WITHOUT OVERLAPS ] ) %s |\n"
    1357              :                       "  PRIMARY KEY ( %s [, ... ] [, %s WITHOUT OVERLAPS ] ) %s |\n"
    1358              :                       "  EXCLUDE [ USING %s ] ( %s WITH %s [, ... ] ) %s [ WHERE ( %s ) ] |\n"
    1359              :                       "  FOREIGN KEY ( %s [, ... ] [, PERIOD %s ] ) REFERENCES %s [ ( %s [, ... ]  [, PERIOD %s ] ) ]\n"
    1360              :                       "    [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE %s ] [ ON UPDATE %s ] }\n"
    1361              :                       "[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ] [ ENFORCED | NOT ENFORCED ]\n"
    1362              :                       "\n"
    1363              :                       "%s\n"
    1364              :                       "\n"
    1365              :                       "    [ CONSTRAINT %s ]\n"
    1366              :                       "    { UNIQUE | PRIMARY KEY } USING INDEX %s\n"
    1367              :                       "    [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]\n"
    1368              :                       "\n"
    1369              :                       "%s\n"
    1370              :                       "\n"
    1371              :                       "[ INCLUDE ( %s [, ... ] ) ]\n"
    1372              :                       "[ WITH ( %s [= %s] [, ... ] ) ]\n"
    1373              :                       "[ USING INDEX TABLESPACE %s ]\n"
    1374              :                       "\n"
    1375              :                       "%s\n"
    1376              :                       "\n"
    1377              :                       "{ %s | ( %s ) } [ COLLATE %s ] [ %s [ ( %s = %s [, ... ] ) ] ] [ ASC | DESC ] [ NULLS { FIRST | LAST } ]\n"
    1378              :                       "\n"
    1379              :                       "%s\n"
    1380              :                       "\n"
    1381              :                       "{ NO ACTION | RESTRICT | CASCADE | SET NULL [ ( %s [, ... ] ) ] | SET DEFAULT [ ( %s [, ... ] ) ] }",
    1382              :                       _("name"),
    1383              :                       _("action"),
    1384              :                       _("name"),
    1385              :                       _("column_name"),
    1386              :                       _("new_column_name"),
    1387              :                       _("name"),
    1388              :                       _("constraint_name"),
    1389              :                       _("new_constraint_name"),
    1390              :                       _("name"),
    1391              :                       _("new_name"),
    1392              :                       _("name"),
    1393              :                       _("new_schema"),
    1394              :                       _("name"),
    1395              :                       _("role_name"),
    1396              :                       _("new_tablespace"),
    1397              :                       _("name"),
    1398              :                       _("partition_name"),
    1399              :                       _("partition_bound_spec"),
    1400              :                       _("name"),
    1401              :                       _("partition_name"),
    1402              :                       _("where action is one of:"),
    1403              :                       _("column_name"),
    1404              :                       _("data_type"),
    1405              :                       _("collation"),
    1406              :                       _("column_constraint"),
    1407              :                       _("column_name"),
    1408              :                       _("column_name"),
    1409              :                       _("data_type"),
    1410              :                       _("collation"),
    1411              :                       _("expression"),
    1412              :                       _("column_name"),
    1413              :                       _("expression"),
    1414              :                       _("column_name"),
    1415              :                       _("column_name"),
    1416              :                       _("column_name"),
    1417              :                       _("expression"),
    1418              :                       _("column_name"),
    1419              :                       _("column_name"),
    1420              :                       _("sequence_options"),
    1421              :                       _("column_name"),
    1422              :                       _("sequence_option"),
    1423              :                       _("restart"),
    1424              :                       _("column_name"),
    1425              :                       _("column_name"),
    1426              :                       _("integer"),
    1427              :                       _("column_name"),
    1428              :                       _("attribute_option"),
    1429              :                       _("value"),
    1430              :                       _("column_name"),
    1431              :                       _("attribute_option"),
    1432              :                       _("column_name"),
    1433              :                       _("column_name"),
    1434              :                       _("compression_method"),
    1435              :                       _("table_constraint"),
    1436              :                       _("table_constraint_using_index"),
    1437              :                       _("constraint_name"),
    1438              :                       _("constraint_name"),
    1439              :                       _("constraint_name"),
    1440              :                       _("constraint_name"),
    1441              :                       _("trigger_name"),
    1442              :                       _("trigger_name"),
    1443              :                       _("trigger_name"),
    1444              :                       _("trigger_name"),
    1445              :                       _("rewrite_rule_name"),
    1446              :                       _("rewrite_rule_name"),
    1447              :                       _("rewrite_rule_name"),
    1448              :                       _("rewrite_rule_name"),
    1449              :                       _("index_name"),
    1450              :                       _("new_access_method"),
    1451              :                       _("new_tablespace"),
    1452              :                       _("storage_parameter"),
    1453              :                       _("value"),
    1454              :                       _("storage_parameter"),
    1455              :                       _("parent_table"),
    1456              :                       _("parent_table"),
    1457              :                       _("type_name"),
    1458              :                       _("new_owner"),
    1459              :                       _("index_name"),
    1460              :                       _("and partition_bound_spec is:"),
    1461              :                       _("partition_bound_expr"),
    1462              :                       _("partition_bound_expr"),
    1463              :                       _("partition_bound_expr"),
    1464              :                       _("numeric_literal"),
    1465              :                       _("numeric_literal"),
    1466              :                       _("and column_constraint is:"),
    1467              :                       _("constraint_name"),
    1468              :                       _("expression"),
    1469              :                       _("default_expr"),
    1470              :                       _("generation_expr"),
    1471              :                       _("sequence_options"),
    1472              :                       _("index_parameters"),
    1473              :                       _("index_parameters"),
    1474              :                       _("reftable"),
    1475              :                       _("refcolumn"),
    1476              :                       _("referential_action"),
    1477              :                       _("referential_action"),
    1478              :                       _("and table_constraint is:"),
    1479              :                       _("constraint_name"),
    1480              :                       _("expression"),
    1481              :                       _("column_name"),
    1482              :                       _("column_name"),
    1483              :                       _("column_name"),
    1484              :                       _("index_parameters"),
    1485              :                       _("column_name"),
    1486              :                       _("column_name"),
    1487              :                       _("index_parameters"),
    1488              :                       _("index_method"),
    1489              :                       _("exclude_element"),
    1490              :                       _("operator"),
    1491              :                       _("index_parameters"),
    1492              :                       _("predicate"),
    1493              :                       _("column_name"),
    1494              :                       _("column_name"),
    1495              :                       _("reftable"),
    1496              :                       _("refcolumn"),
    1497              :                       _("refcolumn"),
    1498              :                       _("referential_action"),
    1499              :                       _("referential_action"),
    1500              :                       _("and table_constraint_using_index is:"),
    1501              :                       _("constraint_name"),
    1502              :                       _("index_name"),
    1503              :                       _("index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:"),
    1504              :                       _("column_name"),
    1505              :                       _("storage_parameter"),
    1506              :                       _("value"),
    1507              :                       _("tablespace_name"),
    1508              :                       _("exclude_element in an EXCLUDE constraint is:"),
    1509              :                       _("column_name"),
    1510              :                       _("expression"),
    1511              :                       _("collation"),
    1512              :                       _("opclass"),
    1513              :                       _("opclass_parameter"),
    1514              :                       _("value"),
    1515              :                       _("referential_action in a FOREIGN KEY/REFERENCES constraint is:"),
    1516              :                       _("column_name"),
    1517              :                       _("column_name"));
    1518            0 : }
    1519              : 
    1520              : static void
    1521            0 : sql_help_ALTER_TABLESPACE(PQExpBuffer buf)
    1522              : {
    1523            0 :     appendPQExpBuffer(buf,
    1524              :                       "ALTER TABLESPACE %s RENAME TO %s\n"
    1525              :                       "ALTER TABLESPACE %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1526              :                       "ALTER TABLESPACE %s SET ( %s = %s [, ... ] )\n"
    1527              :                       "ALTER TABLESPACE %s RESET ( %s [, ... ] )",
    1528              :                       _("name"),
    1529              :                       _("new_name"),
    1530              :                       _("name"),
    1531              :                       _("new_owner"),
    1532              :                       _("name"),
    1533              :                       _("tablespace_option"),
    1534              :                       _("value"),
    1535              :                       _("name"),
    1536              :                       _("tablespace_option"));
    1537            0 : }
    1538              : 
    1539              : static void
    1540            0 : sql_help_ALTER_TEXT_SEARCH_CONFIGURATION(PQExpBuffer buf)
    1541              : {
    1542            0 :     appendPQExpBuffer(buf,
    1543              :                       "ALTER TEXT SEARCH CONFIGURATION %s\n"
    1544              :                       "    ADD MAPPING FOR %s [, ... ] WITH %s [, ... ]\n"
    1545              :                       "ALTER TEXT SEARCH CONFIGURATION %s\n"
    1546              :                       "    ALTER MAPPING FOR %s [, ... ] WITH %s [, ... ]\n"
    1547              :                       "ALTER TEXT SEARCH CONFIGURATION %s\n"
    1548              :                       "    ALTER MAPPING REPLACE %s WITH %s\n"
    1549              :                       "ALTER TEXT SEARCH CONFIGURATION %s\n"
    1550              :                       "    ALTER MAPPING FOR %s [, ... ] REPLACE %s WITH %s\n"
    1551              :                       "ALTER TEXT SEARCH CONFIGURATION %s\n"
    1552              :                       "    DROP MAPPING [ IF EXISTS ] FOR %s [, ... ]\n"
    1553              :                       "ALTER TEXT SEARCH CONFIGURATION %s RENAME TO %s\n"
    1554              :                       "ALTER TEXT SEARCH CONFIGURATION %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1555              :                       "ALTER TEXT SEARCH CONFIGURATION %s SET SCHEMA %s",
    1556              :                       _("name"),
    1557              :                       _("token_type"),
    1558              :                       _("dictionary_name"),
    1559              :                       _("name"),
    1560              :                       _("token_type"),
    1561              :                       _("dictionary_name"),
    1562              :                       _("name"),
    1563              :                       _("old_dictionary"),
    1564              :                       _("new_dictionary"),
    1565              :                       _("name"),
    1566              :                       _("token_type"),
    1567              :                       _("old_dictionary"),
    1568              :                       _("new_dictionary"),
    1569              :                       _("name"),
    1570              :                       _("token_type"),
    1571              :                       _("name"),
    1572              :                       _("new_name"),
    1573              :                       _("name"),
    1574              :                       _("new_owner"),
    1575              :                       _("name"),
    1576              :                       _("new_schema"));
    1577            0 : }
    1578              : 
    1579              : static void
    1580            0 : sql_help_ALTER_TEXT_SEARCH_DICTIONARY(PQExpBuffer buf)
    1581              : {
    1582            0 :     appendPQExpBuffer(buf,
    1583              :                       "ALTER TEXT SEARCH DICTIONARY %s (\n"
    1584              :                       "    %s [ = %s ] [, ... ]\n"
    1585              :                       ")\n"
    1586              :                       "ALTER TEXT SEARCH DICTIONARY %s RENAME TO %s\n"
    1587              :                       "ALTER TEXT SEARCH DICTIONARY %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1588              :                       "ALTER TEXT SEARCH DICTIONARY %s SET SCHEMA %s",
    1589              :                       _("name"),
    1590              :                       _("option"),
    1591              :                       _("value"),
    1592              :                       _("name"),
    1593              :                       _("new_name"),
    1594              :                       _("name"),
    1595              :                       _("new_owner"),
    1596              :                       _("name"),
    1597              :                       _("new_schema"));
    1598            0 : }
    1599              : 
    1600              : static void
    1601            0 : sql_help_ALTER_TEXT_SEARCH_PARSER(PQExpBuffer buf)
    1602              : {
    1603            0 :     appendPQExpBuffer(buf,
    1604              :                       "ALTER TEXT SEARCH PARSER %s RENAME TO %s\n"
    1605              :                       "ALTER TEXT SEARCH PARSER %s SET SCHEMA %s",
    1606              :                       _("name"),
    1607              :                       _("new_name"),
    1608              :                       _("name"),
    1609              :                       _("new_schema"));
    1610            0 : }
    1611              : 
    1612              : static void
    1613            0 : sql_help_ALTER_TEXT_SEARCH_TEMPLATE(PQExpBuffer buf)
    1614              : {
    1615            0 :     appendPQExpBuffer(buf,
    1616              :                       "ALTER TEXT SEARCH TEMPLATE %s RENAME TO %s\n"
    1617              :                       "ALTER TEXT SEARCH TEMPLATE %s SET SCHEMA %s",
    1618              :                       _("name"),
    1619              :                       _("new_name"),
    1620              :                       _("name"),
    1621              :                       _("new_schema"));
    1622            0 : }
    1623              : 
    1624              : static void
    1625            0 : sql_help_ALTER_TRIGGER(PQExpBuffer buf)
    1626              : {
    1627            0 :     appendPQExpBuffer(buf,
    1628              :                       "ALTER TRIGGER %s ON %s RENAME TO %s\n"
    1629              :                       "ALTER TRIGGER %s ON %s [ NO ] DEPENDS ON EXTENSION %s",
    1630              :                       _("name"),
    1631              :                       _("table_name"),
    1632              :                       _("new_name"),
    1633              :                       _("name"),
    1634              :                       _("table_name"),
    1635              :                       _("extension_name"));
    1636            0 : }
    1637              : 
    1638              : static void
    1639            0 : sql_help_ALTER_TYPE(PQExpBuffer buf)
    1640              : {
    1641            0 :     appendPQExpBuffer(buf,
    1642              :                       "ALTER TYPE %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1643              :                       "ALTER TYPE %s RENAME TO %s\n"
    1644              :                       "ALTER TYPE %s SET SCHEMA %s\n"
    1645              :                       "ALTER TYPE %s RENAME ATTRIBUTE %s TO %s [ CASCADE | RESTRICT ]\n"
    1646              :                       "ALTER TYPE %s %s [, ... ]\n"
    1647              :                       "ALTER TYPE %s ADD VALUE [ IF NOT EXISTS ] %s [ { BEFORE | AFTER } %s ]\n"
    1648              :                       "ALTER TYPE %s RENAME VALUE %s TO %s\n"
    1649              :                       "ALTER TYPE %s SET ( %s = %s [, ... ] )\n"
    1650              :                       "\n"
    1651              :                       "%s\n"
    1652              :                       "\n"
    1653              :                       "    ADD ATTRIBUTE %s %s [ COLLATE %s ] [ CASCADE | RESTRICT ]\n"
    1654              :                       "    DROP ATTRIBUTE [ IF EXISTS ] %s [ CASCADE | RESTRICT ]\n"
    1655              :                       "    ALTER ATTRIBUTE %s [ SET DATA ] TYPE %s [ COLLATE %s ] [ CASCADE | RESTRICT ]",
    1656              :                       _("name"),
    1657              :                       _("new_owner"),
    1658              :                       _("name"),
    1659              :                       _("new_name"),
    1660              :                       _("name"),
    1661              :                       _("new_schema"),
    1662              :                       _("name"),
    1663              :                       _("attribute_name"),
    1664              :                       _("new_attribute_name"),
    1665              :                       _("name"),
    1666              :                       _("action"),
    1667              :                       _("name"),
    1668              :                       _("new_enum_value"),
    1669              :                       _("neighbor_enum_value"),
    1670              :                       _("name"),
    1671              :                       _("existing_enum_value"),
    1672              :                       _("new_enum_value"),
    1673              :                       _("name"),
    1674              :                       _("property"),
    1675              :                       _("value"),
    1676              :                       _("where action is one of:"),
    1677              :                       _("attribute_name"),
    1678              :                       _("data_type"),
    1679              :                       _("collation"),
    1680              :                       _("attribute_name"),
    1681              :                       _("attribute_name"),
    1682              :                       _("data_type"),
    1683              :                       _("collation"));
    1684            0 : }
    1685              : 
    1686              : static void
    1687            0 : sql_help_ALTER_USER(PQExpBuffer buf)
    1688              : {
    1689            0 :     appendPQExpBuffer(buf,
    1690              :                       "ALTER USER %s [ WITH ] %s [ ... ]\n"
    1691              :                       "\n"
    1692              :                       "%s\n"
    1693              :                       "\n"
    1694              :                       "      SUPERUSER | NOSUPERUSER\n"
    1695              :                       "    | CREATEDB | NOCREATEDB\n"
    1696              :                       "    | CREATEROLE | NOCREATEROLE\n"
    1697              :                       "    | INHERIT | NOINHERIT\n"
    1698              :                       "    | LOGIN | NOLOGIN\n"
    1699              :                       "    | REPLICATION | NOREPLICATION\n"
    1700              :                       "    | BYPASSRLS | NOBYPASSRLS\n"
    1701              :                       "    | CONNECTION LIMIT %s\n"
    1702              :                       "    | [ ENCRYPTED ] PASSWORD '%s' | PASSWORD NULL\n"
    1703              :                       "    | VALID UNTIL '%s'\n"
    1704              :                       "\n"
    1705              :                       "ALTER USER %s RENAME TO %s\n"
    1706              :                       "\n"
    1707              :                       "ALTER USER { %s | ALL } [ IN DATABASE %s ] SET %s { TO | = } { %s | DEFAULT }\n"
    1708              :                       "ALTER USER { %s | ALL } [ IN DATABASE %s ] SET %s FROM CURRENT\n"
    1709              :                       "ALTER USER { %s | ALL } [ IN DATABASE %s ] RESET %s\n"
    1710              :                       "ALTER USER { %s | ALL } [ IN DATABASE %s ] RESET ALL\n"
    1711              :                       "\n"
    1712              :                       "%s\n"
    1713              :                       "\n"
    1714              :                       "    %s\n"
    1715              :                       "  | CURRENT_ROLE\n"
    1716              :                       "  | CURRENT_USER\n"
    1717              :                       "  | SESSION_USER",
    1718              :                       _("role_specification"),
    1719              :                       _("option"),
    1720              :                       _("where option can be:"),
    1721              :                       _("connlimit"),
    1722              :                       _("password"),
    1723              :                       _("timestamp"),
    1724              :                       _("name"),
    1725              :                       _("new_name"),
    1726              :                       _("role_specification"),
    1727              :                       _("database_name"),
    1728              :                       _("configuration_parameter"),
    1729              :                       _("value"),
    1730              :                       _("role_specification"),
    1731              :                       _("database_name"),
    1732              :                       _("configuration_parameter"),
    1733              :                       _("role_specification"),
    1734              :                       _("database_name"),
    1735              :                       _("configuration_parameter"),
    1736              :                       _("role_specification"),
    1737              :                       _("database_name"),
    1738              :                       _("where role_specification can be:"),
    1739              :                       _("role_name"));
    1740            0 : }
    1741              : 
    1742              : static void
    1743            0 : sql_help_ALTER_USER_MAPPING(PQExpBuffer buf)
    1744              : {
    1745            0 :     appendPQExpBuffer(buf,
    1746              :                       "ALTER USER MAPPING FOR { %s | USER | CURRENT_ROLE | CURRENT_USER | SESSION_USER | PUBLIC }\n"
    1747              :                       "    SERVER %s\n"
    1748              :                       "    OPTIONS ( [ ADD | SET | DROP ] %s ['%s'] [, ... ] )",
    1749              :                       _("user_name"),
    1750              :                       _("server_name"),
    1751              :                       _("option"),
    1752              :                       _("value"));
    1753            0 : }
    1754              : 
    1755              : static void
    1756            0 : sql_help_ALTER_VIEW(PQExpBuffer buf)
    1757              : {
    1758            0 :     appendPQExpBuffer(buf,
    1759              :                       "ALTER VIEW [ IF EXISTS ] %s ALTER [ COLUMN ] %s SET DEFAULT %s\n"
    1760              :                       "ALTER VIEW [ IF EXISTS ] %s ALTER [ COLUMN ] %s DROP DEFAULT\n"
    1761              :                       "ALTER VIEW [ IF EXISTS ] %s OWNER TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }\n"
    1762              :                       "ALTER VIEW [ IF EXISTS ] %s RENAME [ COLUMN ] %s TO %s\n"
    1763              :                       "ALTER VIEW [ IF EXISTS ] %s RENAME TO %s\n"
    1764              :                       "ALTER VIEW [ IF EXISTS ] %s SET SCHEMA %s\n"
    1765              :                       "ALTER VIEW [ IF EXISTS ] %s SET ( %s [= %s] [, ... ] )\n"
    1766              :                       "ALTER VIEW [ IF EXISTS ] %s RESET ( %s [, ... ] )",
    1767              :                       _("name"),
    1768              :                       _("column_name"),
    1769              :                       _("expression"),
    1770              :                       _("name"),
    1771              :                       _("column_name"),
    1772              :                       _("name"),
    1773              :                       _("new_owner"),
    1774              :                       _("name"),
    1775              :                       _("column_name"),
    1776              :                       _("new_column_name"),
    1777              :                       _("name"),
    1778              :                       _("new_name"),
    1779              :                       _("name"),
    1780              :                       _("new_schema"),
    1781              :                       _("name"),
    1782              :                       _("view_option_name"),
    1783              :                       _("view_option_value"),
    1784              :                       _("name"),
    1785              :                       _("view_option_name"));
    1786            0 : }
    1787              : 
    1788              : static void
    1789            0 : sql_help_ANALYZE(PQExpBuffer buf)
    1790              : {
    1791            0 :     appendPQExpBuffer(buf,
    1792              :                       "ANALYZE [ ( %s [, ...] ) ] [ %s [, ...] ]\n"
    1793              :                       "\n"
    1794              :                       "%s\n"
    1795              :                       "\n"
    1796              :                       "    VERBOSE [ %s ]\n"
    1797              :                       "    SKIP_LOCKED [ %s ]\n"
    1798              :                       "    BUFFER_USAGE_LIMIT %s\n"
    1799              :                       "\n"
    1800              :                       "%s\n"
    1801              :                       "\n"
    1802              :                       "    [ ONLY ] %s [ * ] [ ( %s [, ...] ) ]",
    1803              :                       _("option"),
    1804              :                       _("table_and_columns"),
    1805              :                       _("where option can be one of:"),
    1806              :                       _("boolean"),
    1807              :                       _("boolean"),
    1808              :                       _("size"),
    1809              :                       _("and table_and_columns is:"),
    1810              :                       _("table_name"),
    1811              :                       _("column_name"));
    1812            0 : }
    1813              : 
    1814              : static void
    1815            0 : sql_help_BEGIN(PQExpBuffer buf)
    1816              : {
    1817            0 :     appendPQExpBuffer(buf,
    1818              :                       "BEGIN [ WORK | TRANSACTION ] [ %s [, ...] ]\n"
    1819              :                       "\n"
    1820              :                       "%s\n"
    1821              :                       "\n"
    1822              :                       "    ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }\n"
    1823              :                       "    READ WRITE | READ ONLY\n"
    1824              :                       "    [ NOT ] DEFERRABLE",
    1825              :                       _("transaction_mode"),
    1826              :                       _("where transaction_mode is one of:"));
    1827            0 : }
    1828              : 
    1829              : static void
    1830            0 : sql_help_CALL(PQExpBuffer buf)
    1831              : {
    1832            0 :     appendPQExpBuffer(buf,
    1833              :                       "CALL %s ( [ %s ] [, ...] )",
    1834              :                       _("name"),
    1835              :                       _("argument"));
    1836            0 : }
    1837              : 
    1838              : static void
    1839            0 : sql_help_CHECKPOINT(PQExpBuffer buf)
    1840              : {
    1841            0 :     appendPQExpBuffer(buf,
    1842              :                       "CHECKPOINT [ ( %s [, ...] ) ]\n"
    1843              :                       "\n"
    1844              :                       "%s\n"
    1845              :                       "\n"
    1846              :                       "    FLUSH_UNLOGGED [ %s ]\n"
    1847              :                       "    MODE { FAST | SPREAD }",
    1848              :                       _("option"),
    1849              :                       _("where option can be one of:"),
    1850              :                       _("boolean"));
    1851            0 : }
    1852              : 
    1853              : static void
    1854            0 : sql_help_CLOSE(PQExpBuffer buf)
    1855              : {
    1856            0 :     appendPQExpBuffer(buf,
    1857              :                       "CLOSE { %s | ALL }",
    1858              :                       _("name"));
    1859            0 : }
    1860              : 
    1861              : static void
    1862            0 : sql_help_CLUSTER(PQExpBuffer buf)
    1863              : {
    1864            0 :     appendPQExpBuffer(buf,
    1865              :                       "CLUSTER [ ( %s [, ...] ) ] [ %s [ USING %s ] ]\n"
    1866              :                       "\n"
    1867              :                       "%s\n"
    1868              :                       "\n"
    1869              :                       "    VERBOSE [ %s ]",
    1870              :                       _("option"),
    1871              :                       _("table_name"),
    1872              :                       _("index_name"),
    1873              :                       _("where option can be one of:"),
    1874              :                       _("boolean"));
    1875            0 : }
    1876              : 
    1877              : static void
    1878            0 : sql_help_COMMENT(PQExpBuffer buf)
    1879              : {
    1880            0 :     appendPQExpBuffer(buf,
    1881              :                       "COMMENT ON\n"
    1882              :                       "{\n"
    1883              :                       "  ACCESS METHOD %s |\n"
    1884              :                       "  AGGREGATE %s ( %s ) |\n"
    1885              :                       "  CAST (%s AS %s) |\n"
    1886              :                       "  COLLATION %s |\n"
    1887              :                       "  COLUMN %s.%s |\n"
    1888              :                       "  CONSTRAINT %s ON %s |\n"
    1889              :                       "  CONSTRAINT %s ON DOMAIN %s |\n"
    1890              :                       "  CONVERSION %s |\n"
    1891              :                       "  DATABASE %s |\n"
    1892              :                       "  DOMAIN %s |\n"
    1893              :                       "  EXTENSION %s |\n"
    1894              :                       "  EVENT TRIGGER %s |\n"
    1895              :                       "  FOREIGN DATA WRAPPER %s |\n"
    1896              :                       "  FOREIGN TABLE %s |\n"
    1897              :                       "  FUNCTION %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
    1898              :                       "  INDEX %s |\n"
    1899              :                       "  LARGE OBJECT %s |\n"
    1900              :                       "  MATERIALIZED VIEW %s |\n"
    1901              :                       "  OPERATOR %s (%s, %s) |\n"
    1902              :                       "  OPERATOR CLASS %s USING %s |\n"
    1903              :                       "  OPERATOR FAMILY %s USING %s |\n"
    1904              :                       "  POLICY %s ON %s |\n"
    1905              :                       "  [ PROCEDURAL ] LANGUAGE %s |\n"
    1906              :                       "  PROCEDURE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
    1907              :                       "  PUBLICATION %s |\n"
    1908              :                       "  ROLE %s |\n"
    1909              :                       "  ROUTINE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
    1910              :                       "  RULE %s ON %s |\n"
    1911              :                       "  SCHEMA %s |\n"
    1912              :                       "  SEQUENCE %s |\n"
    1913              :                       "  SERVER %s |\n"
    1914              :                       "  STATISTICS %s |\n"
    1915              :                       "  SUBSCRIPTION %s |\n"
    1916              :                       "  TABLE %s |\n"
    1917              :                       "  TABLESPACE %s |\n"
    1918              :                       "  TEXT SEARCH CONFIGURATION %s |\n"
    1919              :                       "  TEXT SEARCH DICTIONARY %s |\n"
    1920              :                       "  TEXT SEARCH PARSER %s |\n"
    1921              :                       "  TEXT SEARCH TEMPLATE %s |\n"
    1922              :                       "  TRANSFORM FOR %s LANGUAGE %s |\n"
    1923              :                       "  TRIGGER %s ON %s |\n"
    1924              :                       "  TYPE %s |\n"
    1925              :                       "  VIEW %s\n"
    1926              :                       "} IS { %s | NULL }\n"
    1927              :                       "\n"
    1928              :                       "%s\n"
    1929              :                       "\n"
    1930              :                       "* |\n"
    1931              :                       "[ %s ] [ %s ] %s [ , ... ] |\n"
    1932              :                       "[ [ %s ] [ %s ] %s [ , ... ] ] ORDER BY [ %s ] [ %s ] %s [ , ... ]",
    1933              :                       _("object_name"),
    1934              :                       _("aggregate_name"),
    1935              :                       _("aggregate_signature"),
    1936              :                       _("source_type"),
    1937              :                       _("target_type"),
    1938              :                       _("object_name"),
    1939              :                       _("relation_name"),
    1940              :                       _("column_name"),
    1941              :                       _("constraint_name"),
    1942              :                       _("table_name"),
    1943              :                       _("constraint_name"),
    1944              :                       _("domain_name"),
    1945              :                       _("object_name"),
    1946              :                       _("object_name"),
    1947              :                       _("object_name"),
    1948              :                       _("object_name"),
    1949              :                       _("object_name"),
    1950              :                       _("object_name"),
    1951              :                       _("object_name"),
    1952              :                       _("function_name"),
    1953              :                       _("argmode"),
    1954              :                       _("argname"),
    1955              :                       _("argtype"),
    1956              :                       _("object_name"),
    1957              :                       _("large_object_oid"),
    1958              :                       _("object_name"),
    1959              :                       _("operator_name"),
    1960              :                       _("left_type"),
    1961              :                       _("right_type"),
    1962              :                       _("object_name"),
    1963              :                       _("index_method"),
    1964              :                       _("object_name"),
    1965              :                       _("index_method"),
    1966              :                       _("policy_name"),
    1967              :                       _("table_name"),
    1968              :                       _("object_name"),
    1969              :                       _("procedure_name"),
    1970              :                       _("argmode"),
    1971              :                       _("argname"),
    1972              :                       _("argtype"),
    1973              :                       _("object_name"),
    1974              :                       _("object_name"),
    1975              :                       _("routine_name"),
    1976              :                       _("argmode"),
    1977              :                       _("argname"),
    1978              :                       _("argtype"),
    1979              :                       _("rule_name"),
    1980              :                       _("table_name"),
    1981              :                       _("object_name"),
    1982              :                       _("object_name"),
    1983              :                       _("object_name"),
    1984              :                       _("object_name"),
    1985              :                       _("object_name"),
    1986              :                       _("object_name"),
    1987              :                       _("object_name"),
    1988              :                       _("object_name"),
    1989              :                       _("object_name"),
    1990              :                       _("object_name"),
    1991              :                       _("object_name"),
    1992              :                       _("type_name"),
    1993              :                       _("lang_name"),
    1994              :                       _("trigger_name"),
    1995              :                       _("table_name"),
    1996              :                       _("object_name"),
    1997              :                       _("object_name"),
    1998              :                       _("string_literal"),
    1999              :                       _("where aggregate_signature is:"),
    2000              :                       _("argmode"),
    2001              :                       _("argname"),
    2002              :                       _("argtype"),
    2003              :                       _("argmode"),
    2004              :                       _("argname"),
    2005              :                       _("argtype"),
    2006              :                       _("argmode"),
    2007              :                       _("argname"),
    2008              :                       _("argtype"));
    2009            0 : }
    2010              : 
    2011              : static void
    2012            0 : sql_help_COMMIT(PQExpBuffer buf)
    2013              : {
    2014            0 :     appendPQExpBuffer(buf,
    2015              :                       "COMMIT [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ]");
    2016            0 : }
    2017              : 
    2018              : static void
    2019            0 : sql_help_COMMIT_PREPARED(PQExpBuffer buf)
    2020              : {
    2021            0 :     appendPQExpBuffer(buf,
    2022              :                       "COMMIT PREPARED %s",
    2023              :                       _("transaction_id"));
    2024            0 : }
    2025              : 
    2026              : static void
    2027            0 : sql_help_COPY(PQExpBuffer buf)
    2028              : {
    2029            0 :     appendPQExpBuffer(buf,
    2030              :                       "COPY %s [ ( %s [, ...] ) ]\n"
    2031              :                       "    FROM { '%s' | PROGRAM '%s' | STDIN }\n"
    2032              :                       "    [ [ WITH ] ( %s [, ...] ) ]\n"
    2033              :                       "    [ WHERE %s ]\n"
    2034              :                       "\n"
    2035              :                       "COPY { %s [ ( %s [, ...] ) ] | ( %s ) }\n"
    2036              :                       "    TO { '%s' | PROGRAM '%s' | STDOUT }\n"
    2037              :                       "    [ [ WITH ] ( %s [, ...] ) ]\n"
    2038              :                       "\n"
    2039              :                       "%s\n"
    2040              :                       "\n"
    2041              :                       "    FORMAT %s\n"
    2042              :                       "    FREEZE [ %s ]\n"
    2043              :                       "    DELIMITER '%s'\n"
    2044              :                       "    NULL '%s'\n"
    2045              :                       "    DEFAULT '%s'\n"
    2046              :                       "    HEADER [ %s | %s | MATCH ]\n"
    2047              :                       "    QUOTE '%s'\n"
    2048              :                       "    ESCAPE '%s'\n"
    2049              :                       "    FORCE_ARRAY [ %s ]\n"
    2050              :                       "    FORCE_QUOTE { ( %s [, ...] ) | * }\n"
    2051              :                       "    FORCE_NOT_NULL { ( %s [, ...] ) | * }\n"
    2052              :                       "    FORCE_NULL { ( %s [, ...] ) | * }\n"
    2053              :                       "    ON_ERROR %s\n"
    2054              :                       "    REJECT_LIMIT %s\n"
    2055              :                       "    ENCODING '%s'\n"
    2056              :                       "    LOG_VERBOSITY %s",
    2057              :                       _("table_name"),
    2058              :                       _("column_name"),
    2059              :                       _("filename"),
    2060              :                       _("command"),
    2061              :                       _("option"),
    2062              :                       _("condition"),
    2063              :                       _("table_name"),
    2064              :                       _("column_name"),
    2065              :                       _("query"),
    2066              :                       _("filename"),
    2067              :                       _("command"),
    2068              :                       _("option"),
    2069              :                       _("where option can be one of:"),
    2070              :                       _("format_name"),
    2071              :                       _("boolean"),
    2072              :                       _("delimiter_character"),
    2073              :                       _("null_string"),
    2074              :                       _("default_string"),
    2075              :                       _("boolean"),
    2076              :                       _("integer"),
    2077              :                       _("quote_character"),
    2078              :                       _("escape_character"),
    2079              :                       _("boolean"),
    2080              :                       _("column_name"),
    2081              :                       _("column_name"),
    2082              :                       _("column_name"),
    2083              :                       _("error_action"),
    2084              :                       _("maxerror"),
    2085              :                       _("encoding_name"),
    2086              :                       _("verbosity"));
    2087            0 : }
    2088              : 
    2089              : static void
    2090            0 : sql_help_CREATE_ACCESS_METHOD(PQExpBuffer buf)
    2091              : {
    2092            0 :     appendPQExpBuffer(buf,
    2093              :                       "CREATE ACCESS METHOD %s\n"
    2094              :                       "    TYPE %s\n"
    2095              :                       "    HANDLER %s",
    2096              :                       _("name"),
    2097              :                       _("access_method_type"),
    2098              :                       _("handler_function"));
    2099            0 : }
    2100              : 
    2101              : static void
    2102            0 : sql_help_CREATE_AGGREGATE(PQExpBuffer buf)
    2103              : {
    2104            0 :     appendPQExpBuffer(buf,
    2105              :                       "CREATE [ OR REPLACE ] AGGREGATE %s ( [ %s ] [ %s ] %s [ , ... ] ) (\n"
    2106              :                       "    SFUNC = %s,\n"
    2107              :                       "    STYPE = %s\n"
    2108              :                       "    [ , SSPACE = %s ]\n"
    2109              :                       "    [ , FINALFUNC = %s ]\n"
    2110              :                       "    [ , FINALFUNC_EXTRA ]\n"
    2111              :                       "    [ , FINALFUNC_MODIFY = { READ_ONLY | SHAREABLE | READ_WRITE } ]\n"
    2112              :                       "    [ , COMBINEFUNC = %s ]\n"
    2113              :                       "    [ , SERIALFUNC = %s ]\n"
    2114              :                       "    [ , DESERIALFUNC = %s ]\n"
    2115              :                       "    [ , INITCOND = %s ]\n"
    2116              :                       "    [ , MSFUNC = %s ]\n"
    2117              :                       "    [ , MINVFUNC = %s ]\n"
    2118              :                       "    [ , MSTYPE = %s ]\n"
    2119              :                       "    [ , MSSPACE = %s ]\n"
    2120              :                       "    [ , MFINALFUNC = %s ]\n"
    2121              :                       "    [ , MFINALFUNC_EXTRA ]\n"
    2122              :                       "    [ , MFINALFUNC_MODIFY = { READ_ONLY | SHAREABLE | READ_WRITE } ]\n"
    2123              :                       "    [ , MINITCOND = %s ]\n"
    2124              :                       "    [ , SORTOP = %s ]\n"
    2125              :                       "    [ , SUPPORT = %s ]\n"
    2126              :                       "    [ , PARALLEL = { SAFE | RESTRICTED | UNSAFE } ]\n"
    2127              :                       ")\n"
    2128              :                       "\n"
    2129              :                       "CREATE [ OR REPLACE ] AGGREGATE %s ( [ [ %s ] [ %s ] %s [ , ... ] ]\n"
    2130              :                       "                        ORDER BY [ %s ] [ %s ] %s [ , ... ] ) (\n"
    2131              :                       "    SFUNC = %s,\n"
    2132              :                       "    STYPE = %s\n"
    2133              :                       "    [ , SSPACE = %s ]\n"
    2134              :                       "    [ , FINALFUNC = %s ]\n"
    2135              :                       "    [ , FINALFUNC_EXTRA ]\n"
    2136              :                       "    [ , FINALFUNC_MODIFY = { READ_ONLY | SHAREABLE | READ_WRITE } ]\n"
    2137              :                       "    [ , INITCOND = %s ]\n"
    2138              :                       "    [ , SUPPORT = %s ]\n"
    2139              :                       "    [ , PARALLEL = { SAFE | RESTRICTED | UNSAFE } ]\n"
    2140              :                       "    [ , HYPOTHETICAL ]\n"
    2141              :                       ")\n"
    2142              :                       "\n"
    2143              :                       "%s\n"
    2144              :                       "\n"
    2145              :                       "CREATE [ OR REPLACE ] AGGREGATE %s (\n"
    2146              :                       "    BASETYPE = %s,\n"
    2147              :                       "    SFUNC = %s,\n"
    2148              :                       "    STYPE = %s\n"
    2149              :                       "    [ , SSPACE = %s ]\n"
    2150              :                       "    [ , FINALFUNC = %s ]\n"
    2151              :                       "    [ , FINALFUNC_EXTRA ]\n"
    2152              :                       "    [ , FINALFUNC_MODIFY = { READ_ONLY | SHAREABLE | READ_WRITE } ]\n"
    2153              :                       "    [ , COMBINEFUNC = %s ]\n"
    2154              :                       "    [ , SERIALFUNC = %s ]\n"
    2155              :                       "    [ , DESERIALFUNC = %s ]\n"
    2156              :                       "    [ , INITCOND = %s ]\n"
    2157              :                       "    [ , MSFUNC = %s ]\n"
    2158              :                       "    [ , MINVFUNC = %s ]\n"
    2159              :                       "    [ , MSTYPE = %s ]\n"
    2160              :                       "    [ , MSSPACE = %s ]\n"
    2161              :                       "    [ , MFINALFUNC = %s ]\n"
    2162              :                       "    [ , MFINALFUNC_EXTRA ]\n"
    2163              :                       "    [ , MFINALFUNC_MODIFY = { READ_ONLY | SHAREABLE | READ_WRITE } ]\n"
    2164              :                       "    [ , MINITCOND = %s ]\n"
    2165              :                       "    [ , SORTOP = %s ]\n"
    2166              :                       "    [ , SUPPORT = %s ]\n"
    2167              :                       ")",
    2168              :                       _("name"),
    2169              :                       _("argmode"),
    2170              :                       _("argname"),
    2171              :                       _("arg_data_type"),
    2172              :                       _("sfunc"),
    2173              :                       _("state_data_type"),
    2174              :                       _("state_data_size"),
    2175              :                       _("ffunc"),
    2176              :                       _("combinefunc"),
    2177              :                       _("serialfunc"),
    2178              :                       _("deserialfunc"),
    2179              :                       _("initial_condition"),
    2180              :                       _("msfunc"),
    2181              :                       _("minvfunc"),
    2182              :                       _("mstate_data_type"),
    2183              :                       _("mstate_data_size"),
    2184              :                       _("mffunc"),
    2185              :                       _("minitial_condition"),
    2186              :                       _("sort_operator"),
    2187              :                       _("support_function"),
    2188              :                       _("name"),
    2189              :                       _("argmode"),
    2190              :                       _("argname"),
    2191              :                       _("arg_data_type"),
    2192              :                       _("argmode"),
    2193              :                       _("argname"),
    2194              :                       _("arg_data_type"),
    2195              :                       _("sfunc"),
    2196              :                       _("state_data_type"),
    2197              :                       _("state_data_size"),
    2198              :                       _("ffunc"),
    2199              :                       _("initial_condition"),
    2200              :                       _("support_function"),
    2201              :                       _("or the old syntax"),
    2202              :                       _("name"),
    2203              :                       _("base_type"),
    2204              :                       _("sfunc"),
    2205              :                       _("state_data_type"),
    2206              :                       _("state_data_size"),
    2207              :                       _("ffunc"),
    2208              :                       _("combinefunc"),
    2209              :                       _("serialfunc"),
    2210              :                       _("deserialfunc"),
    2211              :                       _("initial_condition"),
    2212              :                       _("msfunc"),
    2213              :                       _("minvfunc"),
    2214              :                       _("mstate_data_type"),
    2215              :                       _("mstate_data_size"),
    2216              :                       _("mffunc"),
    2217              :                       _("minitial_condition"),
    2218              :                       _("sort_operator"),
    2219              :                       _("support_function"));
    2220            0 : }
    2221              : 
    2222              : static void
    2223            0 : sql_help_CREATE_CAST(PQExpBuffer buf)
    2224              : {
    2225            0 :     appendPQExpBuffer(buf,
    2226              :                       "CREATE CAST (%s AS %s)\n"
    2227              :                       "    WITH FUNCTION %s [ (%s [, ...]) ]\n"
    2228              :                       "    [ AS ASSIGNMENT | AS IMPLICIT ]\n"
    2229              :                       "\n"
    2230              :                       "CREATE CAST (%s AS %s)\n"
    2231              :                       "    WITHOUT FUNCTION\n"
    2232              :                       "    [ AS ASSIGNMENT | AS IMPLICIT ]\n"
    2233              :                       "\n"
    2234              :                       "CREATE CAST (%s AS %s)\n"
    2235              :                       "    WITH INOUT\n"
    2236              :                       "    [ AS ASSIGNMENT | AS IMPLICIT ]",
    2237              :                       _("source_type"),
    2238              :                       _("target_type"),
    2239              :                       _("function_name"),
    2240              :                       _("argument_type"),
    2241              :                       _("source_type"),
    2242              :                       _("target_type"),
    2243              :                       _("source_type"),
    2244              :                       _("target_type"));
    2245            0 : }
    2246              : 
    2247              : static void
    2248            0 : sql_help_CREATE_COLLATION(PQExpBuffer buf)
    2249              : {
    2250            0 :     appendPQExpBuffer(buf,
    2251              :                       "CREATE COLLATION [ IF NOT EXISTS ] %s (\n"
    2252              :                       "    [ LOCALE = %s, ]\n"
    2253              :                       "    [ LC_COLLATE = %s, ]\n"
    2254              :                       "    [ LC_CTYPE = %s, ]\n"
    2255              :                       "    [ PROVIDER = %s, ]\n"
    2256              :                       "    [ DETERMINISTIC = %s, ]\n"
    2257              :                       "    [ RULES = %s, ]\n"
    2258              :                       "    [ VERSION = %s ]\n"
    2259              :                       ")\n"
    2260              :                       "CREATE COLLATION [ IF NOT EXISTS ] %s FROM %s",
    2261              :                       _("name"),
    2262              :                       _("locale"),
    2263              :                       _("lc_collate"),
    2264              :                       _("lc_ctype"),
    2265              :                       _("provider"),
    2266              :                       _("boolean"),
    2267              :                       _("rules"),
    2268              :                       _("version"),
    2269              :                       _("name"),
    2270              :                       _("existing_collation"));
    2271            0 : }
    2272              : 
    2273              : static void
    2274            0 : sql_help_CREATE_CONVERSION(PQExpBuffer buf)
    2275              : {
    2276            0 :     appendPQExpBuffer(buf,
    2277              :                       "CREATE [ DEFAULT ] CONVERSION %s\n"
    2278              :                       "    FOR %s TO %s FROM %s",
    2279              :                       _("name"),
    2280              :                       _("source_encoding"),
    2281              :                       _("dest_encoding"),
    2282              :                       _("function_name"));
    2283            0 : }
    2284              : 
    2285              : static void
    2286            0 : sql_help_CREATE_DATABASE(PQExpBuffer buf)
    2287              : {
    2288            0 :     appendPQExpBuffer(buf,
    2289              :                       "CREATE DATABASE %s\n"
    2290              :                       "    [ WITH ] [ OWNER [=] %s ]\n"
    2291              :                       "           [ TEMPLATE [=] %s ]\n"
    2292              :                       "           [ ENCODING [=] %s ]\n"
    2293              :                       "           [ STRATEGY [=] %s ]\n"
    2294              :                       "           [ LOCALE [=] %s ]\n"
    2295              :                       "           [ LC_COLLATE [=] %s ]\n"
    2296              :                       "           [ LC_CTYPE [=] %s ]\n"
    2297              :                       "           [ BUILTIN_LOCALE [=] %s ]\n"
    2298              :                       "           [ ICU_LOCALE [=] %s ]\n"
    2299              :                       "           [ ICU_RULES [=] %s ]\n"
    2300              :                       "           [ LOCALE_PROVIDER [=] %s ]\n"
    2301              :                       "           [ COLLATION_VERSION = %s ]\n"
    2302              :                       "           [ TABLESPACE [=] %s ]\n"
    2303              :                       "           [ ALLOW_CONNECTIONS [=] %s ]\n"
    2304              :                       "           [ CONNECTION LIMIT [=] %s ]\n"
    2305              :                       "           [ IS_TEMPLATE [=] %s ]\n"
    2306              :                       "           [ OID [=] %s ]",
    2307              :                       _("name"),
    2308              :                       _("user_name"),
    2309              :                       _("template"),
    2310              :                       _("encoding"),
    2311              :                       _("strategy"),
    2312              :                       _("locale"),
    2313              :                       _("lc_collate"),
    2314              :                       _("lc_ctype"),
    2315              :                       _("builtin_locale"),
    2316              :                       _("icu_locale"),
    2317              :                       _("icu_rules"),
    2318              :                       _("locale_provider"),
    2319              :                       _("collation_version"),
    2320              :                       _("tablespace_name"),
    2321              :                       _("allowconn"),
    2322              :                       _("connlimit"),
    2323              :                       _("istemplate"),
    2324              :                       _("oid"));
    2325            0 : }
    2326              : 
    2327              : static void
    2328            0 : sql_help_CREATE_DOMAIN(PQExpBuffer buf)
    2329              : {
    2330            0 :     appendPQExpBuffer(buf,
    2331              :                       "CREATE DOMAIN %s [ AS ] %s\n"
    2332              :                       "    [ COLLATE %s ]\n"
    2333              :                       "    [ DEFAULT %s ]\n"
    2334              :                       "    [ %s [ ... ] ]\n"
    2335              :                       "\n"
    2336              :                       "%s\n"
    2337              :                       "\n"
    2338              :                       "[ CONSTRAINT %s ]\n"
    2339              :                       "{ NOT NULL | NULL | CHECK (%s) }",
    2340              :                       _("name"),
    2341              :                       _("data_type"),
    2342              :                       _("collation"),
    2343              :                       _("expression"),
    2344              :                       _("domain_constraint"),
    2345              :                       _("where domain_constraint is:"),
    2346              :                       _("constraint_name"),
    2347              :                       _("expression"));
    2348            0 : }
    2349              : 
    2350              : static void
    2351            0 : sql_help_CREATE_EVENT_TRIGGER(PQExpBuffer buf)
    2352              : {
    2353            0 :     appendPQExpBuffer(buf,
    2354              :                       "CREATE EVENT TRIGGER %s\n"
    2355              :                       "    ON %s\n"
    2356              :                       "    [ WHEN %s IN (%s [, ... ]) [ AND ... ] ]\n"
    2357              :                       "    EXECUTE { FUNCTION | PROCEDURE } %s()",
    2358              :                       _("name"),
    2359              :                       _("event"),
    2360              :                       _("filter_variable"),
    2361              :                       _("filter_value"),
    2362              :                       _("function_name"));
    2363            0 : }
    2364              : 
    2365              : static void
    2366            0 : sql_help_CREATE_EXTENSION(PQExpBuffer buf)
    2367              : {
    2368            0 :     appendPQExpBuffer(buf,
    2369              :                       "CREATE EXTENSION [ IF NOT EXISTS ] %s\n"
    2370              :                       "    [ WITH ] [ SCHEMA %s ]\n"
    2371              :                       "             [ VERSION %s ]\n"
    2372              :                       "             [ CASCADE ]",
    2373              :                       _("extension_name"),
    2374              :                       _("schema_name"),
    2375              :                       _("version"));
    2376            0 : }
    2377              : 
    2378              : static void
    2379            0 : sql_help_CREATE_FOREIGN_DATA_WRAPPER(PQExpBuffer buf)
    2380              : {
    2381            0 :     appendPQExpBuffer(buf,
    2382              :                       "CREATE FOREIGN DATA WRAPPER %s\n"
    2383              :                       "    [ HANDLER %s | NO HANDLER ]\n"
    2384              :                       "    [ VALIDATOR %s | NO VALIDATOR ]\n"
    2385              :                       "    [ CONNECTION %s | NO CONNECTION ]\n"
    2386              :                       "    [ OPTIONS ( %s '%s' [, ... ] ) ]",
    2387              :                       _("name"),
    2388              :                       _("handler_function"),
    2389              :                       _("validator_function"),
    2390              :                       _("connection_function"),
    2391              :                       _("option"),
    2392              :                       _("value"));
    2393            0 : }
    2394              : 
    2395              : static void
    2396            0 : sql_help_CREATE_FOREIGN_TABLE(PQExpBuffer buf)
    2397              : {
    2398            0 :     appendPQExpBuffer(buf,
    2399              :                       "CREATE FOREIGN TABLE [ IF NOT EXISTS ] %s ( [\n"
    2400              :                       "  { %s %s [ OPTIONS ( %s '%s' [, ... ] ) ] [ COLLATE %s ] [ %s [ ... ] ]\n"
    2401              :                       "    | %s\n"
    2402              :                       "    | LIKE %s [ %s ... ] }\n"
    2403              :                       "    [, ... ]\n"
    2404              :                       "] )\n"
    2405              :                       "[ INHERITS ( %s [, ... ] ) ]\n"
    2406              :                       "  SERVER %s\n"
    2407              :                       "[ OPTIONS ( %s '%s' [, ... ] ) ]\n"
    2408              :                       "\n"
    2409              :                       "CREATE FOREIGN TABLE [ IF NOT EXISTS ] %s\n"
    2410              :                       "  PARTITION OF %s [ (\n"
    2411              :                       "  { %s [ WITH OPTIONS ] [ %s [ ... ] ]\n"
    2412              :                       "    | %s }\n"
    2413              :                       "    [, ... ]\n"
    2414              :                       ") ]\n"
    2415              :                       "{ FOR VALUES %s | DEFAULT }\n"
    2416              :                       "  SERVER %s\n"
    2417              :                       "[ OPTIONS ( %s '%s' [, ... ] ) ]\n"
    2418              :                       "\n"
    2419              :                       "%s\n"
    2420              :                       "\n"
    2421              :                       "[ CONSTRAINT %s ]\n"
    2422              :                       "{ NOT NULL [ NO INHERIT ] |\n"
    2423              :                       "  NULL |\n"
    2424              :                       "  CHECK ( %s ) [ NO INHERIT ] |\n"
    2425              :                       "  DEFAULT %s |\n"
    2426              :                       "  GENERATED ALWAYS AS ( %s ) [ STORED | VIRTUAL ] }\n"
    2427              :                       "[ ENFORCED | NOT ENFORCED ]\n"
    2428              :                       "\n"
    2429              :                       "%s\n"
    2430              :                       "\n"
    2431              :                       "[ CONSTRAINT %s ]\n"
    2432              :                       "{  NOT NULL %s [ NO INHERIT ] |\n"
    2433              :                       "   CHECK ( %s ) [ NO INHERIT ] }\n"
    2434              :                       "[ ENFORCED | NOT ENFORCED ]\n"
    2435              :                       "\n"
    2436              :                       "%s\n"
    2437              :                       "\n"
    2438              :                       "{ INCLUDING | EXCLUDING } { COMMENTS | CONSTRAINTS | DEFAULTS | GENERATED | STATISTICS | ALL }\n"
    2439              :                       "\n"
    2440              :                       "%s\n"
    2441              :                       "\n"
    2442              :                       "IN ( %s [, ...] ) |\n"
    2443              :                       "FROM ( { %s | MINVALUE | MAXVALUE } [, ...] )\n"
    2444              :                       "  TO ( { %s | MINVALUE | MAXVALUE } [, ...] ) |\n"
    2445              :                       "WITH ( MODULUS %s, REMAINDER %s )",
    2446              :                       _("table_name"),
    2447              :                       _("column_name"),
    2448              :                       _("data_type"),
    2449              :                       _("option"),
    2450              :                       _("value"),
    2451              :                       _("collation"),
    2452              :                       _("column_constraint"),
    2453              :                       _("table_constraint"),
    2454              :                       _("source_table"),
    2455              :                       _("like_option"),
    2456              :                       _("parent_table"),
    2457              :                       _("server_name"),
    2458              :                       _("option"),
    2459              :                       _("value"),
    2460              :                       _("table_name"),
    2461              :                       _("parent_table"),
    2462              :                       _("column_name"),
    2463              :                       _("column_constraint"),
    2464              :                       _("table_constraint"),
    2465              :                       _("partition_bound_spec"),
    2466              :                       _("server_name"),
    2467              :                       _("option"),
    2468              :                       _("value"),
    2469              :                       _("where column_constraint is:"),
    2470              :                       _("constraint_name"),
    2471              :                       _("expression"),
    2472              :                       _("default_expr"),
    2473              :                       _("generation_expr"),
    2474              :                       _("and table_constraint is:"),
    2475              :                       _("constraint_name"),
    2476              :                       _("column_name"),
    2477              :                       _("expression"),
    2478              :                       _("and like_option is:"),
    2479              :                       _("and partition_bound_spec is:"),
    2480              :                       _("partition_bound_expr"),
    2481              :                       _("partition_bound_expr"),
    2482              :                       _("partition_bound_expr"),
    2483              :                       _("numeric_literal"),
    2484              :                       _("numeric_literal"));
    2485            0 : }
    2486              : 
    2487              : static void
    2488            0 : sql_help_CREATE_FUNCTION(PQExpBuffer buf)
    2489              : {
    2490            0 :     appendPQExpBuffer(buf,
    2491              :                       "CREATE [ OR REPLACE ] FUNCTION\n"
    2492              :                       "    %s ( [ [ %s ] [ %s ] %s [ { DEFAULT | = } %s ] [, ...] ] )\n"
    2493              :                       "    [ RETURNS %s\n"
    2494              :                       "      | RETURNS TABLE ( %s %s [, ...] ) ]\n"
    2495              :                       "  { LANGUAGE %s\n"
    2496              :                       "    | TRANSFORM { FOR TYPE %s } [, ... ]\n"
    2497              :                       "    | WINDOW\n"
    2498              :                       "    | { IMMUTABLE | STABLE | VOLATILE }\n"
    2499              :                       "    | [ NOT ] LEAKPROOF\n"
    2500              :                       "    | { CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT }\n"
    2501              :                       "    | { [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER }\n"
    2502              :                       "    | PARALLEL { UNSAFE | RESTRICTED | SAFE }\n"
    2503              :                       "    | COST %s\n"
    2504              :                       "    | ROWS %s\n"
    2505              :                       "    | SUPPORT %s\n"
    2506              :                       "    | SET %s { TO %s | = %s | FROM CURRENT }\n"
    2507              :                       "    | AS '%s'\n"
    2508              :                       "    | AS '%s', '%s'\n"
    2509              :                       "    | %s\n"
    2510              :                       "  } ...",
    2511              :                       _("name"),
    2512              :                       _("argmode"),
    2513              :                       _("argname"),
    2514              :                       _("argtype"),
    2515              :                       _("default_expr"),
    2516              :                       _("rettype"),
    2517              :                       _("column_name"),
    2518              :                       _("column_type"),
    2519              :                       _("lang_name"),
    2520              :                       _("type_name"),
    2521              :                       _("execution_cost"),
    2522              :                       _("result_rows"),
    2523              :                       _("support_function"),
    2524              :                       _("configuration_parameter"),
    2525              :                       _("value"),
    2526              :                       _("value"),
    2527              :                       _("definition"),
    2528              :                       _("obj_file"),
    2529              :                       _("link_symbol"),
    2530              :                       _("sql_body"));
    2531            0 : }
    2532              : 
    2533              : static void
    2534            0 : sql_help_CREATE_GROUP(PQExpBuffer buf)
    2535              : {
    2536            0 :     appendPQExpBuffer(buf,
    2537              :                       "CREATE GROUP %s [ [ WITH ] %s [ ... ] ]\n"
    2538              :                       "\n"
    2539              :                       "%s\n"
    2540              :                       "\n"
    2541              :                       "      SUPERUSER | NOSUPERUSER\n"
    2542              :                       "    | CREATEDB | NOCREATEDB\n"
    2543              :                       "    | CREATEROLE | NOCREATEROLE\n"
    2544              :                       "    | INHERIT | NOINHERIT\n"
    2545              :                       "    | LOGIN | NOLOGIN\n"
    2546              :                       "    | REPLICATION | NOREPLICATION\n"
    2547              :                       "    | BYPASSRLS | NOBYPASSRLS\n"
    2548              :                       "    | CONNECTION LIMIT %s\n"
    2549              :                       "    | [ ENCRYPTED ] PASSWORD '%s' | PASSWORD NULL\n"
    2550              :                       "    | VALID UNTIL '%s'\n"
    2551              :                       "    | IN ROLE %s [, ...]\n"
    2552              :                       "    | ROLE %s [, ...]\n"
    2553              :                       "    | ADMIN %s [, ...]\n"
    2554              :                       "    | SYSID %s",
    2555              :                       _("name"),
    2556              :                       _("option"),
    2557              :                       _("where option can be:"),
    2558              :                       _("connlimit"),
    2559              :                       _("password"),
    2560              :                       _("timestamp"),
    2561              :                       _("role_name"),
    2562              :                       _("role_name"),
    2563              :                       _("role_name"),
    2564              :                       _("uid"));
    2565            0 : }
    2566              : 
    2567              : static void
    2568            0 : sql_help_CREATE_INDEX(PQExpBuffer buf)
    2569              : {
    2570            0 :     appendPQExpBuffer(buf,
    2571              :                       "CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] %s ] ON [ ONLY ] %s [ USING %s ]\n"
    2572              :                       "    ( { %s | ( %s ) } [ COLLATE %s ] [ %s [ ( %s = %s [, ... ] ) ] ] [ ASC | DESC ] [ NULLS { FIRST | LAST } ] [, ...] )\n"
    2573              :                       "    [ INCLUDE ( %s [, ...] ) ]\n"
    2574              :                       "    [ NULLS [ NOT ] DISTINCT ]\n"
    2575              :                       "    [ WITH ( %s [= %s] [, ... ] ) ]\n"
    2576              :                       "    [ TABLESPACE %s ]\n"
    2577              :                       "    [ WHERE %s ]",
    2578              :                       _("name"),
    2579              :                       _("table_name"),
    2580              :                       _("method"),
    2581              :                       _("column_name"),
    2582              :                       _("expression"),
    2583              :                       _("collation"),
    2584              :                       _("opclass"),
    2585              :                       _("opclass_parameter"),
    2586              :                       _("value"),
    2587              :                       _("column_name"),
    2588              :                       _("storage_parameter"),
    2589              :                       _("value"),
    2590              :                       _("tablespace_name"),
    2591              :                       _("predicate"));
    2592            0 : }
    2593              : 
    2594              : static void
    2595            0 : sql_help_CREATE_LANGUAGE(PQExpBuffer buf)
    2596              : {
    2597            0 :     appendPQExpBuffer(buf,
    2598              :                       "CREATE [ OR REPLACE ] [ TRUSTED ] [ PROCEDURAL ] LANGUAGE %s\n"
    2599              :                       "    HANDLER %s [ INLINE %s ] [ VALIDATOR %s ]\n"
    2600              :                       "CREATE [ OR REPLACE ] [ TRUSTED ] [ PROCEDURAL ] LANGUAGE %s",
    2601              :                       _("name"),
    2602              :                       _("call_handler"),
    2603              :                       _("inline_handler"),
    2604              :                       _("valfunction"),
    2605              :                       _("name"));
    2606            0 : }
    2607              : 
    2608              : static void
    2609            0 : sql_help_CREATE_MATERIALIZED_VIEW(PQExpBuffer buf)
    2610              : {
    2611            0 :     appendPQExpBuffer(buf,
    2612              :                       "CREATE MATERIALIZED VIEW [ IF NOT EXISTS ] %s\n"
    2613              :                       "    [ (%s [, ...] ) ]\n"
    2614              :                       "    [ USING %s ]\n"
    2615              :                       "    [ WITH ( %s [= %s] [, ... ] ) ]\n"
    2616              :                       "    [ TABLESPACE %s ]\n"
    2617              :                       "    AS %s\n"
    2618              :                       "    [ WITH [ NO ] DATA ]",
    2619              :                       _("table_name"),
    2620              :                       _("column_name"),
    2621              :                       _("method"),
    2622              :                       _("storage_parameter"),
    2623              :                       _("value"),
    2624              :                       _("tablespace_name"),
    2625              :                       _("query"));
    2626            0 : }
    2627              : 
    2628              : static void
    2629            0 : sql_help_CREATE_OPERATOR(PQExpBuffer buf)
    2630              : {
    2631            0 :     appendPQExpBuffer(buf,
    2632              :                       "CREATE OPERATOR %s (\n"
    2633              :                       "    {FUNCTION|PROCEDURE} = %s\n"
    2634              :                       "    [, LEFTARG = %s ] , RIGHTARG = %s\n"
    2635              :                       "    [, COMMUTATOR = %s ] [, NEGATOR = %s ]\n"
    2636              :                       "    [, RESTRICT = %s ] [, JOIN = %s ]\n"
    2637              :                       "    [, HASHES ] [, MERGES ]\n"
    2638              :                       ")",
    2639              :                       _("name"),
    2640              :                       _("function_name"),
    2641              :                       _("left_type"),
    2642              :                       _("right_type"),
    2643              :                       _("com_op"),
    2644              :                       _("neg_op"),
    2645              :                       _("res_proc"),
    2646              :                       _("join_proc"));
    2647            0 : }
    2648              : 
    2649              : static void
    2650            0 : sql_help_CREATE_OPERATOR_CLASS(PQExpBuffer buf)
    2651              : {
    2652            0 :     appendPQExpBuffer(buf,
    2653              :                       "CREATE OPERATOR CLASS %s [ DEFAULT ] FOR TYPE %s\n"
    2654              :                       "  USING %s [ FAMILY %s ] AS\n"
    2655              :                       "  {  OPERATOR %s %s [ ( %s, %s ) ] [ FOR SEARCH | FOR ORDER BY %s ]\n"
    2656              :                       "   | FUNCTION %s [ ( %s [ , %s ] ) ] %s ( %s [, ...] )\n"
    2657              :                       "   | STORAGE %s\n"
    2658              :                       "  } [, ... ]",
    2659              :                       _("name"),
    2660              :                       _("data_type"),
    2661              :                       _("index_method"),
    2662              :                       _("family_name"),
    2663              :                       _("strategy_number"),
    2664              :                       _("operator_name"),
    2665              :                       _("op_type"),
    2666              :                       _("op_type"),
    2667              :                       _("sort_family_name"),
    2668              :                       _("support_number"),
    2669              :                       _("op_type"),
    2670              :                       _("op_type"),
    2671              :                       _("function_name"),
    2672              :                       _("argument_type"),
    2673              :                       _("storage_type"));
    2674            0 : }
    2675              : 
    2676              : static void
    2677            0 : sql_help_CREATE_OPERATOR_FAMILY(PQExpBuffer buf)
    2678              : {
    2679            0 :     appendPQExpBuffer(buf,
    2680              :                       "CREATE OPERATOR FAMILY %s USING %s",
    2681              :                       _("name"),
    2682              :                       _("index_method"));
    2683            0 : }
    2684              : 
    2685              : static void
    2686            0 : sql_help_CREATE_POLICY(PQExpBuffer buf)
    2687              : {
    2688            0 :     appendPQExpBuffer(buf,
    2689              :                       "CREATE POLICY %s ON %s\n"
    2690              :                       "    [ AS { PERMISSIVE | RESTRICTIVE } ]\n"
    2691              :                       "    [ FOR { ALL | SELECT | INSERT | UPDATE | DELETE } ]\n"
    2692              :                       "    [ TO { %s | PUBLIC | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...] ]\n"
    2693              :                       "    [ USING ( %s ) ]\n"
    2694              :                       "    [ WITH CHECK ( %s ) ]",
    2695              :                       _("name"),
    2696              :                       _("table_name"),
    2697              :                       _("role_name"),
    2698              :                       _("using_expression"),
    2699              :                       _("check_expression"));
    2700            0 : }
    2701              : 
    2702              : static void
    2703            0 : sql_help_CREATE_PROCEDURE(PQExpBuffer buf)
    2704              : {
    2705            0 :     appendPQExpBuffer(buf,
    2706              :                       "CREATE [ OR REPLACE ] PROCEDURE\n"
    2707              :                       "    %s ( [ [ %s ] [ %s ] %s [ { DEFAULT | = } %s ] [, ...] ] )\n"
    2708              :                       "  { LANGUAGE %s\n"
    2709              :                       "    | TRANSFORM { FOR TYPE %s } [, ... ]\n"
    2710              :                       "    | [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER\n"
    2711              :                       "    | SET %s { TO %s | = %s | FROM CURRENT }\n"
    2712              :                       "    | AS '%s'\n"
    2713              :                       "    | AS '%s', '%s'\n"
    2714              :                       "    | %s\n"
    2715              :                       "  } ...",
    2716              :                       _("name"),
    2717              :                       _("argmode"),
    2718              :                       _("argname"),
    2719              :                       _("argtype"),
    2720              :                       _("default_expr"),
    2721              :                       _("lang_name"),
    2722              :                       _("type_name"),
    2723              :                       _("configuration_parameter"),
    2724              :                       _("value"),
    2725              :                       _("value"),
    2726              :                       _("definition"),
    2727              :                       _("obj_file"),
    2728              :                       _("link_symbol"),
    2729              :                       _("sql_body"));
    2730            0 : }
    2731              : 
    2732              : static void
    2733            0 : sql_help_CREATE_PUBLICATION(PQExpBuffer buf)
    2734              : {
    2735            0 :     appendPQExpBuffer(buf,
    2736              :                       "CREATE PUBLICATION %s\n"
    2737              :                       "    [ FOR { %s [, ... ] | %s [, ... ] } ]\n"
    2738              :                       "    [ WITH ( %s [= %s] [, ... ] ) ]\n"
    2739              :                       "\n"
    2740              :                       "%s\n"
    2741              :                       "\n"
    2742              :                       "    TABLE %s [, ... ]\n"
    2743              :                       "    TABLES IN SCHEMA { %s | CURRENT_SCHEMA } [, ... ]\n"
    2744              :                       "\n"
    2745              :                       "%s\n"
    2746              :                       "\n"
    2747              :                       "    ALL TABLES [ EXCEPT ( %s [, ... ] ) ]\n"
    2748              :                       "    ALL SEQUENCES\n"
    2749              :                       "\n"
    2750              :                       "%s\n"
    2751              :                       "\n"
    2752              :                       "    %s [ ( %s [, ... ] ) ] [ WHERE ( %s ) ]\n"
    2753              :                       "\n"
    2754              :                       "%s\n"
    2755              :                       "\n"
    2756              :                       "    TABLE %s [, ... ]\n"
    2757              :                       "\n"
    2758              :                       "%s\n"
    2759              :                       "\n"
    2760              :                       "   [ ONLY ] %s [ * ]",
    2761              :                       _("name"),
    2762              :                       _("publication_object"),
    2763              :                       _("publication_all_object"),
    2764              :                       _("publication_parameter"),
    2765              :                       _("value"),
    2766              :                       _("where publication_object is one of:"),
    2767              :                       _("table_and_columns"),
    2768              :                       _("schema_name"),
    2769              :                       _("and publication_all_object is one of:"),
    2770              :                       _("except_table_object"),
    2771              :                       _("and table_and_columns is:"),
    2772              :                       _("table_object"),
    2773              :                       _("column_name"),
    2774              :                       _("expression"),
    2775              :                       _("and except_table_object is:"),
    2776              :                       _("table_object"),
    2777              :                       _("and table_object is:"),
    2778              :                       _("table_name"));
    2779            0 : }
    2780              : 
    2781              : static void
    2782            0 : sql_help_CREATE_ROLE(PQExpBuffer buf)
    2783              : {
    2784            0 :     appendPQExpBuffer(buf,
    2785              :                       "CREATE ROLE %s [ [ WITH ] %s [ ... ] ]\n"
    2786              :                       "\n"
    2787              :                       "%s\n"
    2788              :                       "\n"
    2789              :                       "      SUPERUSER | NOSUPERUSER\n"
    2790              :                       "    | CREATEDB | NOCREATEDB\n"
    2791              :                       "    | CREATEROLE | NOCREATEROLE\n"
    2792              :                       "    | INHERIT | NOINHERIT\n"
    2793              :                       "    | LOGIN | NOLOGIN\n"
    2794              :                       "    | REPLICATION | NOREPLICATION\n"
    2795              :                       "    | BYPASSRLS | NOBYPASSRLS\n"
    2796              :                       "    | CONNECTION LIMIT %s\n"
    2797              :                       "    | [ ENCRYPTED ] PASSWORD '%s' | PASSWORD NULL\n"
    2798              :                       "    | VALID UNTIL '%s'\n"
    2799              :                       "    | IN ROLE %s [, ...]\n"
    2800              :                       "    | ROLE %s [, ...]\n"
    2801              :                       "    | ADMIN %s [, ...]\n"
    2802              :                       "    | SYSID %s",
    2803              :                       _("name"),
    2804              :                       _("option"),
    2805              :                       _("where option can be:"),
    2806              :                       _("connlimit"),
    2807              :                       _("password"),
    2808              :                       _("timestamp"),
    2809              :                       _("role_name"),
    2810              :                       _("role_name"),
    2811              :                       _("role_name"),
    2812              :                       _("uid"));
    2813            0 : }
    2814              : 
    2815              : static void
    2816            0 : sql_help_CREATE_RULE(PQExpBuffer buf)
    2817              : {
    2818            0 :     appendPQExpBuffer(buf,
    2819              :                       "CREATE [ OR REPLACE ] RULE %s AS ON %s\n"
    2820              :                       "    TO %s [ WHERE %s ]\n"
    2821              :                       "    DO [ ALSO | INSTEAD ] { NOTHING | %s | ( %s ; %s ... ) }\n"
    2822              :                       "\n"
    2823              :                       "%s\n"
    2824              :                       "\n"
    2825              :                       "    SELECT | INSERT | UPDATE | DELETE",
    2826              :                       _("name"),
    2827              :                       _("event"),
    2828              :                       _("table_name"),
    2829              :                       _("condition"),
    2830              :                       _("command"),
    2831              :                       _("command"),
    2832              :                       _("command"),
    2833              :                       _("where event can be one of:"));
    2834            0 : }
    2835              : 
    2836              : static void
    2837            0 : sql_help_CREATE_SCHEMA(PQExpBuffer buf)
    2838              : {
    2839            0 :     appendPQExpBuffer(buf,
    2840              :                       "CREATE SCHEMA %s [ AUTHORIZATION %s ] [ %s [ ... ] ]\n"
    2841              :                       "CREATE SCHEMA AUTHORIZATION %s [ %s [ ... ] ]\n"
    2842              :                       "CREATE SCHEMA IF NOT EXISTS %s [ AUTHORIZATION %s ]\n"
    2843              :                       "CREATE SCHEMA IF NOT EXISTS AUTHORIZATION %s\n"
    2844              :                       "\n"
    2845              :                       "%s\n"
    2846              :                       "\n"
    2847              :                       "    %s\n"
    2848              :                       "  | CURRENT_ROLE\n"
    2849              :                       "  | CURRENT_USER\n"
    2850              :                       "  | SESSION_USER",
    2851              :                       _("schema_name"),
    2852              :                       _("role_specification"),
    2853              :                       _("schema_element"),
    2854              :                       _("role_specification"),
    2855              :                       _("schema_element"),
    2856              :                       _("schema_name"),
    2857              :                       _("role_specification"),
    2858              :                       _("role_specification"),
    2859              :                       _("where role_specification can be:"),
    2860              :                       _("user_name"));
    2861            0 : }
    2862              : 
    2863              : static void
    2864            0 : sql_help_CREATE_SEQUENCE(PQExpBuffer buf)
    2865              : {
    2866            0 :     appendPQExpBuffer(buf,
    2867              :                       "CREATE [ { TEMPORARY | TEMP } | UNLOGGED ] SEQUENCE [ IF NOT EXISTS ] %s\n"
    2868              :                       "    [ AS %s ]\n"
    2869              :                       "    [ INCREMENT [ BY ] %s ]\n"
    2870              :                       "    [ MINVALUE %s | NO MINVALUE ] [ MAXVALUE %s | NO MAXVALUE ]\n"
    2871              :                       "    [ [ NO ] CYCLE ]\n"
    2872              :                       "    [ START [ WITH ] %s ]\n"
    2873              :                       "    [ CACHE %s ]\n"
    2874              :                       "    [ OWNED BY { %s.%s | NONE } ]",
    2875              :                       _("name"),
    2876              :                       _("data_type"),
    2877              :                       _("increment"),
    2878              :                       _("minvalue"),
    2879              :                       _("maxvalue"),
    2880              :                       _("start"),
    2881              :                       _("cache"),
    2882              :                       _("table_name"),
    2883              :                       _("column_name"));
    2884            0 : }
    2885              : 
    2886              : static void
    2887            0 : sql_help_CREATE_SERVER(PQExpBuffer buf)
    2888              : {
    2889            0 :     appendPQExpBuffer(buf,
    2890              :                       "CREATE SERVER [ IF NOT EXISTS ] %s [ TYPE '%s' ] [ VERSION '%s' ]\n"
    2891              :                       "    FOREIGN DATA WRAPPER %s\n"
    2892              :                       "    [ OPTIONS ( %s '%s' [, ... ] ) ]",
    2893              :                       _("server_name"),
    2894              :                       _("server_type"),
    2895              :                       _("server_version"),
    2896              :                       _("fdw_name"),
    2897              :                       _("option"),
    2898              :                       _("value"));
    2899            0 : }
    2900              : 
    2901              : static void
    2902            0 : sql_help_CREATE_STATISTICS(PQExpBuffer buf)
    2903              : {
    2904            0 :     appendPQExpBuffer(buf,
    2905              :                       "CREATE STATISTICS [ [ IF NOT EXISTS ] %s ]\n"
    2906              :                       "    ON { %s | ( %s ) }\n"
    2907              :                       "    FROM %s\n"
    2908              :                       "\n"
    2909              :                       "CREATE STATISTICS [ [ IF NOT EXISTS ] %s ]\n"
    2910              :                       "    [ ( %s [, ... ] ) ]\n"
    2911              :                       "    ON { %s | ( %s ) }, { %s | ( %s ) } [, ...]\n"
    2912              :                       "    FROM %s",
    2913              :                       _("statistics_name"),
    2914              :                       _("column_name"),
    2915              :                       _("expression"),
    2916              :                       _("table_name"),
    2917              :                       _("statistics_name"),
    2918              :                       _("statistics_kind"),
    2919              :                       _("column_name"),
    2920              :                       _("expression"),
    2921              :                       _("column_name"),
    2922              :                       _("expression"),
    2923              :                       _("table_name"));
    2924            0 : }
    2925              : 
    2926              : static void
    2927            0 : sql_help_CREATE_SUBSCRIPTION(PQExpBuffer buf)
    2928              : {
    2929            0 :     appendPQExpBuffer(buf,
    2930              :                       "CREATE SUBSCRIPTION %s\n"
    2931              :                       "    { SERVER %s | CONNECTION '%s' }\n"
    2932              :                       "    PUBLICATION %s [, ...]\n"
    2933              :                       "    [ WITH ( %s [= %s] [, ... ] ) ]",
    2934              :                       _("subscription_name"),
    2935              :                       _("server_name"),
    2936              :                       _("conninfo"),
    2937              :                       _("publication_name"),
    2938              :                       _("subscription_parameter"),
    2939              :                       _("value"));
    2940            0 : }
    2941              : 
    2942              : static void
    2943            0 : sql_help_CREATE_TABLE(PQExpBuffer buf)
    2944              : {
    2945            0 :     appendPQExpBuffer(buf,
    2946              :                       "CREATE [ %s ] TABLE [ IF NOT EXISTS ] %s ( [\n"
    2947              :                       "  { %s %s [ %s ] [ %s ] [ COLLATE %s ] [ %s [ ... ] ]\n"
    2948              :                       "    | %s\n"
    2949              :                       "    | LIKE %s [ %s ... ] }\n"
    2950              :                       "    [, ... ]\n"
    2951              :                       "] )\n"
    2952              :                       "[ INHERITS ( %s [, ... ] ) ]\n"
    2953              :                       "[ PARTITION BY { RANGE | LIST | HASH } ( { %s | ( %s ) } [ COLLATE %s ] [ %s ] [, ... ] ) ]\n"
    2954              :                       "[ USING %s ]\n"
    2955              :                       "[ WITH ( %s [= %s] [, ... ] ) | WITHOUT OIDS ]\n"
    2956              :                       "[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]\n"
    2957              :                       "[ TABLESPACE %s ]\n"
    2958              :                       "\n"
    2959              :                       "CREATE [ %s ] TABLE [ IF NOT EXISTS ] %s\n"
    2960              :                       "    OF %s [ (\n"
    2961              :                       "  { %s [ WITH OPTIONS ] [ %s [ ... ] ]\n"
    2962              :                       "    | %s }\n"
    2963              :                       "    [, ... ]\n"
    2964              :                       ") ]\n"
    2965              :                       "[ PARTITION BY { RANGE | LIST | HASH } ( { %s | ( %s ) } [ COLLATE %s ] [ %s ] [, ... ] ) ]\n"
    2966              :                       "[ USING %s ]\n"
    2967              :                       "[ WITH ( %s [= %s] [, ... ] ) | WITHOUT OIDS ]\n"
    2968              :                       "[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]\n"
    2969              :                       "[ TABLESPACE %s ]\n"
    2970              :                       "\n"
    2971              :                       "CREATE [ %s ] TABLE [ IF NOT EXISTS ] %s\n"
    2972              :                       "    PARTITION OF %s [ (\n"
    2973              :                       "  { %s [ WITH OPTIONS ] [ %s [ ... ] ]\n"
    2974              :                       "    | %s }\n"
    2975              :                       "    [, ... ]\n"
    2976              :                       ") ] { FOR VALUES %s | DEFAULT }\n"
    2977              :                       "[ PARTITION BY { RANGE | LIST | HASH } ( { %s | ( %s ) } [ COLLATE %s ] [ %s ] [, ... ] ) ]\n"
    2978              :                       "[ USING %s ]\n"
    2979              :                       "[ WITH ( %s [= %s] [, ... ] ) | WITHOUT OIDS ]\n"
    2980              :                       "[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]\n"
    2981              :                       "[ TABLESPACE %s ]\n"
    2982              :                       "\n"
    2983              :                       "%s\n"
    2984              :                       "\n"
    2985              :                       "{ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } } | UNLOGGED\n"
    2986              :                       "\n"
    2987              :                       "%s\n"
    2988              :                       "\n"
    2989              :                       "STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT }\n"
    2990              :                       "\n"
    2991              :                       "%s\n"
    2992              :                       "\n"
    2993              :                       "COMPRESSION %s\n"
    2994              :                       "\n"
    2995              :                       "%s\n"
    2996              :                       "\n"
    2997              :                       "[ CONSTRAINT %s ]\n"
    2998              :                       "{ NOT NULL [ NO INHERIT ]  |\n"
    2999              :                       "  NULL |\n"
    3000              :                       "  CHECK ( %s ) [ NO INHERIT ] |\n"
    3001              :                       "  DEFAULT %s |\n"
    3002              :                       "  GENERATED ALWAYS AS ( %s ) [ STORED | VIRTUAL ] |\n"
    3003              :                       "  GENERATED { ALWAYS | BY DEFAULT } AS IDENTITY [ ( %s ) ] |\n"
    3004              :                       "  UNIQUE [ NULLS [ NOT ] DISTINCT ] %s |\n"
    3005              :                       "  PRIMARY KEY %s |\n"
    3006              :                       "  REFERENCES %s [ ( %s ) ] [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]\n"
    3007              :                       "    [ ON DELETE %s ] [ ON UPDATE %s ] }\n"
    3008              :                       "[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ] [ ENFORCED | NOT ENFORCED ]\n"
    3009              :                       "\n"
    3010              :                       "%s\n"
    3011              :                       "\n"
    3012              :                       "[ CONSTRAINT %s ]\n"
    3013              :                       "{ CHECK ( %s ) [ NO INHERIT ] |\n"
    3014              :                       "  NOT NULL %s [ NO INHERIT ] |\n"
    3015              :                       "  UNIQUE [ NULLS [ NOT ] DISTINCT ] ( %s [, ... ] [, %s WITHOUT OVERLAPS ] ) %s |\n"
    3016              :                       "  PRIMARY KEY ( %s [, ... ] [, %s WITHOUT OVERLAPS ] ) %s |\n"
    3017              :                       "  EXCLUDE [ USING %s ] ( %s WITH %s [, ... ] ) %s [ WHERE ( %s ) ] |\n"
    3018              :                       "  FOREIGN KEY ( %s [, ... ] [, PERIOD %s ] ) REFERENCES %s [ ( %s [, ... ] [, PERIOD %s ] ) ]\n"
    3019              :                       "    [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE %s ] [ ON UPDATE %s ] }\n"
    3020              :                       "[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ] [ ENFORCED | NOT ENFORCED ]\n"
    3021              :                       "\n"
    3022              :                       "%s\n"
    3023              :                       "\n"
    3024              :                       "{ INCLUDING | EXCLUDING } { COMMENTS | COMPRESSION | CONSTRAINTS | DEFAULTS | GENERATED | IDENTITY | INDEXES | STATISTICS | STORAGE | ALL }\n"
    3025              :                       "\n"
    3026              :                       "%s\n"
    3027              :                       "\n"
    3028              :                       "IN ( %s [, ...] ) |\n"
    3029              :                       "FROM ( { %s | MINVALUE | MAXVALUE } [, ...] )\n"
    3030              :                       "  TO ( { %s | MINVALUE | MAXVALUE } [, ...] ) |\n"
    3031              :                       "WITH ( MODULUS %s, REMAINDER %s )\n"
    3032              :                       "\n"
    3033              :                       "%s\n"
    3034              :                       "\n"
    3035              :                       "[ INCLUDE ( %s [, ... ] ) ]\n"
    3036              :                       "[ WITH ( %s [= %s] [, ... ] ) ]\n"
    3037              :                       "[ USING INDEX TABLESPACE %s ]\n"
    3038              :                       "\n"
    3039              :                       "%s\n"
    3040              :                       "\n"
    3041              :                       "{ %s | ( %s ) } [ COLLATE %s ] [ %s [ ( %s = %s [, ... ] ) ] ] [ ASC | DESC ] [ NULLS { FIRST | LAST } ]\n"
    3042              :                       "\n"
    3043              :                       "%s\n"
    3044              :                       "\n"
    3045              :                       "{ NO ACTION | RESTRICT | CASCADE | SET NULL [ ( %s [, ... ] ) ] | SET DEFAULT [ ( %s [, ... ] ) ] }",
    3046              :                       _("persistence_mode"),
    3047              :                       _("table_name"),
    3048              :                       _("column_name"),
    3049              :                       _("data_type"),
    3050              :                       _("column_storage"),
    3051              :                       _("column_compression"),
    3052              :                       _("collation"),
    3053              :                       _("column_constraint"),
    3054              :                       _("table_constraint"),
    3055              :                       _("source_table"),
    3056              :                       _("like_option"),
    3057              :                       _("parent_table"),
    3058              :                       _("column_name"),
    3059              :                       _("expression"),
    3060              :                       _("collation"),
    3061              :                       _("opclass"),
    3062              :                       _("method"),
    3063              :                       _("storage_parameter"),
    3064              :                       _("value"),
    3065              :                       _("tablespace_name"),
    3066              :                       _("persistence_mode"),
    3067              :                       _("table_name"),
    3068              :                       _("type_name"),
    3069              :                       _("column_name"),
    3070              :                       _("column_constraint"),
    3071              :                       _("table_constraint"),
    3072              :                       _("column_name"),
    3073              :                       _("expression"),
    3074              :                       _("collation"),
    3075              :                       _("opclass"),
    3076              :                       _("method"),
    3077              :                       _("storage_parameter"),
    3078              :                       _("value"),
    3079              :                       _("tablespace_name"),
    3080              :                       _("persistence_mode"),
    3081              :                       _("table_name"),
    3082              :                       _("parent_table"),
    3083              :                       _("column_name"),
    3084              :                       _("column_constraint"),
    3085              :                       _("table_constraint"),
    3086              :                       _("partition_bound_spec"),
    3087              :                       _("column_name"),
    3088              :                       _("expression"),
    3089              :                       _("collation"),
    3090              :                       _("opclass"),
    3091              :                       _("method"),
    3092              :                       _("storage_parameter"),
    3093              :                       _("value"),
    3094              :                       _("tablespace_name"),
    3095              :                       _("where persistence_mode is:"),
    3096              :                       _("and column_storage is:"),
    3097              :                       _("and column_compression is:"),
    3098              :                       _("compression_method"),
    3099              :                       _("and column_constraint is:"),
    3100              :                       _("constraint_name"),
    3101              :                       _("expression"),
    3102              :                       _("default_expr"),
    3103              :                       _("generation_expr"),
    3104              :                       _("sequence_options"),
    3105              :                       _("index_parameters"),
    3106              :                       _("index_parameters"),
    3107              :                       _("reftable"),
    3108              :                       _("refcolumn"),
    3109              :                       _("referential_action"),
    3110              :                       _("referential_action"),
    3111              :                       _("and table_constraint is:"),
    3112              :                       _("constraint_name"),
    3113              :                       _("expression"),
    3114              :                       _("column_name"),
    3115              :                       _("column_name"),
    3116              :                       _("column_name"),
    3117              :                       _("index_parameters"),
    3118              :                       _("column_name"),
    3119              :                       _("column_name"),
    3120              :                       _("index_parameters"),
    3121              :                       _("index_method"),
    3122              :                       _("exclude_element"),
    3123              :                       _("operator"),
    3124              :                       _("index_parameters"),
    3125              :                       _("predicate"),
    3126              :                       _("column_name"),
    3127              :                       _("column_name"),
    3128              :                       _("reftable"),
    3129              :                       _("refcolumn"),
    3130              :                       _("refcolumn"),
    3131              :                       _("referential_action"),
    3132              :                       _("referential_action"),
    3133              :                       _("and like_option is:"),
    3134              :                       _("and partition_bound_spec is:"),
    3135              :                       _("partition_bound_expr"),
    3136              :                       _("partition_bound_expr"),
    3137              :                       _("partition_bound_expr"),
    3138              :                       _("numeric_literal"),
    3139              :                       _("numeric_literal"),
    3140              :                       _("and index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:"),
    3141              :                       _("column_name"),
    3142              :                       _("storage_parameter"),
    3143              :                       _("value"),
    3144              :                       _("tablespace_name"),
    3145              :                       _("and exclude_element in an EXCLUDE constraint is:"),
    3146              :                       _("column_name"),
    3147              :                       _("expression"),
    3148              :                       _("collation"),
    3149              :                       _("opclass"),
    3150              :                       _("opclass_parameter"),
    3151              :                       _("value"),
    3152              :                       _("and referential_action in a FOREIGN KEY/REFERENCES constraint is:"),
    3153              :                       _("column_name"),
    3154              :                       _("column_name"));
    3155            0 : }
    3156              : 
    3157              : static void
    3158            0 : sql_help_CREATE_TABLE_AS(PQExpBuffer buf)
    3159              : {
    3160            0 :     appendPQExpBuffer(buf,
    3161              :                       "CREATE [ %s ] TABLE [ IF NOT EXISTS ] %s\n"
    3162              :                       "    [ ( %s [, ...] ) ]\n"
    3163              :                       "    [ USING %s ]\n"
    3164              :                       "    [ WITH ( %s [= %s] [, ... ] ) | WITHOUT OIDS ]\n"
    3165              :                       "    [ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]\n"
    3166              :                       "    [ TABLESPACE %s ]\n"
    3167              :                       "    AS %s\n"
    3168              :                       "    [ WITH [ NO ] DATA ]\n"
    3169              :                       "\n"
    3170              :                       "%s\n"
    3171              :                       "\n"
    3172              :                       "{ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } } | UNLOGGED",
    3173              :                       _("persistence_mode"),
    3174              :                       _("table_name"),
    3175              :                       _("column_name"),
    3176              :                       _("method"),
    3177              :                       _("storage_parameter"),
    3178              :                       _("value"),
    3179              :                       _("tablespace_name"),
    3180              :                       _("query"),
    3181              :                       _("where persistence_mode is:"));
    3182            0 : }
    3183              : 
    3184              : static void
    3185            0 : sql_help_CREATE_TABLESPACE(PQExpBuffer buf)
    3186              : {
    3187            0 :     appendPQExpBuffer(buf,
    3188              :                       "CREATE TABLESPACE %s\n"
    3189              :                       "    [ OWNER { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER } ]\n"
    3190              :                       "    LOCATION '%s'\n"
    3191              :                       "    [ WITH ( %s = %s [, ... ] ) ]",
    3192              :                       _("tablespace_name"),
    3193              :                       _("new_owner"),
    3194              :                       _("directory"),
    3195              :                       _("tablespace_option"),
    3196              :                       _("value"));
    3197            0 : }
    3198              : 
    3199              : static void
    3200            0 : sql_help_CREATE_TEXT_SEARCH_CONFIGURATION(PQExpBuffer buf)
    3201              : {
    3202            0 :     appendPQExpBuffer(buf,
    3203              :                       "CREATE TEXT SEARCH CONFIGURATION %s (\n"
    3204              :                       "    PARSER = %s |\n"
    3205              :                       "    COPY = %s\n"
    3206              :                       ")",
    3207              :                       _("name"),
    3208              :                       _("parser_name"),
    3209              :                       _("source_config"));
    3210            0 : }
    3211              : 
    3212              : static void
    3213            0 : sql_help_CREATE_TEXT_SEARCH_DICTIONARY(PQExpBuffer buf)
    3214              : {
    3215            0 :     appendPQExpBuffer(buf,
    3216              :                       "CREATE TEXT SEARCH DICTIONARY %s (\n"
    3217              :                       "    TEMPLATE = %s\n"
    3218              :                       "    [, %s = %s [, ... ]]\n"
    3219              :                       ")",
    3220              :                       _("name"),
    3221              :                       _("template"),
    3222              :                       _("option"),
    3223              :                       _("value"));
    3224            0 : }
    3225              : 
    3226              : static void
    3227            0 : sql_help_CREATE_TEXT_SEARCH_PARSER(PQExpBuffer buf)
    3228              : {
    3229            0 :     appendPQExpBuffer(buf,
    3230              :                       "CREATE TEXT SEARCH PARSER %s (\n"
    3231              :                       "    START = %s ,\n"
    3232              :                       "    GETTOKEN = %s ,\n"
    3233              :                       "    END = %s ,\n"
    3234              :                       "    LEXTYPES = %s\n"
    3235              :                       "    [, HEADLINE = %s ]\n"
    3236              :                       ")",
    3237              :                       _("name"),
    3238              :                       _("start_function"),
    3239              :                       _("gettoken_function"),
    3240              :                       _("end_function"),
    3241              :                       _("lextypes_function"),
    3242              :                       _("headline_function"));
    3243            0 : }
    3244              : 
    3245              : static void
    3246            0 : sql_help_CREATE_TEXT_SEARCH_TEMPLATE(PQExpBuffer buf)
    3247              : {
    3248            0 :     appendPQExpBuffer(buf,
    3249              :                       "CREATE TEXT SEARCH TEMPLATE %s (\n"
    3250              :                       "    [ INIT = %s , ]\n"
    3251              :                       "    LEXIZE = %s\n"
    3252              :                       ")",
    3253              :                       _("name"),
    3254              :                       _("init_function"),
    3255              :                       _("lexize_function"));
    3256            0 : }
    3257              : 
    3258              : static void
    3259            0 : sql_help_CREATE_TRANSFORM(PQExpBuffer buf)
    3260              : {
    3261            0 :     appendPQExpBuffer(buf,
    3262              :                       "CREATE [ OR REPLACE ] TRANSFORM FOR %s LANGUAGE %s (\n"
    3263              :                       "    FROM SQL WITH FUNCTION %s [ (%s [, ...]) ],\n"
    3264              :                       "    TO SQL WITH FUNCTION %s [ (%s [, ...]) ]\n"
    3265              :                       ");",
    3266              :                       _("type_name"),
    3267              :                       _("lang_name"),
    3268              :                       _("from_sql_function_name"),
    3269              :                       _("argument_type"),
    3270              :                       _("to_sql_function_name"),
    3271              :                       _("argument_type"));
    3272            0 : }
    3273              : 
    3274              : static void
    3275            0 : sql_help_CREATE_TRIGGER(PQExpBuffer buf)
    3276              : {
    3277            0 :     appendPQExpBuffer(buf,
    3278              :                       "CREATE [ OR REPLACE ] [ CONSTRAINT ] TRIGGER %s { BEFORE | AFTER | INSTEAD OF } { %s [ OR ... ] }\n"
    3279              :                       "    ON %s\n"
    3280              :                       "    [ FROM %s ]\n"
    3281              :                       "    [ NOT DEFERRABLE | [ DEFERRABLE ] [ INITIALLY IMMEDIATE | INITIALLY DEFERRED ] ] [ ENFORCED ]\n"
    3282              :                       "    [ REFERENCING { { OLD | NEW } TABLE [ AS ] %s } [ ... ] ]\n"
    3283              :                       "    [ FOR [ EACH ] { ROW | STATEMENT } ]\n"
    3284              :                       "    [ WHEN ( %s ) ]\n"
    3285              :                       "    EXECUTE { FUNCTION | PROCEDURE } %s ( %s )\n"
    3286              :                       "\n"
    3287              :                       "%s\n"
    3288              :                       "\n"
    3289              :                       "    INSERT\n"
    3290              :                       "    UPDATE [ OF %s [, ... ] ]\n"
    3291              :                       "    DELETE\n"
    3292              :                       "    TRUNCATE",
    3293              :                       _("name"),
    3294              :                       _("event"),
    3295              :                       _("table_name"),
    3296              :                       _("referenced_table_name"),
    3297              :                       _("transition_relation_name"),
    3298              :                       _("condition"),
    3299              :                       _("function_name"),
    3300              :                       _("arguments"),
    3301              :                       _("where event can be one of:"),
    3302              :                       _("column_name"));
    3303            0 : }
    3304              : 
    3305              : static void
    3306            0 : sql_help_CREATE_TYPE(PQExpBuffer buf)
    3307              : {
    3308            0 :     appendPQExpBuffer(buf,
    3309              :                       "CREATE TYPE %s AS\n"
    3310              :                       "    ( [ %s %s [ COLLATE %s ] [, ... ] ] )\n"
    3311              :                       "\n"
    3312              :                       "CREATE TYPE %s AS ENUM\n"
    3313              :                       "    ( [ '%s' [, ... ] ] )\n"
    3314              :                       "\n"
    3315              :                       "CREATE TYPE %s AS RANGE (\n"
    3316              :                       "    SUBTYPE = %s\n"
    3317              :                       "    [ , SUBTYPE_OPCLASS = %s ]\n"
    3318              :                       "    [ , COLLATION = %s ]\n"
    3319              :                       "    [ , CANONICAL = %s ]\n"
    3320              :                       "    [ , SUBTYPE_DIFF = %s ]\n"
    3321              :                       "    [ , MULTIRANGE_TYPE_NAME = %s ]\n"
    3322              :                       ")\n"
    3323              :                       "\n"
    3324              :                       "CREATE TYPE %s (\n"
    3325              :                       "    INPUT = %s,\n"
    3326              :                       "    OUTPUT = %s\n"
    3327              :                       "    [ , RECEIVE = %s ]\n"
    3328              :                       "    [ , SEND = %s ]\n"
    3329              :                       "    [ , TYPMOD_IN = %s ]\n"
    3330              :                       "    [ , TYPMOD_OUT = %s ]\n"
    3331              :                       "    [ , ANALYZE = %s ]\n"
    3332              :                       "    [ , SUBSCRIPT = %s ]\n"
    3333              :                       "    [ , INTERNALLENGTH = { %s | VARIABLE } ]\n"
    3334              :                       "    [ , PASSEDBYVALUE ]\n"
    3335              :                       "    [ , ALIGNMENT = %s ]\n"
    3336              :                       "    [ , STORAGE = %s ]\n"
    3337              :                       "    [ , LIKE = %s ]\n"
    3338              :                       "    [ , CATEGORY = %s ]\n"
    3339              :                       "    [ , PREFERRED = %s ]\n"
    3340              :                       "    [ , DEFAULT = %s ]\n"
    3341              :                       "    [ , ELEMENT = %s ]\n"
    3342              :                       "    [ , DELIMITER = %s ]\n"
    3343              :                       "    [ , COLLATABLE = %s ]\n"
    3344              :                       ")\n"
    3345              :                       "\n"
    3346              :                       "CREATE TYPE %s",
    3347              :                       _("name"),
    3348              :                       _("attribute_name"),
    3349              :                       _("data_type"),
    3350              :                       _("collation"),
    3351              :                       _("name"),
    3352              :                       _("label"),
    3353              :                       _("name"),
    3354              :                       _("subtype"),
    3355              :                       _("subtype_operator_class"),
    3356              :                       _("collation"),
    3357              :                       _("canonical_function"),
    3358              :                       _("subtype_diff_function"),
    3359              :                       _("multirange_type_name"),
    3360              :                       _("name"),
    3361              :                       _("input_function"),
    3362              :                       _("output_function"),
    3363              :                       _("receive_function"),
    3364              :                       _("send_function"),
    3365              :                       _("type_modifier_input_function"),
    3366              :                       _("type_modifier_output_function"),
    3367              :                       _("analyze_function"),
    3368              :                       _("subscript_function"),
    3369              :                       _("internallength"),
    3370              :                       _("alignment"),
    3371              :                       _("storage"),
    3372              :                       _("like_type"),
    3373              :                       _("category"),
    3374              :                       _("preferred"),
    3375              :                       _("default"),
    3376              :                       _("element"),
    3377              :                       _("delimiter"),
    3378              :                       _("collatable"),
    3379              :                       _("name"));
    3380            0 : }
    3381              : 
    3382              : static void
    3383            0 : sql_help_CREATE_USER(PQExpBuffer buf)
    3384              : {
    3385            0 :     appendPQExpBuffer(buf,
    3386              :                       "CREATE USER %s [ [ WITH ] %s [ ... ] ]\n"
    3387              :                       "\n"
    3388              :                       "%s\n"
    3389              :                       "\n"
    3390              :                       "      SUPERUSER | NOSUPERUSER\n"
    3391              :                       "    | CREATEDB | NOCREATEDB\n"
    3392              :                       "    | CREATEROLE | NOCREATEROLE\n"
    3393              :                       "    | INHERIT | NOINHERIT\n"
    3394              :                       "    | LOGIN | NOLOGIN\n"
    3395              :                       "    | REPLICATION | NOREPLICATION\n"
    3396              :                       "    | BYPASSRLS | NOBYPASSRLS\n"
    3397              :                       "    | CONNECTION LIMIT %s\n"
    3398              :                       "    | [ ENCRYPTED ] PASSWORD '%s' | PASSWORD NULL\n"
    3399              :                       "    | VALID UNTIL '%s'\n"
    3400              :                       "    | IN ROLE %s [, ...]\n"
    3401              :                       "    | ROLE %s [, ...]\n"
    3402              :                       "    | ADMIN %s [, ...]\n"
    3403              :                       "    | SYSID %s",
    3404              :                       _("name"),
    3405              :                       _("option"),
    3406              :                       _("where option can be:"),
    3407              :                       _("connlimit"),
    3408              :                       _("password"),
    3409              :                       _("timestamp"),
    3410              :                       _("role_name"),
    3411              :                       _("role_name"),
    3412              :                       _("role_name"),
    3413              :                       _("uid"));
    3414            0 : }
    3415              : 
    3416              : static void
    3417            0 : sql_help_CREATE_USER_MAPPING(PQExpBuffer buf)
    3418              : {
    3419            0 :     appendPQExpBuffer(buf,
    3420              :                       "CREATE USER MAPPING [ IF NOT EXISTS ] FOR { %s | USER | CURRENT_ROLE | CURRENT_USER | PUBLIC }\n"
    3421              :                       "    SERVER %s\n"
    3422              :                       "    [ OPTIONS ( %s '%s' [ , ... ] ) ]",
    3423              :                       _("user_name"),
    3424              :                       _("server_name"),
    3425              :                       _("option"),
    3426              :                       _("value"));
    3427            0 : }
    3428              : 
    3429              : static void
    3430            0 : sql_help_CREATE_VIEW(PQExpBuffer buf)
    3431              : {
    3432            0 :     appendPQExpBuffer(buf,
    3433              :                       "CREATE [ OR REPLACE ] [ TEMP | TEMPORARY ] [ RECURSIVE ] VIEW %s [ ( %s [, ...] ) ]\n"
    3434              :                       "    [ WITH ( %s [= %s] [, ... ] ) ]\n"
    3435              :                       "    AS %s\n"
    3436              :                       "    [ WITH [ CASCADED | LOCAL ] CHECK OPTION ]",
    3437              :                       _("name"),
    3438              :                       _("column_name"),
    3439              :                       _("view_option_name"),
    3440              :                       _("view_option_value"),
    3441              :                       _("query"));
    3442            0 : }
    3443              : 
    3444              : static void
    3445            0 : sql_help_DEALLOCATE(PQExpBuffer buf)
    3446              : {
    3447            0 :     appendPQExpBuffer(buf,
    3448              :                       "DEALLOCATE [ PREPARE ] { %s | ALL }",
    3449              :                       _("name"));
    3450            0 : }
    3451              : 
    3452              : static void
    3453            0 : sql_help_DECLARE(PQExpBuffer buf)
    3454              : {
    3455            0 :     appendPQExpBuffer(buf,
    3456              :                       "DECLARE %s [ BINARY ] [ ASENSITIVE | INSENSITIVE ] [ [ NO ] SCROLL ]\n"
    3457              :                       "    CURSOR [ { WITH | WITHOUT } HOLD ] FOR %s",
    3458              :                       _("name"),
    3459              :                       _("query"));
    3460            0 : }
    3461              : 
    3462              : static void
    3463            0 : sql_help_DELETE(PQExpBuffer buf)
    3464              : {
    3465            0 :     appendPQExpBuffer(buf,
    3466              :                       "[ WITH [ RECURSIVE ] %s [, ...] ]\n"
    3467              :                       "DELETE FROM [ ONLY ] %s [ * ] [ [ AS ] %s ]\n"
    3468              :                       "    [ USING %s [, ...] ]\n"
    3469              :                       "    [ WHERE %s | WHERE CURRENT OF %s ]\n"
    3470              :                       "    [ RETURNING [ WITH ( { OLD | NEW } AS %s [, ...] ) ]\n"
    3471              :                       "                { * | %s [ [ AS ] %s ] } [, ...] ]",
    3472              :                       _("with_query"),
    3473              :                       _("table_name"),
    3474              :                       _("alias"),
    3475              :                       _("from_item"),
    3476              :                       _("condition"),
    3477              :                       _("cursor_name"),
    3478              :                       _("output_alias"),
    3479              :                       _("output_expression"),
    3480              :                       _("output_name"));
    3481            0 : }
    3482              : 
    3483              : static void
    3484            0 : sql_help_DISCARD(PQExpBuffer buf)
    3485              : {
    3486            0 :     appendPQExpBuffer(buf,
    3487              :                       "DISCARD { ALL | PLANS | SEQUENCES | TEMPORARY | TEMP }");
    3488            0 : }
    3489              : 
    3490              : static void
    3491            0 : sql_help_DO(PQExpBuffer buf)
    3492              : {
    3493            0 :     appendPQExpBuffer(buf,
    3494              :                       "DO [ LANGUAGE %s ] %s",
    3495              :                       _("lang_name"),
    3496              :                       _("code"));
    3497            0 : }
    3498              : 
    3499              : static void
    3500            0 : sql_help_DROP_ACCESS_METHOD(PQExpBuffer buf)
    3501              : {
    3502            0 :     appendPQExpBuffer(buf,
    3503              :                       "DROP ACCESS METHOD [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3504              :                       _("name"));
    3505            0 : }
    3506              : 
    3507              : static void
    3508            0 : sql_help_DROP_AGGREGATE(PQExpBuffer buf)
    3509              : {
    3510            0 :     appendPQExpBuffer(buf,
    3511              :                       "DROP AGGREGATE [ IF EXISTS ] %s ( %s ) [, ...] [ CASCADE | RESTRICT ]\n"
    3512              :                       "\n"
    3513              :                       "%s\n"
    3514              :                       "\n"
    3515              :                       "* |\n"
    3516              :                       "[ %s ] [ %s ] %s [ , ... ] |\n"
    3517              :                       "[ [ %s ] [ %s ] %s [ , ... ] ] ORDER BY [ %s ] [ %s ] %s [ , ... ]",
    3518              :                       _("name"),
    3519              :                       _("aggregate_signature"),
    3520              :                       _("where aggregate_signature is:"),
    3521              :                       _("argmode"),
    3522              :                       _("argname"),
    3523              :                       _("argtype"),
    3524              :                       _("argmode"),
    3525              :                       _("argname"),
    3526              :                       _("argtype"),
    3527              :                       _("argmode"),
    3528              :                       _("argname"),
    3529              :                       _("argtype"));
    3530            0 : }
    3531              : 
    3532              : static void
    3533            0 : sql_help_DROP_CAST(PQExpBuffer buf)
    3534              : {
    3535            0 :     appendPQExpBuffer(buf,
    3536              :                       "DROP CAST [ IF EXISTS ] (%s AS %s) [ CASCADE | RESTRICT ]",
    3537              :                       _("source_type"),
    3538              :                       _("target_type"));
    3539            0 : }
    3540              : 
    3541              : static void
    3542            0 : sql_help_DROP_COLLATION(PQExpBuffer buf)
    3543              : {
    3544            0 :     appendPQExpBuffer(buf,
    3545              :                       "DROP COLLATION [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3546              :                       _("name"));
    3547            0 : }
    3548              : 
    3549              : static void
    3550            0 : sql_help_DROP_CONVERSION(PQExpBuffer buf)
    3551              : {
    3552            0 :     appendPQExpBuffer(buf,
    3553              :                       "DROP CONVERSION [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3554              :                       _("name"));
    3555            0 : }
    3556              : 
    3557              : static void
    3558            0 : sql_help_DROP_DATABASE(PQExpBuffer buf)
    3559              : {
    3560            0 :     appendPQExpBuffer(buf,
    3561              :                       "DROP DATABASE [ IF EXISTS ] %s [ [ WITH ] ( %s [, ...] ) ]\n"
    3562              :                       "\n"
    3563              :                       "%s\n"
    3564              :                       "\n"
    3565              :                       "    FORCE",
    3566              :                       _("name"),
    3567              :                       _("option"),
    3568              :                       _("where option can be:"));
    3569            0 : }
    3570              : 
    3571              : static void
    3572            0 : sql_help_DROP_DOMAIN(PQExpBuffer buf)
    3573              : {
    3574            0 :     appendPQExpBuffer(buf,
    3575              :                       "DROP DOMAIN [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3576              :                       _("name"));
    3577            0 : }
    3578              : 
    3579              : static void
    3580            0 : sql_help_DROP_EVENT_TRIGGER(PQExpBuffer buf)
    3581              : {
    3582            0 :     appendPQExpBuffer(buf,
    3583              :                       "DROP EVENT TRIGGER [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3584              :                       _("name"));
    3585            0 : }
    3586              : 
    3587              : static void
    3588            0 : sql_help_DROP_EXTENSION(PQExpBuffer buf)
    3589              : {
    3590            0 :     appendPQExpBuffer(buf,
    3591              :                       "DROP EXTENSION [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3592              :                       _("name"));
    3593            0 : }
    3594              : 
    3595              : static void
    3596            0 : sql_help_DROP_FOREIGN_DATA_WRAPPER(PQExpBuffer buf)
    3597              : {
    3598            0 :     appendPQExpBuffer(buf,
    3599              :                       "DROP FOREIGN DATA WRAPPER [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3600              :                       _("name"));
    3601            0 : }
    3602              : 
    3603              : static void
    3604            0 : sql_help_DROP_FOREIGN_TABLE(PQExpBuffer buf)
    3605              : {
    3606            0 :     appendPQExpBuffer(buf,
    3607              :                       "DROP FOREIGN TABLE [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3608              :                       _("name"));
    3609            0 : }
    3610              : 
    3611              : static void
    3612            0 : sql_help_DROP_FUNCTION(PQExpBuffer buf)
    3613              : {
    3614            0 :     appendPQExpBuffer(buf,
    3615              :                       "DROP FUNCTION [ IF EXISTS ] %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] [, ...]\n"
    3616              :                       "    [ CASCADE | RESTRICT ]",
    3617              :                       _("name"),
    3618              :                       _("argmode"),
    3619              :                       _("argname"),
    3620              :                       _("argtype"));
    3621            0 : }
    3622              : 
    3623              : static void
    3624            0 : sql_help_DROP_GROUP(PQExpBuffer buf)
    3625              : {
    3626            0 :     appendPQExpBuffer(buf,
    3627              :                       "DROP GROUP [ IF EXISTS ] %s [, ...]",
    3628              :                       _("name"));
    3629            0 : }
    3630              : 
    3631              : static void
    3632            0 : sql_help_DROP_INDEX(PQExpBuffer buf)
    3633              : {
    3634            0 :     appendPQExpBuffer(buf,
    3635              :                       "DROP INDEX [ CONCURRENTLY ] [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3636              :                       _("name"));
    3637            0 : }
    3638              : 
    3639              : static void
    3640            0 : sql_help_DROP_LANGUAGE(PQExpBuffer buf)
    3641              : {
    3642            0 :     appendPQExpBuffer(buf,
    3643              :                       "DROP [ PROCEDURAL ] LANGUAGE [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3644              :                       _("name"));
    3645            0 : }
    3646              : 
    3647              : static void
    3648            0 : sql_help_DROP_MATERIALIZED_VIEW(PQExpBuffer buf)
    3649              : {
    3650            0 :     appendPQExpBuffer(buf,
    3651              :                       "DROP MATERIALIZED VIEW [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3652              :                       _("name"));
    3653            0 : }
    3654              : 
    3655              : static void
    3656            0 : sql_help_DROP_OPERATOR(PQExpBuffer buf)
    3657              : {
    3658            0 :     appendPQExpBuffer(buf,
    3659              :                       "DROP OPERATOR [ IF EXISTS ] %s ( { %s | NONE } , %s ) [, ...] [ CASCADE | RESTRICT ]",
    3660              :                       _("name"),
    3661              :                       _("left_type"),
    3662              :                       _("right_type"));
    3663            0 : }
    3664              : 
    3665              : static void
    3666            0 : sql_help_DROP_OPERATOR_CLASS(PQExpBuffer buf)
    3667              : {
    3668            0 :     appendPQExpBuffer(buf,
    3669              :                       "DROP OPERATOR CLASS [ IF EXISTS ] %s USING %s [ CASCADE | RESTRICT ]",
    3670              :                       _("name"),
    3671              :                       _("index_method"));
    3672            0 : }
    3673              : 
    3674              : static void
    3675            0 : sql_help_DROP_OPERATOR_FAMILY(PQExpBuffer buf)
    3676              : {
    3677            0 :     appendPQExpBuffer(buf,
    3678              :                       "DROP OPERATOR FAMILY [ IF EXISTS ] %s USING %s [ CASCADE | RESTRICT ]",
    3679              :                       _("name"),
    3680              :                       _("index_method"));
    3681            0 : }
    3682              : 
    3683              : static void
    3684            0 : sql_help_DROP_OWNED(PQExpBuffer buf)
    3685              : {
    3686            0 :     appendPQExpBuffer(buf,
    3687              :                       "DROP OWNED BY { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...] [ CASCADE | RESTRICT ]",
    3688              :                       _("name"));
    3689            0 : }
    3690              : 
    3691              : static void
    3692            0 : sql_help_DROP_POLICY(PQExpBuffer buf)
    3693              : {
    3694            0 :     appendPQExpBuffer(buf,
    3695              :                       "DROP POLICY [ IF EXISTS ] %s ON %s [ CASCADE | RESTRICT ]",
    3696              :                       _("name"),
    3697              :                       _("table_name"));
    3698            0 : }
    3699              : 
    3700              : static void
    3701            0 : sql_help_DROP_PROCEDURE(PQExpBuffer buf)
    3702              : {
    3703            0 :     appendPQExpBuffer(buf,
    3704              :                       "DROP PROCEDURE [ IF EXISTS ] %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] [, ...]\n"
    3705              :                       "    [ CASCADE | RESTRICT ]",
    3706              :                       _("name"),
    3707              :                       _("argmode"),
    3708              :                       _("argname"),
    3709              :                       _("argtype"));
    3710            0 : }
    3711              : 
    3712              : static void
    3713            0 : sql_help_DROP_PUBLICATION(PQExpBuffer buf)
    3714              : {
    3715            0 :     appendPQExpBuffer(buf,
    3716              :                       "DROP PUBLICATION [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3717              :                       _("name"));
    3718            0 : }
    3719              : 
    3720              : static void
    3721            0 : sql_help_DROP_ROLE(PQExpBuffer buf)
    3722              : {
    3723            0 :     appendPQExpBuffer(buf,
    3724              :                       "DROP ROLE [ IF EXISTS ] %s [, ...]",
    3725              :                       _("name"));
    3726            0 : }
    3727              : 
    3728              : static void
    3729            0 : sql_help_DROP_ROUTINE(PQExpBuffer buf)
    3730              : {
    3731            0 :     appendPQExpBuffer(buf,
    3732              :                       "DROP ROUTINE [ IF EXISTS ] %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] [, ...]\n"
    3733              :                       "    [ CASCADE | RESTRICT ]",
    3734              :                       _("name"),
    3735              :                       _("argmode"),
    3736              :                       _("argname"),
    3737              :                       _("argtype"));
    3738            0 : }
    3739              : 
    3740              : static void
    3741            0 : sql_help_DROP_RULE(PQExpBuffer buf)
    3742              : {
    3743            0 :     appendPQExpBuffer(buf,
    3744              :                       "DROP RULE [ IF EXISTS ] %s ON %s [ CASCADE | RESTRICT ]",
    3745              :                       _("name"),
    3746              :                       _("table_name"));
    3747            0 : }
    3748              : 
    3749              : static void
    3750            0 : sql_help_DROP_SCHEMA(PQExpBuffer buf)
    3751              : {
    3752            0 :     appendPQExpBuffer(buf,
    3753              :                       "DROP SCHEMA [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3754              :                       _("name"));
    3755            0 : }
    3756              : 
    3757              : static void
    3758            0 : sql_help_DROP_SEQUENCE(PQExpBuffer buf)
    3759              : {
    3760            0 :     appendPQExpBuffer(buf,
    3761              :                       "DROP SEQUENCE [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3762              :                       _("name"));
    3763            0 : }
    3764              : 
    3765              : static void
    3766            0 : sql_help_DROP_SERVER(PQExpBuffer buf)
    3767              : {
    3768            0 :     appendPQExpBuffer(buf,
    3769              :                       "DROP SERVER [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3770              :                       _("name"));
    3771            0 : }
    3772              : 
    3773              : static void
    3774            0 : sql_help_DROP_STATISTICS(PQExpBuffer buf)
    3775              : {
    3776            0 :     appendPQExpBuffer(buf,
    3777              :                       "DROP STATISTICS [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3778              :                       _("name"));
    3779            0 : }
    3780              : 
    3781              : static void
    3782            0 : sql_help_DROP_SUBSCRIPTION(PQExpBuffer buf)
    3783              : {
    3784            0 :     appendPQExpBuffer(buf,
    3785              :                       "DROP SUBSCRIPTION [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3786              :                       _("name"));
    3787            0 : }
    3788              : 
    3789              : static void
    3790            0 : sql_help_DROP_TABLE(PQExpBuffer buf)
    3791              : {
    3792            0 :     appendPQExpBuffer(buf,
    3793              :                       "DROP TABLE [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3794              :                       _("name"));
    3795            0 : }
    3796              : 
    3797              : static void
    3798            0 : sql_help_DROP_TABLESPACE(PQExpBuffer buf)
    3799              : {
    3800            0 :     appendPQExpBuffer(buf,
    3801              :                       "DROP TABLESPACE [ IF EXISTS ] %s",
    3802              :                       _("name"));
    3803            0 : }
    3804              : 
    3805              : static void
    3806            0 : sql_help_DROP_TEXT_SEARCH_CONFIGURATION(PQExpBuffer buf)
    3807              : {
    3808            0 :     appendPQExpBuffer(buf,
    3809              :                       "DROP TEXT SEARCH CONFIGURATION [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3810              :                       _("name"));
    3811            0 : }
    3812              : 
    3813              : static void
    3814            0 : sql_help_DROP_TEXT_SEARCH_DICTIONARY(PQExpBuffer buf)
    3815              : {
    3816            0 :     appendPQExpBuffer(buf,
    3817              :                       "DROP TEXT SEARCH DICTIONARY [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3818              :                       _("name"));
    3819            0 : }
    3820              : 
    3821              : static void
    3822            0 : sql_help_DROP_TEXT_SEARCH_PARSER(PQExpBuffer buf)
    3823              : {
    3824            0 :     appendPQExpBuffer(buf,
    3825              :                       "DROP TEXT SEARCH PARSER [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3826              :                       _("name"));
    3827            0 : }
    3828              : 
    3829              : static void
    3830            0 : sql_help_DROP_TEXT_SEARCH_TEMPLATE(PQExpBuffer buf)
    3831              : {
    3832            0 :     appendPQExpBuffer(buf,
    3833              :                       "DROP TEXT SEARCH TEMPLATE [ IF EXISTS ] %s [ CASCADE | RESTRICT ]",
    3834              :                       _("name"));
    3835            0 : }
    3836              : 
    3837              : static void
    3838            0 : sql_help_DROP_TRANSFORM(PQExpBuffer buf)
    3839              : {
    3840            0 :     appendPQExpBuffer(buf,
    3841              :                       "DROP TRANSFORM [ IF EXISTS ] FOR %s LANGUAGE %s [ CASCADE | RESTRICT ]",
    3842              :                       _("type_name"),
    3843              :                       _("lang_name"));
    3844            0 : }
    3845              : 
    3846              : static void
    3847            0 : sql_help_DROP_TRIGGER(PQExpBuffer buf)
    3848              : {
    3849            0 :     appendPQExpBuffer(buf,
    3850              :                       "DROP TRIGGER [ IF EXISTS ] %s ON %s [ CASCADE | RESTRICT ]",
    3851              :                       _("name"),
    3852              :                       _("table_name"));
    3853            0 : }
    3854              : 
    3855              : static void
    3856            0 : sql_help_DROP_TYPE(PQExpBuffer buf)
    3857              : {
    3858            0 :     appendPQExpBuffer(buf,
    3859              :                       "DROP TYPE [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3860              :                       _("name"));
    3861            0 : }
    3862              : 
    3863              : static void
    3864            0 : sql_help_DROP_USER(PQExpBuffer buf)
    3865              : {
    3866            0 :     appendPQExpBuffer(buf,
    3867              :                       "DROP USER [ IF EXISTS ] %s [, ...]",
    3868              :                       _("name"));
    3869            0 : }
    3870              : 
    3871              : static void
    3872            0 : sql_help_DROP_USER_MAPPING(PQExpBuffer buf)
    3873              : {
    3874            0 :     appendPQExpBuffer(buf,
    3875              :                       "DROP USER MAPPING [ IF EXISTS ] FOR { %s | USER | CURRENT_ROLE | CURRENT_USER | PUBLIC } SERVER %s",
    3876              :                       _("user_name"),
    3877              :                       _("server_name"));
    3878            0 : }
    3879              : 
    3880              : static void
    3881            0 : sql_help_DROP_VIEW(PQExpBuffer buf)
    3882              : {
    3883            0 :     appendPQExpBuffer(buf,
    3884              :                       "DROP VIEW [ IF EXISTS ] %s [, ...] [ CASCADE | RESTRICT ]",
    3885              :                       _("name"));
    3886            0 : }
    3887              : 
    3888              : static void
    3889            0 : sql_help_END(PQExpBuffer buf)
    3890              : {
    3891            0 :     appendPQExpBuffer(buf,
    3892              :                       "END [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ]");
    3893            0 : }
    3894              : 
    3895              : static void
    3896            0 : sql_help_EXECUTE(PQExpBuffer buf)
    3897              : {
    3898            0 :     appendPQExpBuffer(buf,
    3899              :                       "EXECUTE %s [ ( %s [, ...] ) ]",
    3900              :                       _("name"),
    3901              :                       _("parameter"));
    3902            0 : }
    3903              : 
    3904              : static void
    3905            0 : sql_help_EXPLAIN(PQExpBuffer buf)
    3906              : {
    3907            0 :     appendPQExpBuffer(buf,
    3908              :                       "EXPLAIN [ ( %s [, ...] ) ] %s\n"
    3909              :                       "\n"
    3910              :                       "%s\n"
    3911              :                       "\n"
    3912              :                       "    ANALYZE [ %s ]\n"
    3913              :                       "    VERBOSE [ %s ]\n"
    3914              :                       "    COSTS [ %s ]\n"
    3915              :                       "    SETTINGS [ %s ]\n"
    3916              :                       "    GENERIC_PLAN [ %s ]\n"
    3917              :                       "    BUFFERS [ %s ]\n"
    3918              :                       "    SERIALIZE [ { NONE | TEXT | BINARY } ]\n"
    3919              :                       "    WAL [ %s ]\n"
    3920              :                       "    TIMING [ %s ]\n"
    3921              :                       "    SUMMARY [ %s ]\n"
    3922              :                       "    MEMORY [ %s ]\n"
    3923              :                       "    IO [ %s ]\n"
    3924              :                       "    FORMAT { TEXT | XML | JSON | YAML }",
    3925              :                       _("option"),
    3926              :                       _("statement"),
    3927              :                       _("where option can be one of:"),
    3928              :                       _("boolean"),
    3929              :                       _("boolean"),
    3930              :                       _("boolean"),
    3931              :                       _("boolean"),
    3932              :                       _("boolean"),
    3933              :                       _("boolean"),
    3934              :                       _("boolean"),
    3935              :                       _("boolean"),
    3936              :                       _("boolean"),
    3937              :                       _("boolean"),
    3938              :                       _("boolean"));
    3939            0 : }
    3940              : 
    3941              : static void
    3942            0 : sql_help_FETCH(PQExpBuffer buf)
    3943              : {
    3944            0 :     appendPQExpBuffer(buf,
    3945              :                       "FETCH [ %s ] [ FROM | IN ] %s\n"
    3946              :                       "\n"
    3947              :                       "%s\n"
    3948              :                       "\n"
    3949              :                       "    NEXT\n"
    3950              :                       "    PRIOR\n"
    3951              :                       "    FIRST\n"
    3952              :                       "    LAST\n"
    3953              :                       "    ABSOLUTE %s\n"
    3954              :                       "    RELATIVE %s\n"
    3955              :                       "    %s\n"
    3956              :                       "    ALL\n"
    3957              :                       "    FORWARD\n"
    3958              :                       "    FORWARD %s\n"
    3959              :                       "    FORWARD ALL\n"
    3960              :                       "    BACKWARD\n"
    3961              :                       "    BACKWARD %s\n"
    3962              :                       "    BACKWARD ALL",
    3963              :                       _("direction"),
    3964              :                       _("cursor_name"),
    3965              :                       _("where direction can be one of:"),
    3966              :                       _("count"),
    3967              :                       _("count"),
    3968              :                       _("count"),
    3969              :                       _("count"),
    3970              :                       _("count"));
    3971            0 : }
    3972              : 
    3973              : static void
    3974            0 : sql_help_GRANT(PQExpBuffer buf)
    3975              : {
    3976            0 :     appendPQExpBuffer(buf,
    3977              :                       "GRANT { { SELECT | INSERT | UPDATE | DELETE | TRUNCATE | REFERENCES | TRIGGER | MAINTAIN }\n"
    3978              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
    3979              :                       "    ON { [ TABLE ] %s [, ...]\n"
    3980              :                       "         | ALL TABLES IN SCHEMA %s [, ...] }\n"
    3981              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    3982              :                       "    [ GRANTED BY %s ]\n"
    3983              :                       "\n"
    3984              :                       "GRANT { { SELECT | INSERT | UPDATE | REFERENCES } ( %s [, ...] )\n"
    3985              :                       "    [, ...] | ALL [ PRIVILEGES ] ( %s [, ...] ) }\n"
    3986              :                       "    ON [ TABLE ] %s [, ...]\n"
    3987              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    3988              :                       "    [ GRANTED BY %s ]\n"
    3989              :                       "\n"
    3990              :                       "GRANT { { USAGE | SELECT | UPDATE }\n"
    3991              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
    3992              :                       "    ON { SEQUENCE %s [, ...]\n"
    3993              :                       "         | ALL SEQUENCES IN SCHEMA %s [, ...] }\n"
    3994              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    3995              :                       "    [ GRANTED BY %s ]\n"
    3996              :                       "\n"
    3997              :                       "GRANT { { CREATE | CONNECT | TEMPORARY | TEMP } [, ...] | ALL [ PRIVILEGES ] }\n"
    3998              :                       "    ON DATABASE %s [, ...]\n"
    3999              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4000              :                       "    [ GRANTED BY %s ]\n"
    4001              :                       "\n"
    4002              :                       "GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
    4003              :                       "    ON DOMAIN %s [, ...]\n"
    4004              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4005              :                       "    [ GRANTED BY %s ]\n"
    4006              :                       "\n"
    4007              :                       "GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
    4008              :                       "    ON FOREIGN DATA WRAPPER %s [, ...]\n"
    4009              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4010              :                       "    [ GRANTED BY %s ]\n"
    4011              :                       "\n"
    4012              :                       "GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
    4013              :                       "    ON FOREIGN SERVER %s [, ...]\n"
    4014              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4015              :                       "    [ GRANTED BY %s ]\n"
    4016              :                       "\n"
    4017              :                       "GRANT { EXECUTE | ALL [ PRIVILEGES ] }\n"
    4018              :                       "    ON { { FUNCTION | PROCEDURE | ROUTINE } %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] [, ...]\n"
    4019              :                       "         | ALL { FUNCTIONS | PROCEDURES | ROUTINES } IN SCHEMA %s [, ...] }\n"
    4020              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4021              :                       "    [ GRANTED BY %s ]\n"
    4022              :                       "\n"
    4023              :                       "GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
    4024              :                       "    ON LANGUAGE %s [, ...]\n"
    4025              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4026              :                       "    [ GRANTED BY %s ]\n"
    4027              :                       "\n"
    4028              :                       "GRANT { { SELECT | UPDATE } [, ...] | ALL [ PRIVILEGES ] }\n"
    4029              :                       "    ON LARGE OBJECT %s [, ...]\n"
    4030              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4031              :                       "    [ GRANTED BY %s ]\n"
    4032              :                       "\n"
    4033              :                       "GRANT { { SET | ALTER SYSTEM } [, ... ] | ALL [ PRIVILEGES ] }\n"
    4034              :                       "    ON PARAMETER %s [, ...]\n"
    4035              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4036              :                       "    [ GRANTED BY %s ]\n"
    4037              :                       "\n"
    4038              :                       "GRANT { { CREATE | USAGE } [, ...] | ALL [ PRIVILEGES ] }\n"
    4039              :                       "    ON SCHEMA %s [, ...]\n"
    4040              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4041              :                       "    [ GRANTED BY %s ]\n"
    4042              :                       "\n"
    4043              :                       "GRANT { CREATE | ALL [ PRIVILEGES ] }\n"
    4044              :                       "    ON TABLESPACE %s [, ...]\n"
    4045              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4046              :                       "    [ GRANTED BY %s ]\n"
    4047              :                       "\n"
    4048              :                       "GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
    4049              :                       "    ON TYPE %s [, ...]\n"
    4050              :                       "    TO %s [, ...] [ WITH GRANT OPTION ]\n"
    4051              :                       "    [ GRANTED BY %s ]\n"
    4052              :                       "\n"
    4053              :                       "GRANT %s [, ...] TO %s [, ...]\n"
    4054              :                       "    [ WITH { ADMIN | INHERIT | SET } { OPTION | TRUE | FALSE } ]\n"
    4055              :                       "    [ GRANTED BY %s ]\n"
    4056              :                       "\n"
    4057              :                       "%s\n"
    4058              :                       "\n"
    4059              :                       "    [ GROUP ] %s\n"
    4060              :                       "  | PUBLIC\n"
    4061              :                       "  | CURRENT_ROLE\n"
    4062              :                       "  | CURRENT_USER\n"
    4063              :                       "  | SESSION_USER",
    4064              :                       _("table_name"),
    4065              :                       _("schema_name"),
    4066              :                       _("role_specification"),
    4067              :                       _("role_specification"),
    4068              :                       _("column_name"),
    4069              :                       _("column_name"),
    4070              :                       _("table_name"),
    4071              :                       _("role_specification"),
    4072              :                       _("role_specification"),
    4073              :                       _("sequence_name"),
    4074              :                       _("schema_name"),
    4075              :                       _("role_specification"),
    4076              :                       _("role_specification"),
    4077              :                       _("database_name"),
    4078              :                       _("role_specification"),
    4079              :                       _("role_specification"),
    4080              :                       _("domain_name"),
    4081              :                       _("role_specification"),
    4082              :                       _("role_specification"),
    4083              :                       _("fdw_name"),
    4084              :                       _("role_specification"),
    4085              :                       _("role_specification"),
    4086              :                       _("server_name"),
    4087              :                       _("role_specification"),
    4088              :                       _("role_specification"),
    4089              :                       _("routine_name"),
    4090              :                       _("argmode"),
    4091              :                       _("arg_name"),
    4092              :                       _("arg_type"),
    4093              :                       _("schema_name"),
    4094              :                       _("role_specification"),
    4095              :                       _("role_specification"),
    4096              :                       _("lang_name"),
    4097              :                       _("role_specification"),
    4098              :                       _("role_specification"),
    4099              :                       _("loid"),
    4100              :                       _("role_specification"),
    4101              :                       _("role_specification"),
    4102              :                       _("configuration_parameter"),
    4103              :                       _("role_specification"),
    4104              :                       _("role_specification"),
    4105              :                       _("schema_name"),
    4106              :                       _("role_specification"),
    4107              :                       _("role_specification"),
    4108              :                       _("tablespace_name"),
    4109              :                       _("role_specification"),
    4110              :                       _("role_specification"),
    4111              :                       _("type_name"),
    4112              :                       _("role_specification"),
    4113              :                       _("role_specification"),
    4114              :                       _("role_name"),
    4115              :                       _("role_specification"),
    4116              :                       _("role_specification"),
    4117              :                       _("where role_specification can be:"),
    4118              :                       _("role_name"));
    4119            0 : }
    4120              : 
    4121              : static void
    4122            0 : sql_help_IMPORT_FOREIGN_SCHEMA(PQExpBuffer buf)
    4123              : {
    4124            0 :     appendPQExpBuffer(buf,
    4125              :                       "IMPORT FOREIGN SCHEMA %s\n"
    4126              :                       "    [ { LIMIT TO | EXCEPT } ( %s [, ...] ) ]\n"
    4127              :                       "    FROM SERVER %s\n"
    4128              :                       "    INTO %s\n"
    4129              :                       "    [ OPTIONS ( %s '%s' [, ... ] ) ]",
    4130              :                       _("remote_schema"),
    4131              :                       _("table_name"),
    4132              :                       _("server_name"),
    4133              :                       _("local_schema"),
    4134              :                       _("option"),
    4135              :                       _("value"));
    4136            0 : }
    4137              : 
    4138              : static void
    4139            0 : sql_help_INSERT(PQExpBuffer buf)
    4140              : {
    4141            0 :     appendPQExpBuffer(buf,
    4142              :                       "[ WITH [ RECURSIVE ] %s [, ...] ]\n"
    4143              :                       "INSERT INTO %s [ AS %s ] [ ( %s [, ...] ) ]\n"
    4144              :                       "    [ OVERRIDING { SYSTEM | USER } VALUE ]\n"
    4145              :                       "    { DEFAULT VALUES | VALUES ( { %s | DEFAULT } [, ...] ) [, ...] | %s }\n"
    4146              :                       "    [ ON CONFLICT [ %s ] %s ]\n"
    4147              :                       "    [ RETURNING [ WITH ( { OLD | NEW } AS %s [, ...] ) ]\n"
    4148              :                       "                { * | %s [ [ AS ] %s ] } [, ...] ]\n"
    4149              :                       "\n"
    4150              :                       "%s\n"
    4151              :                       "\n"
    4152              :                       "    ( { %s | ( %s ) } [ COLLATE %s ] [ %s ] [, ...] ) [ WHERE %s ]\n"
    4153              :                       "    ON CONSTRAINT %s\n"
    4154              :                       "\n"
    4155              :                       "%s\n"
    4156              :                       "\n"
    4157              :                       "    DO NOTHING\n"
    4158              :                       "    DO SELECT [ FOR { UPDATE | NO KEY UPDATE | SHARE | KEY SHARE } ] [ WHERE %s ]\n"
    4159              :                       "    DO UPDATE SET { %s = { %s | DEFAULT } |\n"
    4160              :                       "                    ( %s [, ...] ) = [ ROW ] ( { %s | DEFAULT } [, ...] ) |\n"
    4161              :                       "                    ( %s [, ...] ) = ( %s )\n"
    4162              :                       "                  } [, ...]\n"
    4163              :                       "              [ WHERE %s ]",
    4164              :                       _("with_query"),
    4165              :                       _("table_name"),
    4166              :                       _("alias"),
    4167              :                       _("column_name"),
    4168              :                       _("expression"),
    4169              :                       _("query"),
    4170              :                       _("conflict_target"),
    4171              :                       _("conflict_action"),
    4172              :                       _("output_alias"),
    4173              :                       _("output_expression"),
    4174              :                       _("output_name"),
    4175              :                       _("where conflict_target can be one of:"),
    4176              :                       _("index_column_name"),
    4177              :                       _("index_expression"),
    4178              :                       _("collation"),
    4179              :                       _("opclass"),
    4180              :                       _("index_predicate"),
    4181              :                       _("constraint_name"),
    4182              :                       _("and conflict_action is one of:"),
    4183              :                       _("condition"),
    4184              :                       _("column_name"),
    4185              :                       _("expression"),
    4186              :                       _("column_name"),
    4187              :                       _("expression"),
    4188              :                       _("column_name"),
    4189              :                       _("sub-SELECT"),
    4190              :                       _("condition"));
    4191            0 : }
    4192              : 
    4193              : static void
    4194            0 : sql_help_LISTEN(PQExpBuffer buf)
    4195              : {
    4196            0 :     appendPQExpBuffer(buf,
    4197              :                       "LISTEN %s",
    4198              :                       _("channel"));
    4199            0 : }
    4200              : 
    4201              : static void
    4202            0 : sql_help_LOAD(PQExpBuffer buf)
    4203              : {
    4204            0 :     appendPQExpBuffer(buf,
    4205              :                       "LOAD '%s'",
    4206              :                       _("filename"));
    4207            0 : }
    4208              : 
    4209              : static void
    4210            0 : sql_help_LOCK(PQExpBuffer buf)
    4211              : {
    4212            0 :     appendPQExpBuffer(buf,
    4213              :                       "LOCK [ TABLE ] [ ONLY ] %s [ * ] [, ...] [ IN %s MODE ] [ NOWAIT ]\n"
    4214              :                       "\n"
    4215              :                       "%s\n"
    4216              :                       "\n"
    4217              :                       "    ACCESS SHARE | ROW SHARE | ROW EXCLUSIVE | SHARE UPDATE EXCLUSIVE\n"
    4218              :                       "    | SHARE | SHARE ROW EXCLUSIVE | EXCLUSIVE | ACCESS EXCLUSIVE",
    4219              :                       _("name"),
    4220              :                       _("lockmode"),
    4221              :                       _("where lockmode is one of:"));
    4222            0 : }
    4223              : 
    4224              : static void
    4225            0 : sql_help_MERGE(PQExpBuffer buf)
    4226              : {
    4227            0 :     appendPQExpBuffer(buf,
    4228              :                       "[ WITH %s [, ...] ]\n"
    4229              :                       "MERGE INTO [ ONLY ] %s [ * ] [ [ AS ] %s ]\n"
    4230              :                       "    USING %s ON %s\n"
    4231              :                       "    %s [...]\n"
    4232              :                       "    [ RETURNING [ WITH ( { OLD | NEW } AS %s [, ...] ) ]\n"
    4233              :                       "                { * | %s [ [ AS ] %s ] } [, ...] ]\n"
    4234              :                       "\n"
    4235              :                       "%s\n"
    4236              :                       "\n"
    4237              :                       "    { [ ONLY ] %s [ * ] | ( %s ) } [ [ AS ] %s ]\n"
    4238              :                       "\n"
    4239              :                       "%s\n"
    4240              :                       "\n"
    4241              :                       "    { WHEN MATCHED [ AND %s ] THEN { %s | %s | DO NOTHING } |\n"
    4242              :                       "      WHEN NOT MATCHED BY SOURCE [ AND %s ] THEN { %s | %s | DO NOTHING } |\n"
    4243              :                       "      WHEN NOT MATCHED [ BY TARGET ] [ AND %s ] THEN { %s | DO NOTHING } }\n"
    4244              :                       "\n"
    4245              :                       "%s\n"
    4246              :                       "\n"
    4247              :                       "    INSERT [( %s [, ...] )]\n"
    4248              :                       "        [ OVERRIDING { SYSTEM | USER } VALUE ]\n"
    4249              :                       "        { VALUES ( { %s | DEFAULT } [, ...] ) | DEFAULT VALUES }\n"
    4250              :                       "\n"
    4251              :                       "%s\n"
    4252              :                       "\n"
    4253              :                       "    UPDATE SET { %s = { %s | DEFAULT } |\n"
    4254              :                       "                 ( %s [, ...] ) = [ ROW ] ( { %s | DEFAULT } [, ...] ) |\n"
    4255              :                       "                 ( %s [, ...] ) = ( %s )\n"
    4256              :                       "               } [, ...]\n"
    4257              :                       "\n"
    4258              :                       "%s\n"
    4259              :                       "\n"
    4260              :                       "    DELETE",
    4261              :                       _("with_query"),
    4262              :                       _("target_table_name"),
    4263              :                       _("target_alias"),
    4264              :                       _("data_source"),
    4265              :                       _("join_condition"),
    4266              :                       _("when_clause"),
    4267              :                       _("output_alias"),
    4268              :                       _("output_expression"),
    4269              :                       _("output_name"),
    4270              :                       _("where data_source is:"),
    4271              :                       _("source_table_name"),
    4272              :                       _("source_query"),
    4273              :                       _("source_alias"),
    4274              :                       _("and when_clause is:"),
    4275              :                       _("condition"),
    4276              :                       _("merge_update"),
    4277              :                       _("merge_delete"),
    4278              :                       _("condition"),
    4279              :                       _("merge_update"),
    4280              :                       _("merge_delete"),
    4281              :                       _("condition"),
    4282              :                       _("merge_insert"),
    4283              :                       _("and merge_insert is:"),
    4284              :                       _("column_name"),
    4285              :                       _("expression"),
    4286              :                       _("and merge_update is:"),
    4287              :                       _("column_name"),
    4288              :                       _("expression"),
    4289              :                       _("column_name"),
    4290              :                       _("expression"),
    4291              :                       _("column_name"),
    4292              :                       _("sub-SELECT"),
    4293              :                       _("and merge_delete is:"));
    4294            0 : }
    4295              : 
    4296              : static void
    4297            0 : sql_help_MOVE(PQExpBuffer buf)
    4298              : {
    4299            0 :     appendPQExpBuffer(buf,
    4300              :                       "MOVE [ %s ] [ FROM | IN ] %s\n"
    4301              :                       "\n"
    4302              :                       "%s\n"
    4303              :                       "\n"
    4304              :                       "    NEXT\n"
    4305              :                       "    PRIOR\n"
    4306              :                       "    FIRST\n"
    4307              :                       "    LAST\n"
    4308              :                       "    ABSOLUTE %s\n"
    4309              :                       "    RELATIVE %s\n"
    4310              :                       "    %s\n"
    4311              :                       "    ALL\n"
    4312              :                       "    FORWARD\n"
    4313              :                       "    FORWARD %s\n"
    4314              :                       "    FORWARD ALL\n"
    4315              :                       "    BACKWARD\n"
    4316              :                       "    BACKWARD %s\n"
    4317              :                       "    BACKWARD ALL",
    4318              :                       _("direction"),
    4319              :                       _("cursor_name"),
    4320              :                       _("where direction can be one of:"),
    4321              :                       _("count"),
    4322              :                       _("count"),
    4323              :                       _("count"),
    4324              :                       _("count"),
    4325              :                       _("count"));
    4326            0 : }
    4327              : 
    4328              : static void
    4329            0 : sql_help_NOTIFY(PQExpBuffer buf)
    4330              : {
    4331            0 :     appendPQExpBuffer(buf,
    4332              :                       "NOTIFY %s [ , %s ]",
    4333              :                       _("channel"),
    4334              :                       _("payload"));
    4335            0 : }
    4336              : 
    4337              : static void
    4338            0 : sql_help_PREPARE(PQExpBuffer buf)
    4339              : {
    4340            0 :     appendPQExpBuffer(buf,
    4341              :                       "PREPARE %s [ ( %s [, ...] ) ] AS %s",
    4342              :                       _("name"),
    4343              :                       _("data_type"),
    4344              :                       _("statement"));
    4345            0 : }
    4346              : 
    4347              : static void
    4348            0 : sql_help_PREPARE_TRANSACTION(PQExpBuffer buf)
    4349              : {
    4350            0 :     appendPQExpBuffer(buf,
    4351              :                       "PREPARE TRANSACTION %s",
    4352              :                       _("transaction_id"));
    4353            0 : }
    4354              : 
    4355              : static void
    4356            0 : sql_help_REASSIGN_OWNED(PQExpBuffer buf)
    4357              : {
    4358            0 :     appendPQExpBuffer(buf,
    4359              :                       "REASSIGN OWNED BY { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...]\n"
    4360              :                       "               TO { %s | CURRENT_ROLE | CURRENT_USER | SESSION_USER }",
    4361              :                       _("old_role"),
    4362              :                       _("new_role"));
    4363            0 : }
    4364              : 
    4365              : static void
    4366            0 : sql_help_REFRESH_MATERIALIZED_VIEW(PQExpBuffer buf)
    4367              : {
    4368            0 :     appendPQExpBuffer(buf,
    4369              :                       "REFRESH MATERIALIZED VIEW [ CONCURRENTLY ] %s\n"
    4370              :                       "    [ WITH [ NO ] DATA ]",
    4371              :                       _("name"));
    4372            0 : }
    4373              : 
    4374              : static void
    4375            0 : sql_help_REINDEX(PQExpBuffer buf)
    4376              : {
    4377            0 :     appendPQExpBuffer(buf,
    4378              :                       "REINDEX [ ( %s [, ...] ) ] { INDEX | TABLE | SCHEMA } [ CONCURRENTLY ] %s\n"
    4379              :                       "REINDEX [ ( %s [, ...] ) ] { DATABASE | SYSTEM } [ CONCURRENTLY ] [ %s ]\n"
    4380              :                       "\n"
    4381              :                       "%s\n"
    4382              :                       "\n"
    4383              :                       "    CONCURRENTLY [ %s ]\n"
    4384              :                       "    TABLESPACE %s\n"
    4385              :                       "    VERBOSE [ %s ]",
    4386              :                       _("option"),
    4387              :                       _("name"),
    4388              :                       _("option"),
    4389              :                       _("name"),
    4390              :                       _("where option can be one of:"),
    4391              :                       _("boolean"),
    4392              :                       _("new_tablespace"),
    4393              :                       _("boolean"));
    4394            0 : }
    4395              : 
    4396              : static void
    4397            0 : sql_help_RELEASE_SAVEPOINT(PQExpBuffer buf)
    4398              : {
    4399            0 :     appendPQExpBuffer(buf,
    4400              :                       "RELEASE [ SAVEPOINT ] %s",
    4401              :                       _("savepoint_name"));
    4402            0 : }
    4403              : 
    4404              : static void
    4405            0 : sql_help_REPACK(PQExpBuffer buf)
    4406              : {
    4407            0 :     appendPQExpBuffer(buf,
    4408              :                       "REPACK [ ( %s [, ...] ) ] [ %s [ USING INDEX [ %s ] ] ]\n"
    4409              :                       "REPACK [ ( %s [, ...] ) ] USING INDEX\n"
    4410              :                       "\n"
    4411              :                       "%s\n"
    4412              :                       "\n"
    4413              :                       "    VERBOSE [ %s ]\n"
    4414              :                       "    ANALYZE [ %s ]\n"
    4415              :                       "    CONCURRENTLY [ %s ]\n"
    4416              :                       "\n"
    4417              :                       "%s\n"
    4418              :                       "\n"
    4419              :                       "    %s [ ( %s [, ...] ) ]",
    4420              :                       _("option"),
    4421              :                       _("table_and_columns"),
    4422              :                       _("index_name"),
    4423              :                       _("option"),
    4424              :                       _("where option can be one of:"),
    4425              :                       _("boolean"),
    4426              :                       _("boolean"),
    4427              :                       _("boolean"),
    4428              :                       _("and table_and_columns is:"),
    4429              :                       _("table_name"),
    4430              :                       _("column_name"));
    4431            0 : }
    4432              : 
    4433              : static void
    4434            0 : sql_help_RESET(PQExpBuffer buf)
    4435              : {
    4436            0 :     appendPQExpBuffer(buf,
    4437              :                       "RESET %s\n"
    4438              :                       "RESET ALL",
    4439              :                       _("configuration_parameter"));
    4440            0 : }
    4441              : 
    4442              : static void
    4443            0 : sql_help_REVOKE(PQExpBuffer buf)
    4444              : {
    4445            0 :     appendPQExpBuffer(buf,
    4446              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4447              :                       "    { { SELECT | INSERT | UPDATE | DELETE | TRUNCATE | REFERENCES | TRIGGER | MAINTAIN }\n"
    4448              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
    4449              :                       "    ON { [ TABLE ] %s [, ...]\n"
    4450              :                       "         | ALL TABLES IN SCHEMA %s [, ...] }\n"
    4451              :                       "    FROM %s [, ...]\n"
    4452              :                       "    [ GRANTED BY %s ]\n"
    4453              :                       "    [ CASCADE | RESTRICT ]\n"
    4454              :                       "\n"
    4455              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4456              :                       "    { { SELECT | INSERT | UPDATE | REFERENCES } ( %s [, ...] )\n"
    4457              :                       "    [, ...] | ALL [ PRIVILEGES ] ( %s [, ...] ) }\n"
    4458              :                       "    ON [ TABLE ] %s [, ...]\n"
    4459              :                       "    FROM %s [, ...]\n"
    4460              :                       "    [ GRANTED BY %s ]\n"
    4461              :                       "    [ CASCADE | RESTRICT ]\n"
    4462              :                       "\n"
    4463              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4464              :                       "    { { USAGE | SELECT | UPDATE }\n"
    4465              :                       "    [, ...] | ALL [ PRIVILEGES ] }\n"
    4466              :                       "    ON { SEQUENCE %s [, ...]\n"
    4467              :                       "         | ALL SEQUENCES IN SCHEMA %s [, ...] }\n"
    4468              :                       "    FROM %s [, ...]\n"
    4469              :                       "    [ GRANTED BY %s ]\n"
    4470              :                       "    [ CASCADE | RESTRICT ]\n"
    4471              :                       "\n"
    4472              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4473              :                       "    { { CREATE | CONNECT | TEMPORARY | TEMP } [, ...] | ALL [ PRIVILEGES ] }\n"
    4474              :                       "    ON DATABASE %s [, ...]\n"
    4475              :                       "    FROM %s [, ...]\n"
    4476              :                       "    [ GRANTED BY %s ]\n"
    4477              :                       "    [ CASCADE | RESTRICT ]\n"
    4478              :                       "\n"
    4479              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4480              :                       "    { USAGE | ALL [ PRIVILEGES ] }\n"
    4481              :                       "    ON DOMAIN %s [, ...]\n"
    4482              :                       "    FROM %s [, ...]\n"
    4483              :                       "    [ GRANTED BY %s ]\n"
    4484              :                       "    [ CASCADE | RESTRICT ]\n"
    4485              :                       "\n"
    4486              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4487              :                       "    { USAGE | ALL [ PRIVILEGES ] }\n"
    4488              :                       "    ON FOREIGN DATA WRAPPER %s [, ...]\n"
    4489              :                       "    FROM %s [, ...]\n"
    4490              :                       "    [ GRANTED BY %s ]\n"
    4491              :                       "    [ CASCADE | RESTRICT ]\n"
    4492              :                       "\n"
    4493              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4494              :                       "    { USAGE | ALL [ PRIVILEGES ] }\n"
    4495              :                       "    ON FOREIGN SERVER %s [, ...]\n"
    4496              :                       "    FROM %s [, ...]\n"
    4497              :                       "    [ GRANTED BY %s ]\n"
    4498              :                       "    [ CASCADE | RESTRICT ]\n"
    4499              :                       "\n"
    4500              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4501              :                       "    { EXECUTE | ALL [ PRIVILEGES ] }\n"
    4502              :                       "    ON { { FUNCTION | PROCEDURE | ROUTINE } %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] [, ...]\n"
    4503              :                       "         | ALL { FUNCTIONS | PROCEDURES | ROUTINES } IN SCHEMA %s [, ...] }\n"
    4504              :                       "    FROM %s [, ...]\n"
    4505              :                       "    [ GRANTED BY %s ]\n"
    4506              :                       "    [ CASCADE | RESTRICT ]\n"
    4507              :                       "\n"
    4508              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4509              :                       "    { USAGE | ALL [ PRIVILEGES ] }\n"
    4510              :                       "    ON LANGUAGE %s [, ...]\n"
    4511              :                       "    FROM %s [, ...]\n"
    4512              :                       "    [ GRANTED BY %s ]\n"
    4513              :                       "    [ CASCADE | RESTRICT ]\n"
    4514              :                       "\n"
    4515              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4516              :                       "    { { SELECT | UPDATE } [, ...] | ALL [ PRIVILEGES ] }\n"
    4517              :                       "    ON LARGE OBJECT %s [, ...]\n"
    4518              :                       "    FROM %s [, ...]\n"
    4519              :                       "    [ GRANTED BY %s ]\n"
    4520              :                       "    [ CASCADE | RESTRICT ]\n"
    4521              :                       "\n"
    4522              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4523              :                       "    { { SET | ALTER SYSTEM } [, ...] | ALL [ PRIVILEGES ] }\n"
    4524              :                       "    ON PARAMETER %s [, ...]\n"
    4525              :                       "    FROM %s [, ...]\n"
    4526              :                       "    [ GRANTED BY %s ]\n"
    4527              :                       "    [ CASCADE | RESTRICT ]\n"
    4528              :                       "\n"
    4529              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4530              :                       "    { { CREATE | USAGE } [, ...] | ALL [ PRIVILEGES ] }\n"
    4531              :                       "    ON SCHEMA %s [, ...]\n"
    4532              :                       "    FROM %s [, ...]\n"
    4533              :                       "    [ GRANTED BY %s ]\n"
    4534              :                       "    [ CASCADE | RESTRICT ]\n"
    4535              :                       "\n"
    4536              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4537              :                       "    { CREATE | ALL [ PRIVILEGES ] }\n"
    4538              :                       "    ON TABLESPACE %s [, ...]\n"
    4539              :                       "    FROM %s [, ...]\n"
    4540              :                       "    [ GRANTED BY %s ]\n"
    4541              :                       "    [ CASCADE | RESTRICT ]\n"
    4542              :                       "\n"
    4543              :                       "REVOKE [ GRANT OPTION FOR ]\n"
    4544              :                       "    { USAGE | ALL [ PRIVILEGES ] }\n"
    4545              :                       "    ON TYPE %s [, ...]\n"
    4546              :                       "    FROM %s [, ...]\n"
    4547              :                       "    [ GRANTED BY %s ]\n"
    4548              :                       "    [ CASCADE | RESTRICT ]\n"
    4549              :                       "\n"
    4550              :                       "REVOKE [ { ADMIN | INHERIT | SET } OPTION FOR ]\n"
    4551              :                       "    %s [, ...] FROM %s [, ...]\n"
    4552              :                       "    [ GRANTED BY %s ]\n"
    4553              :                       "    [ CASCADE | RESTRICT ]\n"
    4554              :                       "\n"
    4555              :                       "%s\n"
    4556              :                       "\n"
    4557              :                       "    [ GROUP ] %s\n"
    4558              :                       "  | PUBLIC\n"
    4559              :                       "  | CURRENT_ROLE\n"
    4560              :                       "  | CURRENT_USER\n"
    4561              :                       "  | SESSION_USER",
    4562              :                       _("table_name"),
    4563              :                       _("schema_name"),
    4564              :                       _("role_specification"),
    4565              :                       _("role_specification"),
    4566              :                       _("column_name"),
    4567              :                       _("column_name"),
    4568              :                       _("table_name"),
    4569              :                       _("role_specification"),
    4570              :                       _("role_specification"),
    4571              :                       _("sequence_name"),
    4572              :                       _("schema_name"),
    4573              :                       _("role_specification"),
    4574              :                       _("role_specification"),
    4575              :                       _("database_name"),
    4576              :                       _("role_specification"),
    4577              :                       _("role_specification"),
    4578              :                       _("domain_name"),
    4579              :                       _("role_specification"),
    4580              :                       _("role_specification"),
    4581              :                       _("fdw_name"),
    4582              :                       _("role_specification"),
    4583              :                       _("role_specification"),
    4584              :                       _("server_name"),
    4585              :                       _("role_specification"),
    4586              :                       _("role_specification"),
    4587              :                       _("function_name"),
    4588              :                       _("argmode"),
    4589              :                       _("arg_name"),
    4590              :                       _("arg_type"),
    4591              :                       _("schema_name"),
    4592              :                       _("role_specification"),
    4593              :                       _("role_specification"),
    4594              :                       _("lang_name"),
    4595              :                       _("role_specification"),
    4596              :                       _("role_specification"),
    4597              :                       _("loid"),
    4598              :                       _("role_specification"),
    4599              :                       _("role_specification"),
    4600              :                       _("configuration_parameter"),
    4601              :                       _("role_specification"),
    4602              :                       _("role_specification"),
    4603              :                       _("schema_name"),
    4604              :                       _("role_specification"),
    4605              :                       _("role_specification"),
    4606              :                       _("tablespace_name"),
    4607              :                       _("role_specification"),
    4608              :                       _("role_specification"),
    4609              :                       _("type_name"),
    4610              :                       _("role_specification"),
    4611              :                       _("role_specification"),
    4612              :                       _("role_name"),
    4613              :                       _("role_specification"),
    4614              :                       _("role_specification"),
    4615              :                       _("where role_specification can be:"),
    4616              :                       _("role_name"));
    4617            0 : }
    4618              : 
    4619              : static void
    4620            0 : sql_help_ROLLBACK(PQExpBuffer buf)
    4621              : {
    4622            0 :     appendPQExpBuffer(buf,
    4623              :                       "ROLLBACK [ WORK | TRANSACTION ] [ AND [ NO ] CHAIN ]");
    4624            0 : }
    4625              : 
    4626              : static void
    4627            0 : sql_help_ROLLBACK_PREPARED(PQExpBuffer buf)
    4628              : {
    4629            0 :     appendPQExpBuffer(buf,
    4630              :                       "ROLLBACK PREPARED %s",
    4631              :                       _("transaction_id"));
    4632            0 : }
    4633              : 
    4634              : static void
    4635            0 : sql_help_ROLLBACK_TO_SAVEPOINT(PQExpBuffer buf)
    4636              : {
    4637            0 :     appendPQExpBuffer(buf,
    4638              :                       "ROLLBACK [ WORK | TRANSACTION ] TO [ SAVEPOINT ] %s",
    4639              :                       _("savepoint_name"));
    4640            0 : }
    4641              : 
    4642              : static void
    4643            0 : sql_help_SAVEPOINT(PQExpBuffer buf)
    4644              : {
    4645            0 :     appendPQExpBuffer(buf,
    4646              :                       "SAVEPOINT %s",
    4647              :                       _("savepoint_name"));
    4648            0 : }
    4649              : 
    4650              : static void
    4651            0 : sql_help_SECURITY_LABEL(PQExpBuffer buf)
    4652              : {
    4653            0 :     appendPQExpBuffer(buf,
    4654              :                       "SECURITY LABEL [ FOR %s ] ON\n"
    4655              :                       "{\n"
    4656              :                       "  TABLE %s |\n"
    4657              :                       "  COLUMN %s.%s |\n"
    4658              :                       "  AGGREGATE %s ( %s ) |\n"
    4659              :                       "  DATABASE %s |\n"
    4660              :                       "  DOMAIN %s |\n"
    4661              :                       "  EVENT TRIGGER %s |\n"
    4662              :                       "  FOREIGN TABLE %s |\n"
    4663              :                       "  FUNCTION %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
    4664              :                       "  LARGE OBJECT %s |\n"
    4665              :                       "  MATERIALIZED VIEW %s |\n"
    4666              :                       "  [ PROCEDURAL ] LANGUAGE %s |\n"
    4667              :                       "  PROCEDURE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
    4668              :                       "  PUBLICATION %s |\n"
    4669              :                       "  ROLE %s |\n"
    4670              :                       "  ROUTINE %s [ ( [ [ %s ] [ %s ] %s [, ...] ] ) ] |\n"
    4671              :                       "  SCHEMA %s |\n"
    4672              :                       "  SEQUENCE %s |\n"
    4673              :                       "  SUBSCRIPTION %s |\n"
    4674              :                       "  TABLESPACE %s |\n"
    4675              :                       "  TYPE %s |\n"
    4676              :                       "  VIEW %s\n"
    4677              :                       "} IS { %s | NULL }\n"
    4678              :                       "\n"
    4679              :                       "%s\n"
    4680              :                       "\n"
    4681              :                       "* |\n"
    4682              :                       "[ %s ] [ %s ] %s [ , ... ] |\n"
    4683              :                       "[ [ %s ] [ %s ] %s [ , ... ] ] ORDER BY [ %s ] [ %s ] %s [ , ... ]",
    4684              :                       _("provider"),
    4685              :                       _("object_name"),
    4686              :                       _("table_name"),
    4687              :                       _("column_name"),
    4688              :                       _("aggregate_name"),
    4689              :                       _("aggregate_signature"),
    4690              :                       _("object_name"),
    4691              :                       _("object_name"),
    4692              :                       _("object_name"),
    4693              :                       _("object_name"),
    4694              :                       _("function_name"),
    4695              :                       _("argmode"),
    4696              :                       _("argname"),
    4697              :                       _("argtype"),
    4698              :                       _("large_object_oid"),
    4699              :                       _("object_name"),
    4700              :                       _("object_name"),
    4701              :                       _("procedure_name"),
    4702              :                       _("argmode"),
    4703              :                       _("argname"),
    4704              :                       _("argtype"),
    4705              :                       _("object_name"),
    4706              :                       _("object_name"),
    4707              :                       _("routine_name"),
    4708              :                       _("argmode"),
    4709              :                       _("argname"),
    4710              :                       _("argtype"),
    4711              :                       _("object_name"),
    4712              :                       _("object_name"),
    4713              :                       _("object_name"),
    4714              :                       _("object_name"),
    4715              :                       _("object_name"),
    4716              :                       _("object_name"),
    4717              :                       _("string_literal"),
    4718              :                       _("where aggregate_signature is:"),
    4719              :                       _("argmode"),
    4720              :                       _("argname"),
    4721              :                       _("argtype"),
    4722              :                       _("argmode"),
    4723              :                       _("argname"),
    4724              :                       _("argtype"),
    4725              :                       _("argmode"),
    4726              :                       _("argname"),
    4727              :                       _("argtype"));
    4728            0 : }
    4729              : 
    4730              : static void
    4731            1 : sql_help_SELECT(PQExpBuffer buf)
    4732              : {
    4733            1 :     appendPQExpBuffer(buf,
    4734              :                       "[ WITH [ RECURSIVE ] %s [, ...] ]\n"
    4735              :                       "SELECT [ ALL | DISTINCT [ ON ( %s [, ...] ) ] ]\n"
    4736              :                       "    [ { * | %s [ [ AS ] %s ] } [, ...] ]\n"
    4737              :                       "    [ FROM %s [, ...] ]\n"
    4738              :                       "    [ WHERE %s ]\n"
    4739              :                       "    [ GROUP BY [ ALL | DISTINCT ] %s [, ...] ]\n"
    4740              :                       "    [ HAVING %s ]\n"
    4741              :                       "    [ WINDOW %s AS ( %s ) [, ...] ]\n"
    4742              :                       "    [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] %s ]\n"
    4743              :                       "    [ ORDER BY %s [ ASC | DESC | USING %s ] [ NULLS { FIRST | LAST } ] [, ...] ]\n"
    4744              :                       "    [ LIMIT { %s | ALL } ]\n"
    4745              :                       "    [ OFFSET %s [ ROW | ROWS ] ]\n"
    4746              :                       "    [ FETCH { FIRST | NEXT } [ %s ] { ROW | ROWS } { ONLY | WITH TIES } ]\n"
    4747              :                       "    [ FOR { UPDATE | NO KEY UPDATE | SHARE | KEY SHARE } [ OF %s [, ...] ] [ NOWAIT | SKIP LOCKED ] [...] ]\n"
    4748              :                       "\n"
    4749              :                       "%s\n"
    4750              :                       "\n"
    4751              :                       "    [ ONLY ] %s [ * ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    4752              :                       "                [ TABLESAMPLE %s ( %s [, ...] ) [ REPEATABLE ( %s ) ] ]\n"
    4753              :                       "    [ LATERAL ] ( %s ) [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    4754              :                       "    %s [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    4755              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] )\n"
    4756              :                       "                [ WITH ORDINALITY ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    4757              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] ) [ AS ] %s ( %s [, ...] )\n"
    4758              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] ) AS ( %s [, ...] )\n"
    4759              :                       "    [ LATERAL ] ROWS FROM( %s ( [ %s [, ...] ] ) [ AS ( %s [, ...] ) ] [, ...] )\n"
    4760              :                       "                [ WITH ORDINALITY ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    4761              :                       "    %s %s %s { ON %s | USING ( %s [, ...] ) [ AS %s ] }\n"
    4762              :                       "    %s NATURAL %s %s\n"
    4763              :                       "    %s CROSS JOIN %s\n"
    4764              :                       "\n"
    4765              :                       "%s\n"
    4766              :                       "\n"
    4767              :                       "    ( )\n"
    4768              :                       "    %s\n"
    4769              :                       "    ( %s [, ...] )\n"
    4770              :                       "    ROLLUP ( { %s | ( %s [, ...] ) } [, ...] )\n"
    4771              :                       "    CUBE ( { %s | ( %s [, ...] ) } [, ...] )\n"
    4772              :                       "    GROUPING SETS ( %s [, ...] )\n"
    4773              :                       "\n"
    4774              :                       "%s\n"
    4775              :                       "\n"
    4776              :                       "    %s [ ( %s [, ...] ) ] AS [ [ NOT ] MATERIALIZED ] ( %s | %s | %s | %s | %s | %s )\n"
    4777              :                       "        [ SEARCH { BREADTH | DEPTH } FIRST BY %s [, ...] SET %s ]\n"
    4778              :                       "        [ CYCLE %s [, ...] SET %s [ TO %s DEFAULT %s ] USING %s ]\n"
    4779              :                       "\n"
    4780              :                       "TABLE [ ONLY ] %s [ * ]",
    4781              :                       _("with_query"),
    4782              :                       _("expression"),
    4783              :                       _("expression"),
    4784              :                       _("output_name"),
    4785              :                       _("from_item"),
    4786              :                       _("condition"),
    4787              :                       _("grouping_element"),
    4788              :                       _("condition"),
    4789              :                       _("window_name"),
    4790              :                       _("window_definition"),
    4791              :                       _("select"),
    4792              :                       _("expression"),
    4793              :                       _("operator"),
    4794              :                       _("count"),
    4795              :                       _("start"),
    4796              :                       _("count"),
    4797              :                       _("from_reference"),
    4798              :                       _("where from_item can be one of:"),
    4799              :                       _("table_name"),
    4800              :                       _("alias"),
    4801              :                       _("column_alias"),
    4802              :                       _("sampling_method"),
    4803              :                       _("argument"),
    4804              :                       _("seed"),
    4805              :                       _("select"),
    4806              :                       _("alias"),
    4807              :                       _("column_alias"),
    4808              :                       _("with_query_name"),
    4809              :                       _("alias"),
    4810              :                       _("column_alias"),
    4811              :                       _("function_name"),
    4812              :                       _("argument"),
    4813              :                       _("alias"),
    4814              :                       _("column_alias"),
    4815              :                       _("function_name"),
    4816              :                       _("argument"),
    4817              :                       _("alias"),
    4818              :                       _("column_definition"),
    4819              :                       _("function_name"),
    4820              :                       _("argument"),
    4821              :                       _("column_definition"),
    4822              :                       _("function_name"),
    4823              :                       _("argument"),
    4824              :                       _("column_definition"),
    4825              :                       _("alias"),
    4826              :                       _("column_alias"),
    4827              :                       _("from_item"),
    4828              :                       _("join_type"),
    4829              :                       _("from_item"),
    4830              :                       _("join_condition"),
    4831              :                       _("join_column"),
    4832              :                       _("join_using_alias"),
    4833              :                       _("from_item"),
    4834              :                       _("join_type"),
    4835              :                       _("from_item"),
    4836              :                       _("from_item"),
    4837              :                       _("from_item"),
    4838              :                       _("and grouping_element can be one of:"),
    4839              :                       _("expression"),
    4840              :                       _("expression"),
    4841              :                       _("expression"),
    4842              :                       _("expression"),
    4843              :                       _("expression"),
    4844              :                       _("expression"),
    4845              :                       _("grouping_element"),
    4846              :                       _("and with_query is:"),
    4847              :                       _("with_query_name"),
    4848              :                       _("column_name"),
    4849              :                       _("select"),
    4850              :                       _("values"),
    4851              :                       _("insert"),
    4852              :                       _("update"),
    4853              :                       _("delete"),
    4854              :                       _("merge"),
    4855              :                       _("column_name"),
    4856              :                       _("search_seq_col_name"),
    4857              :                       _("column_name"),
    4858              :                       _("cycle_mark_col_name"),
    4859              :                       _("cycle_mark_value"),
    4860              :                       _("cycle_mark_default"),
    4861              :                       _("cycle_path_col_name"),
    4862              :                       _("table_name"));
    4863            1 : }
    4864              : 
    4865              : static void
    4866            0 : sql_help_SELECT_INTO(PQExpBuffer buf)
    4867              : {
    4868            0 :     appendPQExpBuffer(buf,
    4869              :                       "[ WITH [ RECURSIVE ] %s [, ...] ]\n"
    4870              :                       "SELECT [ ALL | DISTINCT [ ON ( %s [, ...] ) ] ]\n"
    4871              :                       "    [ { * | %s [ [ AS ] %s ] } [, ...] ]\n"
    4872              :                       "    INTO [ TEMPORARY | TEMP | UNLOGGED ] [ TABLE ] %s\n"
    4873              :                       "    [ FROM %s [, ...] ]\n"
    4874              :                       "    [ WHERE %s ]\n"
    4875              :                       "    [ GROUP BY [ ALL | DISTINCT ] %s [, ...] ]\n"
    4876              :                       "    [ HAVING %s ]\n"
    4877              :                       "    [ WINDOW %s AS ( %s ) [, ...] ]\n"
    4878              :                       "    [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] %s ]\n"
    4879              :                       "    [ ORDER BY %s [ ASC | DESC | USING %s ] [ NULLS { FIRST | LAST } ] [, ...] ]\n"
    4880              :                       "    [ LIMIT { %s | ALL } ]\n"
    4881              :                       "    [ OFFSET %s [ ROW | ROWS ] ]\n"
    4882              :                       "    [ FETCH { FIRST | NEXT } [ %s ] { ROW | ROWS } { ONLY | WITH TIES } ]\n"
    4883              :                       "    [ FOR { UPDATE | NO KEY UPDATE | SHARE | KEY SHARE } [ OF %s [, ...] ] [ NOWAIT | SKIP LOCKED ] [...] ]",
    4884              :                       _("with_query"),
    4885              :                       _("expression"),
    4886              :                       _("expression"),
    4887              :                       _("output_name"),
    4888              :                       _("new_table"),
    4889              :                       _("from_item"),
    4890              :                       _("condition"),
    4891              :                       _("grouping_element"),
    4892              :                       _("condition"),
    4893              :                       _("window_name"),
    4894              :                       _("window_definition"),
    4895              :                       _("select"),
    4896              :                       _("expression"),
    4897              :                       _("operator"),
    4898              :                       _("count"),
    4899              :                       _("start"),
    4900              :                       _("count"),
    4901              :                       _("from_reference"));
    4902            0 : }
    4903              : 
    4904              : static void
    4905            0 : sql_help_SET(PQExpBuffer buf)
    4906              : {
    4907            0 :     appendPQExpBuffer(buf,
    4908              :                       "SET [ SESSION | LOCAL ] %s { TO | = } { %s [, ...] | DEFAULT }\n"
    4909              :                       "SET [ SESSION | LOCAL ] TIME ZONE { %s | LOCAL | DEFAULT }",
    4910              :                       _("configuration_parameter"),
    4911              :                       _("value"),
    4912              :                       _("value"));
    4913            0 : }
    4914              : 
    4915              : static void
    4916            0 : sql_help_SET_CONSTRAINTS(PQExpBuffer buf)
    4917              : {
    4918            0 :     appendPQExpBuffer(buf,
    4919              :                       "SET CONSTRAINTS { ALL | %s [, ...] } { DEFERRED | IMMEDIATE }",
    4920              :                       _("name"));
    4921            0 : }
    4922              : 
    4923              : static void
    4924            0 : sql_help_SET_ROLE(PQExpBuffer buf)
    4925              : {
    4926            0 :     appendPQExpBuffer(buf,
    4927              :                       "SET [ SESSION | LOCAL ] ROLE %s\n"
    4928              :                       "SET [ SESSION | LOCAL ] ROLE NONE\n"
    4929              :                       "RESET ROLE",
    4930              :                       _("role_name"));
    4931            0 : }
    4932              : 
    4933              : static void
    4934            0 : sql_help_SET_SESSION_AUTHORIZATION(PQExpBuffer buf)
    4935              : {
    4936            0 :     appendPQExpBuffer(buf,
    4937              :                       "SET [ SESSION | LOCAL ] SESSION AUTHORIZATION %s\n"
    4938              :                       "SET [ SESSION | LOCAL ] SESSION AUTHORIZATION DEFAULT\n"
    4939              :                       "RESET SESSION AUTHORIZATION",
    4940              :                       _("user_name"));
    4941            0 : }
    4942              : 
    4943              : static void
    4944            0 : sql_help_SET_TRANSACTION(PQExpBuffer buf)
    4945              : {
    4946            0 :     appendPQExpBuffer(buf,
    4947              :                       "SET TRANSACTION %s [, ...]\n"
    4948              :                       "SET TRANSACTION SNAPSHOT %s\n"
    4949              :                       "SET SESSION CHARACTERISTICS AS TRANSACTION %s [, ...]\n"
    4950              :                       "\n"
    4951              :                       "%s\n"
    4952              :                       "\n"
    4953              :                       "    ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }\n"
    4954              :                       "    READ WRITE | READ ONLY\n"
    4955              :                       "    [ NOT ] DEFERRABLE",
    4956              :                       _("transaction_mode"),
    4957              :                       _("snapshot_id"),
    4958              :                       _("transaction_mode"),
    4959              :                       _("where transaction_mode is one of:"));
    4960            0 : }
    4961              : 
    4962              : static void
    4963            0 : sql_help_SHOW(PQExpBuffer buf)
    4964              : {
    4965            0 :     appendPQExpBuffer(buf,
    4966              :                       "SHOW %s\n"
    4967              :                       "SHOW ALL",
    4968              :                       _("name"));
    4969            0 : }
    4970              : 
    4971              : static void
    4972            0 : sql_help_START_TRANSACTION(PQExpBuffer buf)
    4973              : {
    4974            0 :     appendPQExpBuffer(buf,
    4975              :                       "START TRANSACTION [ %s [, ...] ]\n"
    4976              :                       "\n"
    4977              :                       "%s\n"
    4978              :                       "\n"
    4979              :                       "    ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }\n"
    4980              :                       "    READ WRITE | READ ONLY\n"
    4981              :                       "    [ NOT ] DEFERRABLE",
    4982              :                       _("transaction_mode"),
    4983              :                       _("where transaction_mode is one of:"));
    4984            0 : }
    4985              : 
    4986              : static void
    4987            0 : sql_help_TABLE(PQExpBuffer buf)
    4988              : {
    4989            0 :     appendPQExpBuffer(buf,
    4990              :                       "[ WITH [ RECURSIVE ] %s [, ...] ]\n"
    4991              :                       "SELECT [ ALL | DISTINCT [ ON ( %s [, ...] ) ] ]\n"
    4992              :                       "    [ { * | %s [ [ AS ] %s ] } [, ...] ]\n"
    4993              :                       "    [ FROM %s [, ...] ]\n"
    4994              :                       "    [ WHERE %s ]\n"
    4995              :                       "    [ GROUP BY [ ALL | DISTINCT ] %s [, ...] ]\n"
    4996              :                       "    [ HAVING %s ]\n"
    4997              :                       "    [ WINDOW %s AS ( %s ) [, ...] ]\n"
    4998              :                       "    [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] %s ]\n"
    4999              :                       "    [ ORDER BY %s [ ASC | DESC | USING %s ] [ NULLS { FIRST | LAST } ] [, ...] ]\n"
    5000              :                       "    [ LIMIT { %s | ALL } ]\n"
    5001              :                       "    [ OFFSET %s [ ROW | ROWS ] ]\n"
    5002              :                       "    [ FETCH { FIRST | NEXT } [ %s ] { ROW | ROWS } { ONLY | WITH TIES } ]\n"
    5003              :                       "    [ FOR { UPDATE | NO KEY UPDATE | SHARE | KEY SHARE } [ OF %s [, ...] ] [ NOWAIT | SKIP LOCKED ] [...] ]\n"
    5004              :                       "\n"
    5005              :                       "%s\n"
    5006              :                       "\n"
    5007              :                       "    [ ONLY ] %s [ * ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5008              :                       "                [ TABLESAMPLE %s ( %s [, ...] ) [ REPEATABLE ( %s ) ] ]\n"
    5009              :                       "    [ LATERAL ] ( %s ) [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5010              :                       "    %s [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5011              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] )\n"
    5012              :                       "                [ WITH ORDINALITY ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5013              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] ) [ AS ] %s ( %s [, ...] )\n"
    5014              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] ) AS ( %s [, ...] )\n"
    5015              :                       "    [ LATERAL ] ROWS FROM( %s ( [ %s [, ...] ] ) [ AS ( %s [, ...] ) ] [, ...] )\n"
    5016              :                       "                [ WITH ORDINALITY ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5017              :                       "    %s %s %s { ON %s | USING ( %s [, ...] ) [ AS %s ] }\n"
    5018              :                       "    %s NATURAL %s %s\n"
    5019              :                       "    %s CROSS JOIN %s\n"
    5020              :                       "\n"
    5021              :                       "%s\n"
    5022              :                       "\n"
    5023              :                       "    ( )\n"
    5024              :                       "    %s\n"
    5025              :                       "    ( %s [, ...] )\n"
    5026              :                       "    ROLLUP ( { %s | ( %s [, ...] ) } [, ...] )\n"
    5027              :                       "    CUBE ( { %s | ( %s [, ...] ) } [, ...] )\n"
    5028              :                       "    GROUPING SETS ( %s [, ...] )\n"
    5029              :                       "\n"
    5030              :                       "%s\n"
    5031              :                       "\n"
    5032              :                       "    %s [ ( %s [, ...] ) ] AS [ [ NOT ] MATERIALIZED ] ( %s | %s | %s | %s | %s | %s )\n"
    5033              :                       "        [ SEARCH { BREADTH | DEPTH } FIRST BY %s [, ...] SET %s ]\n"
    5034              :                       "        [ CYCLE %s [, ...] SET %s [ TO %s DEFAULT %s ] USING %s ]\n"
    5035              :                       "\n"
    5036              :                       "TABLE [ ONLY ] %s [ * ]",
    5037              :                       _("with_query"),
    5038              :                       _("expression"),
    5039              :                       _("expression"),
    5040              :                       _("output_name"),
    5041              :                       _("from_item"),
    5042              :                       _("condition"),
    5043              :                       _("grouping_element"),
    5044              :                       _("condition"),
    5045              :                       _("window_name"),
    5046              :                       _("window_definition"),
    5047              :                       _("select"),
    5048              :                       _("expression"),
    5049              :                       _("operator"),
    5050              :                       _("count"),
    5051              :                       _("start"),
    5052              :                       _("count"),
    5053              :                       _("from_reference"),
    5054              :                       _("where from_item can be one of:"),
    5055              :                       _("table_name"),
    5056              :                       _("alias"),
    5057              :                       _("column_alias"),
    5058              :                       _("sampling_method"),
    5059              :                       _("argument"),
    5060              :                       _("seed"),
    5061              :                       _("select"),
    5062              :                       _("alias"),
    5063              :                       _("column_alias"),
    5064              :                       _("with_query_name"),
    5065              :                       _("alias"),
    5066              :                       _("column_alias"),
    5067              :                       _("function_name"),
    5068              :                       _("argument"),
    5069              :                       _("alias"),
    5070              :                       _("column_alias"),
    5071              :                       _("function_name"),
    5072              :                       _("argument"),
    5073              :                       _("alias"),
    5074              :                       _("column_definition"),
    5075              :                       _("function_name"),
    5076              :                       _("argument"),
    5077              :                       _("column_definition"),
    5078              :                       _("function_name"),
    5079              :                       _("argument"),
    5080              :                       _("column_definition"),
    5081              :                       _("alias"),
    5082              :                       _("column_alias"),
    5083              :                       _("from_item"),
    5084              :                       _("join_type"),
    5085              :                       _("from_item"),
    5086              :                       _("join_condition"),
    5087              :                       _("join_column"),
    5088              :                       _("join_using_alias"),
    5089              :                       _("from_item"),
    5090              :                       _("join_type"),
    5091              :                       _("from_item"),
    5092              :                       _("from_item"),
    5093              :                       _("from_item"),
    5094              :                       _("and grouping_element can be one of:"),
    5095              :                       _("expression"),
    5096              :                       _("expression"),
    5097              :                       _("expression"),
    5098              :                       _("expression"),
    5099              :                       _("expression"),
    5100              :                       _("expression"),
    5101              :                       _("grouping_element"),
    5102              :                       _("and with_query is:"),
    5103              :                       _("with_query_name"),
    5104              :                       _("column_name"),
    5105              :                       _("select"),
    5106              :                       _("values"),
    5107              :                       _("insert"),
    5108              :                       _("update"),
    5109              :                       _("delete"),
    5110              :                       _("merge"),
    5111              :                       _("column_name"),
    5112              :                       _("search_seq_col_name"),
    5113              :                       _("column_name"),
    5114              :                       _("cycle_mark_col_name"),
    5115              :                       _("cycle_mark_value"),
    5116              :                       _("cycle_mark_default"),
    5117              :                       _("cycle_path_col_name"),
    5118              :                       _("table_name"));
    5119            0 : }
    5120              : 
    5121              : static void
    5122            0 : sql_help_TRUNCATE(PQExpBuffer buf)
    5123              : {
    5124            0 :     appendPQExpBuffer(buf,
    5125              :                       "TRUNCATE [ TABLE ] [ ONLY ] %s [ * ] [, ... ]\n"
    5126              :                       "    [ RESTART IDENTITY | CONTINUE IDENTITY ] [ CASCADE | RESTRICT ]",
    5127              :                       _("name"));
    5128            0 : }
    5129              : 
    5130              : static void
    5131            0 : sql_help_UNLISTEN(PQExpBuffer buf)
    5132              : {
    5133            0 :     appendPQExpBuffer(buf,
    5134              :                       "UNLISTEN { %s | * }",
    5135              :                       _("channel"));
    5136            0 : }
    5137              : 
    5138              : static void
    5139            0 : sql_help_UPDATE(PQExpBuffer buf)
    5140              : {
    5141            0 :     appendPQExpBuffer(buf,
    5142              :                       "[ WITH [ RECURSIVE ] %s [, ...] ]\n"
    5143              :                       "UPDATE [ ONLY ] %s [ * ] [ [ AS ] %s ]\n"
    5144              :                       "    SET { %s = { %s | DEFAULT } |\n"
    5145              :                       "          ( %s [, ...] ) = [ ROW ] ( { %s | DEFAULT } [, ...] ) |\n"
    5146              :                       "          ( %s [, ...] ) = ( %s )\n"
    5147              :                       "        } [, ...]\n"
    5148              :                       "    [ FROM %s [, ...] ]\n"
    5149              :                       "    [ WHERE %s | WHERE CURRENT OF %s ]\n"
    5150              :                       "    [ RETURNING [ WITH ( { OLD | NEW } AS %s [, ...] ) ]\n"
    5151              :                       "                { * | %s [ [ AS ] %s ] } [, ...] ]",
    5152              :                       _("with_query"),
    5153              :                       _("table_name"),
    5154              :                       _("alias"),
    5155              :                       _("column_name"),
    5156              :                       _("expression"),
    5157              :                       _("column_name"),
    5158              :                       _("expression"),
    5159              :                       _("column_name"),
    5160              :                       _("sub-SELECT"),
    5161              :                       _("from_item"),
    5162              :                       _("condition"),
    5163              :                       _("cursor_name"),
    5164              :                       _("output_alias"),
    5165              :                       _("output_expression"),
    5166              :                       _("output_name"));
    5167            0 : }
    5168              : 
    5169              : static void
    5170            0 : sql_help_VACUUM(PQExpBuffer buf)
    5171              : {
    5172            0 :     appendPQExpBuffer(buf,
    5173              :                       "VACUUM [ ( %s [, ...] ) ] [ %s [, ...] ]\n"
    5174              :                       "\n"
    5175              :                       "%s\n"
    5176              :                       "\n"
    5177              :                       "    FREEZE [ %s ]\n"
    5178              :                       "    VERBOSE [ %s ]\n"
    5179              :                       "    ANALYZE [ %s ]\n"
    5180              :                       "    DISABLE_PAGE_SKIPPING [ %s ]\n"
    5181              :                       "    SKIP_LOCKED [ %s ]\n"
    5182              :                       "    INDEX_CLEANUP { AUTO | ON | OFF }\n"
    5183              :                       "    PROCESS_MAIN [ %s ]\n"
    5184              :                       "    PROCESS_TOAST [ %s ]\n"
    5185              :                       "    TRUNCATE [ %s ]\n"
    5186              :                       "    PARALLEL %s\n"
    5187              :                       "    SKIP_DATABASE_STATS [ %s ]\n"
    5188              :                       "    ONLY_DATABASE_STATS [ %s ]\n"
    5189              :                       "    BUFFER_USAGE_LIMIT %s\n"
    5190              :                       "    FULL [ %s ]\n"
    5191              :                       "\n"
    5192              :                       "%s\n"
    5193              :                       "\n"
    5194              :                       "    [ ONLY ] %s [ * ] [ ( %s [, ...] ) ]",
    5195              :                       _("option"),
    5196              :                       _("table_and_columns"),
    5197              :                       _("where option can be one of:"),
    5198              :                       _("boolean"),
    5199              :                       _("boolean"),
    5200              :                       _("boolean"),
    5201              :                       _("boolean"),
    5202              :                       _("boolean"),
    5203              :                       _("boolean"),
    5204              :                       _("boolean"),
    5205              :                       _("boolean"),
    5206              :                       _("integer"),
    5207              :                       _("boolean"),
    5208              :                       _("boolean"),
    5209              :                       _("size"),
    5210              :                       _("boolean"),
    5211              :                       _("and table_and_columns is:"),
    5212              :                       _("table_name"),
    5213              :                       _("column_name"));
    5214            0 : }
    5215              : 
    5216              : static void
    5217            0 : sql_help_VALUES(PQExpBuffer buf)
    5218              : {
    5219            0 :     appendPQExpBuffer(buf,
    5220              :                       "VALUES ( %s [, ...] ) [, ...]\n"
    5221              :                       "    [ ORDER BY %s [ ASC | DESC | USING %s ] [, ...] ]\n"
    5222              :                       "    [ LIMIT { %s | ALL } ]\n"
    5223              :                       "    [ OFFSET %s [ ROW | ROWS ] ]\n"
    5224              :                       "    [ FETCH { FIRST | NEXT } [ %s ] { ROW | ROWS } ONLY ]",
    5225              :                       _("expression"),
    5226              :                       _("sort_expression"),
    5227              :                       _("operator"),
    5228              :                       _("count"),
    5229              :                       _("start"),
    5230              :                       _("count"));
    5231            0 : }
    5232              : 
    5233              : static void
    5234            0 : sql_help_WAIT(PQExpBuffer buf)
    5235              : {
    5236            0 :     appendPQExpBuffer(buf,
    5237              :                       "WAIT FOR LSN '%s'\n"
    5238              :                       "    [ WITH ( %s [, ...] ) ]\n"
    5239              :                       "\n"
    5240              :                       "%s\n"
    5241              :                       "\n"
    5242              :                       "    MODE '%s'\n"
    5243              :                       "    TIMEOUT '%s'\n"
    5244              :                       "    NO_THROW\n"
    5245              :                       "\n"
    5246              :                       "%s\n"
    5247              :                       "\n"
    5248              :                       "    standby_replay | standby_write | standby_flush | primary_flush",
    5249              :                       _("lsn"),
    5250              :                       _("option"),
    5251              :                       _("where option can be:"),
    5252              :                       _("mode"),
    5253              :                       _("timeout"),
    5254              :                       _("and mode can be:"));
    5255            0 : }
    5256              : 
    5257              : static void
    5258            0 : sql_help_WITH(PQExpBuffer buf)
    5259              : {
    5260            0 :     appendPQExpBuffer(buf,
    5261              :                       "[ WITH [ RECURSIVE ] %s [, ...] ]\n"
    5262              :                       "SELECT [ ALL | DISTINCT [ ON ( %s [, ...] ) ] ]\n"
    5263              :                       "    [ { * | %s [ [ AS ] %s ] } [, ...] ]\n"
    5264              :                       "    [ FROM %s [, ...] ]\n"
    5265              :                       "    [ WHERE %s ]\n"
    5266              :                       "    [ GROUP BY [ ALL | DISTINCT ] %s [, ...] ]\n"
    5267              :                       "    [ HAVING %s ]\n"
    5268              :                       "    [ WINDOW %s AS ( %s ) [, ...] ]\n"
    5269              :                       "    [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] %s ]\n"
    5270              :                       "    [ ORDER BY %s [ ASC | DESC | USING %s ] [ NULLS { FIRST | LAST } ] [, ...] ]\n"
    5271              :                       "    [ LIMIT { %s | ALL } ]\n"
    5272              :                       "    [ OFFSET %s [ ROW | ROWS ] ]\n"
    5273              :                       "    [ FETCH { FIRST | NEXT } [ %s ] { ROW | ROWS } { ONLY | WITH TIES } ]\n"
    5274              :                       "    [ FOR { UPDATE | NO KEY UPDATE | SHARE | KEY SHARE } [ OF %s [, ...] ] [ NOWAIT | SKIP LOCKED ] [...] ]\n"
    5275              :                       "\n"
    5276              :                       "%s\n"
    5277              :                       "\n"
    5278              :                       "    [ ONLY ] %s [ * ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5279              :                       "                [ TABLESAMPLE %s ( %s [, ...] ) [ REPEATABLE ( %s ) ] ]\n"
    5280              :                       "    [ LATERAL ] ( %s ) [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5281              :                       "    %s [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5282              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] )\n"
    5283              :                       "                [ WITH ORDINALITY ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5284              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] ) [ AS ] %s ( %s [, ...] )\n"
    5285              :                       "    [ LATERAL ] %s ( [ %s [, ...] ] ) AS ( %s [, ...] )\n"
    5286              :                       "    [ LATERAL ] ROWS FROM( %s ( [ %s [, ...] ] ) [ AS ( %s [, ...] ) ] [, ...] )\n"
    5287              :                       "                [ WITH ORDINALITY ] [ [ AS ] %s [ ( %s [, ...] ) ] ]\n"
    5288              :                       "    %s %s %s { ON %s | USING ( %s [, ...] ) [ AS %s ] }\n"
    5289              :                       "    %s NATURAL %s %s\n"
    5290              :                       "    %s CROSS JOIN %s\n"
    5291              :                       "\n"
    5292              :                       "%s\n"
    5293              :                       "\n"
    5294              :                       "    ( )\n"
    5295              :                       "    %s\n"
    5296              :                       "    ( %s [, ...] )\n"
    5297              :                       "    ROLLUP ( { %s | ( %s [, ...] ) } [, ...] )\n"
    5298              :                       "    CUBE ( { %s | ( %s [, ...] ) } [, ...] )\n"
    5299              :                       "    GROUPING SETS ( %s [, ...] )\n"
    5300              :                       "\n"
    5301              :                       "%s\n"
    5302              :                       "\n"
    5303              :                       "    %s [ ( %s [, ...] ) ] AS [ [ NOT ] MATERIALIZED ] ( %s | %s | %s | %s | %s | %s )\n"
    5304              :                       "        [ SEARCH { BREADTH | DEPTH } FIRST BY %s [, ...] SET %s ]\n"
    5305              :                       "        [ CYCLE %s [, ...] SET %s [ TO %s DEFAULT %s ] USING %s ]\n"
    5306              :                       "\n"
    5307              :                       "TABLE [ ONLY ] %s [ * ]",
    5308              :                       _("with_query"),
    5309              :                       _("expression"),
    5310              :                       _("expression"),
    5311              :                       _("output_name"),
    5312              :                       _("from_item"),
    5313              :                       _("condition"),
    5314              :                       _("grouping_element"),
    5315              :                       _("condition"),
    5316              :                       _("window_name"),
    5317              :                       _("window_definition"),
    5318              :                       _("select"),
    5319              :                       _("expression"),
    5320              :                       _("operator"),
    5321              :                       _("count"),
    5322              :                       _("start"),
    5323              :                       _("count"),
    5324              :                       _("from_reference"),
    5325              :                       _("where from_item can be one of:"),
    5326              :                       _("table_name"),
    5327              :                       _("alias"),
    5328              :                       _("column_alias"),
    5329              :                       _("sampling_method"),
    5330              :                       _("argument"),
    5331              :                       _("seed"),
    5332              :                       _("select"),
    5333              :                       _("alias"),
    5334              :                       _("column_alias"),
    5335              :                       _("with_query_name"),
    5336              :                       _("alias"),
    5337              :                       _("column_alias"),
    5338              :                       _("function_name"),
    5339              :                       _("argument"),
    5340              :                       _("alias"),
    5341              :                       _("column_alias"),
    5342              :                       _("function_name"),
    5343              :                       _("argument"),
    5344              :                       _("alias"),
    5345              :                       _("column_definition"),
    5346              :                       _("function_name"),
    5347              :                       _("argument"),
    5348              :                       _("column_definition"),
    5349              :                       _("function_name"),
    5350              :                       _("argument"),
    5351              :                       _("column_definition"),
    5352              :                       _("alias"),
    5353              :                       _("column_alias"),
    5354              :                       _("from_item"),
    5355              :                       _("join_type"),
    5356              :                       _("from_item"),
    5357              :                       _("join_condition"),
    5358              :                       _("join_column"),
    5359              :                       _("join_using_alias"),
    5360              :                       _("from_item"),
    5361              :                       _("join_type"),
    5362              :                       _("from_item"),
    5363              :                       _("from_item"),
    5364              :                       _("from_item"),
    5365              :                       _("and grouping_element can be one of:"),
    5366              :                       _("expression"),
    5367              :                       _("expression"),
    5368              :                       _("expression"),
    5369              :                       _("expression"),
    5370              :                       _("expression"),
    5371              :                       _("expression"),
    5372              :                       _("grouping_element"),
    5373              :                       _("and with_query is:"),
    5374              :                       _("with_query_name"),
    5375              :                       _("column_name"),
    5376              :                       _("select"),
    5377              :                       _("values"),
    5378              :                       _("insert"),
    5379              :                       _("update"),
    5380              :                       _("delete"),
    5381              :                       _("merge"),
    5382              :                       _("column_name"),
    5383              :                       _("search_seq_col_name"),
    5384              :                       _("column_name"),
    5385              :                       _("cycle_mark_col_name"),
    5386              :                       _("cycle_mark_value"),
    5387              :                       _("cycle_mark_default"),
    5388              :                       _("cycle_path_col_name"),
    5389              :                       _("table_name"));
    5390            0 : }
    5391              : 
    5392              : 
    5393              : const struct _helpStruct QL_HELP[] = {
    5394              :     {"ABORT",
    5395              :         N_("abort the current transaction"),
    5396              :         "sql-abort",
    5397              :         sql_help_ABORT,
    5398              :     0},
    5399              : 
    5400              :     {"ALTER AGGREGATE",
    5401              :         N_("change the definition of an aggregate function"),
    5402              :         "sql-alteraggregate",
    5403              :         sql_help_ALTER_AGGREGATE,
    5404              :     9},
    5405              : 
    5406              :     {"ALTER COLLATION",
    5407              :         N_("change the definition of a collation"),
    5408              :         "sql-altercollation",
    5409              :         sql_help_ALTER_COLLATION,
    5410              :     4},
    5411              : 
    5412              :     {"ALTER CONVERSION",
    5413              :         N_("change the definition of a conversion"),
    5414              :         "sql-alterconversion",
    5415              :         sql_help_ALTER_CONVERSION,
    5416              :     2},
    5417              : 
    5418              :     {"ALTER DATABASE",
    5419              :         N_("change a database"),
    5420              :         "sql-alterdatabase",
    5421              :         sql_help_ALTER_DATABASE,
    5422              :     19},
    5423              : 
    5424              :     {"ALTER DEFAULT PRIVILEGES",
    5425              :         N_("define default access privileges"),
    5426              :         "sql-alterdefaultprivileges",
    5427              :         sql_help_ALTER_DEFAULT_PRIVILEGES,
    5428              :     73},
    5429              : 
    5430              :     {"ALTER DOMAIN",
    5431              :         N_("change the definition of a domain"),
    5432              :         "sql-alterdomain",
    5433              :         sql_help_ALTER_DOMAIN,
    5434              :     22},
    5435              : 
    5436              :     {"ALTER EVENT TRIGGER",
    5437              :         N_("change the definition of an event trigger"),
    5438              :         "sql-altereventtrigger",
    5439              :         sql_help_ALTER_EVENT_TRIGGER,
    5440              :     3},
    5441              : 
    5442              :     {"ALTER EXTENSION",
    5443              :         N_("change the definition of an extension"),
    5444              :         "sql-alterextension",
    5445              :         sql_help_ALTER_EXTENSION,
    5446              :     40},
    5447              : 
    5448              :     {"ALTER FOREIGN DATA WRAPPER",
    5449              :         N_("change the definition of a foreign-data wrapper"),
    5450              :         "sql-alterforeigndatawrapper",
    5451              :         sql_help_ALTER_FOREIGN_DATA_WRAPPER,
    5452              :     6},
    5453              : 
    5454              :     {"ALTER FOREIGN TABLE",
    5455              :         N_("change the definition of a foreign table"),
    5456              :         "sql-alterforeigntable",
    5457              :         sql_help_ALTER_FOREIGN_TABLE,
    5458              :     33},
    5459              : 
    5460              :     {"ALTER FUNCTION",
    5461              :         N_("change the definition of a function"),
    5462              :         "sql-alterfunction",
    5463              :         sql_help_ALTER_FUNCTION,
    5464              :     24},
    5465              : 
    5466              :     {"ALTER GROUP",
    5467              :         N_("change role name or membership"),
    5468              :         "sql-altergroup",
    5469              :         sql_help_ALTER_GROUP,
    5470              :     10},
    5471              : 
    5472              :     {"ALTER INDEX",
    5473              :         N_("change the definition of an index"),
    5474              :         "sql-alterindex",
    5475              :         sql_help_ALTER_INDEX,
    5476              :     9},
    5477              : 
    5478              :     {"ALTER LANGUAGE",
    5479              :         N_("change the definition of a procedural language"),
    5480              :         "sql-alterlanguage",
    5481              :         sql_help_ALTER_LANGUAGE,
    5482              :     1},
    5483              : 
    5484              :     {"ALTER LARGE OBJECT",
    5485              :         N_("change the definition of a large object"),
    5486              :         "sql-alterlargeobject",
    5487              :         sql_help_ALTER_LARGE_OBJECT,
    5488              :     0},
    5489              : 
    5490              :     {"ALTER MATERIALIZED VIEW",
    5491              :         N_("change the definition of a materialized view"),
    5492              :         "sql-altermaterializedview",
    5493              :         sql_help_ALTER_MATERIALIZED_VIEW,
    5494              :     26},
    5495              : 
    5496              :     {"ALTER OPERATOR",
    5497              :         N_("change the definition of an operator"),
    5498              :         "sql-alteroperator",
    5499              :         sql_help_ALTER_OPERATOR,
    5500              :     13},
    5501              : 
    5502              :     {"ALTER OPERATOR CLASS",
    5503              :         N_("change the definition of an operator class"),
    5504              :         "sql-alteropclass",
    5505              :         sql_help_ALTER_OPERATOR_CLASS,
    5506              :     7},
    5507              : 
    5508              :     {"ALTER OPERATOR FAMILY",
    5509              :         N_("change the definition of an operator family"),
    5510              :         "sql-alteropfamily",
    5511              :         sql_help_ALTER_OPERATOR_FAMILY,
    5512              :     19},
    5513              : 
    5514              :     {"ALTER POLICY",
    5515              :         N_("change the definition of a row-level security policy"),
    5516              :         "sql-alterpolicy",
    5517              :         sql_help_ALTER_POLICY,
    5518              :     5},
    5519              : 
    5520              :     {"ALTER PROCEDURE",
    5521              :         N_("change the definition of a procedure"),
    5522              :         "sql-alterprocedure",
    5523              :         sql_help_ALTER_PROCEDURE,
    5524              :     17},
    5525              : 
    5526              :     {"ALTER PUBLICATION",
    5527              :         N_("change the definition of a publication"),
    5528              :         "sql-alterpublication",
    5529              :         sql_help_ALTER_PUBLICATION,
    5530              :     32},
    5531              : 
    5532              :     {"ALTER ROLE",
    5533              :         N_("change a database role"),
    5534              :         "sql-alterrole",
    5535              :         sql_help_ALTER_ROLE,
    5536              :     27},
    5537              : 
    5538              :     {"ALTER ROUTINE",
    5539              :         N_("change the definition of a routine"),
    5540              :         "sql-alterroutine",
    5541              :         sql_help_ALTER_ROUTINE,
    5542              :     22},
    5543              : 
    5544              :     {"ALTER RULE",
    5545              :         N_("change the definition of a rule"),
    5546              :         "sql-alterrule",
    5547              :         sql_help_ALTER_RULE,
    5548              :     0},
    5549              : 
    5550              :     {"ALTER SCHEMA",
    5551              :         N_("change the definition of a schema"),
    5552              :         "sql-alterschema",
    5553              :         sql_help_ALTER_SCHEMA,
    5554              :     1},
    5555              : 
    5556              :     {"ALTER SEQUENCE",
    5557              :         N_("change the definition of a sequence generator"),
    5558              :         "sql-altersequence",
    5559              :         sql_help_ALTER_SEQUENCE,
    5560              :     12},
    5561              : 
    5562              :     {"ALTER SERVER",
    5563              :         N_("change the definition of a foreign server"),
    5564              :         "sql-alterserver",
    5565              :         sql_help_ALTER_SERVER,
    5566              :     3},
    5567              : 
    5568              :     {"ALTER STATISTICS",
    5569              :         N_("change the definition of an extended statistics object"),
    5570              :         "sql-alterstatistics",
    5571              :         sql_help_ALTER_STATISTICS,
    5572              :     3},
    5573              : 
    5574              :     {"ALTER SUBSCRIPTION",
    5575              :         N_("change the definition of a subscription"),
    5576              :         "sql-altersubscription",
    5577              :         sql_help_ALTER_SUBSCRIPTION,
    5578              :     12},
    5579              : 
    5580              :     {"ALTER SYSTEM",
    5581              :         N_("change a server configuration parameter"),
    5582              :         "sql-altersystem",
    5583              :         sql_help_ALTER_SYSTEM,
    5584              :     3},
    5585              : 
    5586              :     {"ALTER TABLE",
    5587              :         N_("change the definition of a table"),
    5588              :         "sql-altertable",
    5589              :         sql_help_ALTER_TABLE,
    5590              :     120},
    5591              : 
    5592              :     {"ALTER TABLESPACE",
    5593              :         N_("change the definition of a tablespace"),
    5594              :         "sql-altertablespace",
    5595              :         sql_help_ALTER_TABLESPACE,
    5596              :     3},
    5597              : 
    5598              :     {"ALTER TEXT SEARCH CONFIGURATION",
    5599              :         N_("change the definition of a text search configuration"),
    5600              :         "sql-altertsconfig",
    5601              :         sql_help_ALTER_TEXT_SEARCH_CONFIGURATION,
    5602              :     12},
    5603              : 
    5604              :     {"ALTER TEXT SEARCH DICTIONARY",
    5605              :         N_("change the definition of a text search dictionary"),
    5606              :         "sql-altertsdictionary",
    5607              :         sql_help_ALTER_TEXT_SEARCH_DICTIONARY,
    5608              :     5},
    5609              : 
    5610              :     {"ALTER TEXT SEARCH PARSER",
    5611              :         N_("change the definition of a text search parser"),
    5612              :         "sql-altertsparser",
    5613              :         sql_help_ALTER_TEXT_SEARCH_PARSER,
    5614              :     1},
    5615              : 
    5616              :     {"ALTER TEXT SEARCH TEMPLATE",
    5617              :         N_("change the definition of a text search template"),
    5618              :         "sql-altertstemplate",
    5619              :         sql_help_ALTER_TEXT_SEARCH_TEMPLATE,
    5620              :     1},
    5621              : 
    5622              :     {"ALTER TRIGGER",
    5623              :         N_("change the definition of a trigger"),
    5624              :         "sql-altertrigger",
    5625              :         sql_help_ALTER_TRIGGER,
    5626              :     1},
    5627              : 
    5628              :     {"ALTER TYPE",
    5629              :         N_("change the definition of a type"),
    5630              :         "sql-altertype",
    5631              :         sql_help_ALTER_TYPE,
    5632              :     13},
    5633              : 
    5634              :     {"ALTER USER",
    5635              :         N_("change a database role"),
    5636              :         "sql-alteruser",
    5637              :         sql_help_ALTER_USER,
    5638              :     27},
    5639              : 
    5640              :     {"ALTER USER MAPPING",
    5641              :         N_("change the definition of a user mapping"),
    5642              :         "sql-alterusermapping",
    5643              :         sql_help_ALTER_USER_MAPPING,
    5644              :     2},
    5645              : 
    5646              :     {"ALTER VIEW",
    5647              :         N_("change the definition of a view"),
    5648              :         "sql-alterview",
    5649              :         sql_help_ALTER_VIEW,
    5650              :     7},
    5651              : 
    5652              :     {"ANALYZE",
    5653              :         N_("collect statistics about a database"),
    5654              :         "sql-analyze",
    5655              :         sql_help_ANALYZE,
    5656              :     10},
    5657              : 
    5658              :     {"BEGIN",
    5659              :         N_("start a transaction block"),
    5660              :         "sql-begin",
    5661              :         sql_help_BEGIN,
    5662              :     6},
    5663              : 
    5664              :     {"CALL",
    5665              :         N_("invoke a procedure"),
    5666              :         "sql-call",
    5667              :         sql_help_CALL,
    5668              :     0},
    5669              : 
    5670              :     {"CHECKPOINT",
    5671              :         N_("force a write-ahead log checkpoint"),
    5672              :         "sql-checkpoint",
    5673              :         sql_help_CHECKPOINT,
    5674              :     5},
    5675              : 
    5676              :     {"CLOSE",
    5677              :         N_("close a cursor"),
    5678              :         "sql-close",
    5679              :         sql_help_CLOSE,
    5680              :     0},
    5681              : 
    5682              :     {"CLUSTER",
    5683              :         N_("cluster a table according to an index"),
    5684              :         "sql-cluster",
    5685              :         sql_help_CLUSTER,
    5686              :     4},
    5687              : 
    5688              :     {"COMMENT",
    5689              :         N_("define or change the comment of an object"),
    5690              :         "sql-comment",
    5691              :         sql_help_COMMENT,
    5692              :     51},
    5693              : 
    5694              :     {"COMMIT",
    5695              :         N_("commit the current transaction"),
    5696              :         "sql-commit",
    5697              :         sql_help_COMMIT,
    5698              :     0},
    5699              : 
    5700              :     {"COMMIT PREPARED",
    5701              :         N_("commit a transaction that was earlier prepared for two-phase commit"),
    5702              :         "sql-commit-prepared",
    5703              :         sql_help_COMMIT_PREPARED,
    5704              :     0},
    5705              : 
    5706              :     {"COPY",
    5707              :         N_("copy data between a file and a table"),
    5708              :         "sql-copy",
    5709              :         sql_help_COPY,
    5710              :     26},
    5711              : 
    5712              :     {"CREATE ACCESS METHOD",
    5713              :         N_("define a new access method"),
    5714              :         "sql-create-access-method",
    5715              :         sql_help_CREATE_ACCESS_METHOD,
    5716              :     2},
    5717              : 
    5718              :     {"CREATE AGGREGATE",
    5719              :         N_("define a new aggregate function"),
    5720              :         "sql-createaggregate",
    5721              :         sql_help_CREATE_AGGREGATE,
    5722              :     62},
    5723              : 
    5724              :     {"CREATE CAST",
    5725              :         N_("define a new cast"),
    5726              :         "sql-createcast",
    5727              :         sql_help_CREATE_CAST,
    5728              :     10},
    5729              : 
    5730              :     {"CREATE COLLATION",
    5731              :         N_("define a new collation"),
    5732              :         "sql-createcollation",
    5733              :         sql_help_CREATE_COLLATION,
    5734              :     9},
    5735              : 
    5736              :     {"CREATE CONVERSION",
    5737              :         N_("define a new encoding conversion"),
    5738              :         "sql-createconversion",
    5739              :         sql_help_CREATE_CONVERSION,
    5740              :     1},
    5741              : 
    5742              :     {"CREATE DATABASE",
    5743              :         N_("create a new database"),
    5744              :         "sql-createdatabase",
    5745              :         sql_help_CREATE_DATABASE,
    5746              :     17},
    5747              : 
    5748              :     {"CREATE DOMAIN",
    5749              :         N_("define a new domain"),
    5750              :         "sql-createdomain",
    5751              :         sql_help_CREATE_DOMAIN,
    5752              :     8},
    5753              : 
    5754              :     {"CREATE EVENT TRIGGER",
    5755              :         N_("define a new event trigger"),
    5756              :         "sql-createeventtrigger",
    5757              :         sql_help_CREATE_EVENT_TRIGGER,
    5758              :     3},
    5759              : 
    5760              :     {"CREATE EXTENSION",
    5761              :         N_("install an extension"),
    5762              :         "sql-createextension",
    5763              :         sql_help_CREATE_EXTENSION,
    5764              :     3},
    5765              : 
    5766              :     {"CREATE FOREIGN DATA WRAPPER",
    5767              :         N_("define a new foreign-data wrapper"),
    5768              :         "sql-createforeigndatawrapper",
    5769              :         sql_help_CREATE_FOREIGN_DATA_WRAPPER,
    5770              :     4},
    5771              : 
    5772              :     {"CREATE FOREIGN TABLE",
    5773              :         N_("define a new foreign table"),
    5774              :         "sql-createforeigntable",
    5775              :         sql_help_CREATE_FOREIGN_TABLE,
    5776              :     46},
    5777              : 
    5778              :     {"CREATE FUNCTION",
    5779              :         N_("define a new function"),
    5780              :         "sql-createfunction",
    5781              :         sql_help_CREATE_FUNCTION,
    5782              :     19},
    5783              : 
    5784              :     {"CREATE GROUP",
    5785              :         N_("define a new database role"),
    5786              :         "sql-creategroup",
    5787              :         sql_help_CREATE_GROUP,
    5788              :     17},
    5789              : 
    5790              :     {"CREATE INDEX",
    5791              :         N_("define a new index"),
    5792              :         "sql-createindex",
    5793              :         sql_help_CREATE_INDEX,
    5794              :     6},
    5795              : 
    5796              :     {"CREATE LANGUAGE",
    5797              :         N_("define a new procedural language"),
    5798              :         "sql-createlanguage",
    5799              :         sql_help_CREATE_LANGUAGE,
    5800              :     2},
    5801              : 
    5802              :     {"CREATE MATERIALIZED VIEW",
    5803              :         N_("define a new materialized view"),
    5804              :         "sql-creatematerializedview",
    5805              :         sql_help_CREATE_MATERIALIZED_VIEW,
    5806              :     6},
    5807              : 
    5808              :     {"CREATE OPERATOR",
    5809              :         N_("define a new operator"),
    5810              :         "sql-createoperator",
    5811              :         sql_help_CREATE_OPERATOR,
    5812              :     6},
    5813              : 
    5814              :     {"CREATE OPERATOR CLASS",
    5815              :         N_("define a new operator class"),
    5816              :         "sql-createopclass",
    5817              :         sql_help_CREATE_OPERATOR_CLASS,
    5818              :     5},
    5819              : 
    5820              :     {"CREATE OPERATOR FAMILY",
    5821              :         N_("define a new operator family"),
    5822              :         "sql-createopfamily",
    5823              :         sql_help_CREATE_OPERATOR_FAMILY,
    5824              :     0},
    5825              : 
    5826              :     {"CREATE POLICY",
    5827              :         N_("define a new row-level security policy for a table"),
    5828              :         "sql-createpolicy",
    5829              :         sql_help_CREATE_POLICY,
    5830              :     5},
    5831              : 
    5832              :     {"CREATE PROCEDURE",
    5833              :         N_("define a new procedure"),
    5834              :         "sql-createprocedure",
    5835              :         sql_help_CREATE_PROCEDURE,
    5836              :     9},
    5837              : 
    5838              :     {"CREATE PUBLICATION",
    5839              :         N_("define a new publication"),
    5840              :         "sql-createpublication",
    5841              :         sql_help_CREATE_PUBLICATION,
    5842              :     24},
    5843              : 
    5844              :     {"CREATE ROLE",
    5845              :         N_("define a new database role"),
    5846              :         "sql-createrole",
    5847              :         sql_help_CREATE_ROLE,
    5848              :     17},
    5849              : 
    5850              :     {"CREATE RULE",
    5851              :         N_("define a new rewrite rule"),
    5852              :         "sql-createrule",
    5853              :         sql_help_CREATE_RULE,
    5854              :     6},
    5855              : 
    5856              :     {"CREATE SCHEMA",
    5857              :         N_("define a new schema"),
    5858              :         "sql-createschema",
    5859              :         sql_help_CREATE_SCHEMA,
    5860              :     10},
    5861              : 
    5862              :     {"CREATE SEQUENCE",
    5863              :         N_("define a new sequence generator"),
    5864              :         "sql-createsequence",
    5865              :         sql_help_CREATE_SEQUENCE,
    5866              :     7},
    5867              : 
    5868              :     {"CREATE SERVER",
    5869              :         N_("define a new foreign server"),
    5870              :         "sql-createserver",
    5871              :         sql_help_CREATE_SERVER,
    5872              :     2},
    5873              : 
    5874              :     {"CREATE STATISTICS",
    5875              :         N_("define extended statistics"),
    5876              :         "sql-createstatistics",
    5877              :         sql_help_CREATE_STATISTICS,
    5878              :     7},
    5879              : 
    5880              :     {"CREATE SUBSCRIPTION",
    5881              :         N_("define a new subscription"),
    5882              :         "sql-createsubscription",
    5883              :         sql_help_CREATE_SUBSCRIPTION,
    5884              :     3},
    5885              : 
    5886              :     {"CREATE TABLE",
    5887              :         N_("define a new table"),
    5888              :         "sql-createtable",
    5889              :         sql_help_CREATE_TABLE,
    5890              :     100},
    5891              : 
    5892              :     {"CREATE TABLE AS",
    5893              :         N_("define a new table from the results of a query"),
    5894              :         "sql-createtableas",
    5895              :         sql_help_CREATE_TABLE_AS,
    5896              :     11},
    5897              : 
    5898              :     {"CREATE TABLESPACE",
    5899              :         N_("define a new tablespace"),
    5900              :         "sql-createtablespace",
    5901              :         sql_help_CREATE_TABLESPACE,
    5902              :     3},
    5903              : 
    5904              :     {"CREATE TEXT SEARCH CONFIGURATION",
    5905              :         N_("define a new text search configuration"),
    5906              :         "sql-createtsconfig",
    5907              :         sql_help_CREATE_TEXT_SEARCH_CONFIGURATION,
    5908              :     3},
    5909              : 
    5910              :     {"CREATE TEXT SEARCH DICTIONARY",
    5911              :         N_("define a new text search dictionary"),
    5912              :         "sql-createtsdictionary",
    5913              :         sql_help_CREATE_TEXT_SEARCH_DICTIONARY,
    5914              :     3},
    5915              : 
    5916              :     {"CREATE TEXT SEARCH PARSER",
    5917              :         N_("define a new text search parser"),
    5918              :         "sql-createtsparser",
    5919              :         sql_help_CREATE_TEXT_SEARCH_PARSER,
    5920              :     6},
    5921              : 
    5922              :     {"CREATE TEXT SEARCH TEMPLATE",
    5923              :         N_("define a new text search template"),
    5924              :         "sql-createtstemplate",
    5925              :         sql_help_CREATE_TEXT_SEARCH_TEMPLATE,
    5926              :     3},
    5927              : 
    5928              :     {"CREATE TRANSFORM",
    5929              :         N_("define a new transform"),
    5930              :         "sql-createtransform",
    5931              :         sql_help_CREATE_TRANSFORM,
    5932              :     3},
    5933              : 
    5934              :     {"CREATE TRIGGER",
    5935              :         N_("define a new trigger"),
    5936              :         "sql-createtrigger",
    5937              :         sql_help_CREATE_TRIGGER,
    5938              :     14},
    5939              : 
    5940              :     {"CREATE TYPE",
    5941              :         N_("define a new data type"),
    5942              :         "sql-createtype",
    5943              :         sql_help_CREATE_TYPE,
    5944              :     37},
    5945              : 
    5946              :     {"CREATE USER",
    5947              :         N_("define a new database role"),
    5948              :         "sql-createuser",
    5949              :         sql_help_CREATE_USER,
    5950              :     17},
    5951              : 
    5952              :     {"CREATE USER MAPPING",
    5953              :         N_("define a new mapping of a user to a foreign server"),
    5954              :         "sql-createusermapping",
    5955              :         sql_help_CREATE_USER_MAPPING,
    5956              :     2},
    5957              : 
    5958              :     {"CREATE VIEW",
    5959              :         N_("define a new view"),
    5960              :         "sql-createview",
    5961              :         sql_help_CREATE_VIEW,
    5962              :     3},
    5963              : 
    5964              :     {"DEALLOCATE",
    5965              :         N_("deallocate a prepared statement"),
    5966              :         "sql-deallocate",
    5967              :         sql_help_DEALLOCATE,
    5968              :     0},
    5969              : 
    5970              :     {"DECLARE",
    5971              :         N_("define a cursor"),
    5972              :         "sql-declare",
    5973              :         sql_help_DECLARE,
    5974              :     1},
    5975              : 
    5976              :     {"DELETE",
    5977              :         N_("delete rows of a table"),
    5978              :         "sql-delete",
    5979              :         sql_help_DELETE,
    5980              :     5},
    5981              : 
    5982              :     {"DISCARD",
    5983              :         N_("discard session state"),
    5984              :         "sql-discard",
    5985              :         sql_help_DISCARD,
    5986              :     0},
    5987              : 
    5988              :     {"DO",
    5989              :         N_("execute an anonymous code block"),
    5990              :         "sql-do",
    5991              :         sql_help_DO,
    5992              :     0},
    5993              : 
    5994              :     {"DROP ACCESS METHOD",
    5995              :         N_("remove an access method"),
    5996              :         "sql-drop-access-method",
    5997              :         sql_help_DROP_ACCESS_METHOD,
    5998              :     0},
    5999              : 
    6000              :     {"DROP AGGREGATE",
    6001              :         N_("remove an aggregate function"),
    6002              :         "sql-dropaggregate",
    6003              :         sql_help_DROP_AGGREGATE,
    6004              :     6},
    6005              : 
    6006              :     {"DROP CAST",
    6007              :         N_("remove a cast"),
    6008              :         "sql-dropcast",
    6009              :         sql_help_DROP_CAST,
    6010              :     0},
    6011              : 
    6012              :     {"DROP COLLATION",
    6013              :         N_("remove a collation"),
    6014              :         "sql-dropcollation",
    6015              :         sql_help_DROP_COLLATION,
    6016              :     0},
    6017              : 
    6018              :     {"DROP CONVERSION",
    6019              :         N_("remove a conversion"),
    6020              :         "sql-dropconversion",
    6021              :         sql_help_DROP_CONVERSION,
    6022              :     0},
    6023              : 
    6024              :     {"DROP DATABASE",
    6025              :         N_("remove a database"),
    6026              :         "sql-dropdatabase",
    6027              :         sql_help_DROP_DATABASE,
    6028              :     4},
    6029              : 
    6030              :     {"DROP DOMAIN",
    6031              :         N_("remove a domain"),
    6032              :         "sql-dropdomain",
    6033              :         sql_help_DROP_DOMAIN,
    6034              :     0},
    6035              : 
    6036              :     {"DROP EVENT TRIGGER",
    6037              :         N_("remove an event trigger"),
    6038              :         "sql-dropeventtrigger",
    6039              :         sql_help_DROP_EVENT_TRIGGER,
    6040              :     0},
    6041              : 
    6042              :     {"DROP EXTENSION",
    6043              :         N_("remove an extension"),
    6044              :         "sql-dropextension",
    6045              :         sql_help_DROP_EXTENSION,
    6046              :     0},
    6047              : 
    6048              :     {"DROP FOREIGN DATA WRAPPER",
    6049              :         N_("remove a foreign-data wrapper"),
    6050              :         "sql-dropforeigndatawrapper",
    6051              :         sql_help_DROP_FOREIGN_DATA_WRAPPER,
    6052              :     0},
    6053              : 
    6054              :     {"DROP FOREIGN TABLE",
    6055              :         N_("remove a foreign table"),
    6056              :         "sql-dropforeigntable",
    6057              :         sql_help_DROP_FOREIGN_TABLE,
    6058              :     0},
    6059              : 
    6060              :     {"DROP FUNCTION",
    6061              :         N_("remove a function"),
    6062              :         "sql-dropfunction",
    6063              :         sql_help_DROP_FUNCTION,
    6064              :     1},
    6065              : 
    6066              :     {"DROP GROUP",
    6067              :         N_("remove a database role"),
    6068              :         "sql-dropgroup",
    6069              :         sql_help_DROP_GROUP,
    6070              :     0},
    6071              : 
    6072              :     {"DROP INDEX",
    6073              :         N_("remove an index"),
    6074              :         "sql-dropindex",
    6075              :         sql_help_DROP_INDEX,
    6076              :     0},
    6077              : 
    6078              :     {"DROP LANGUAGE",
    6079              :         N_("remove a procedural language"),
    6080              :         "sql-droplanguage",
    6081              :         sql_help_DROP_LANGUAGE,
    6082              :     0},
    6083              : 
    6084              :     {"DROP MATERIALIZED VIEW",
    6085              :         N_("remove a materialized view"),
    6086              :         "sql-dropmaterializedview",
    6087              :         sql_help_DROP_MATERIALIZED_VIEW,
    6088              :     0},
    6089              : 
    6090              :     {"DROP OPERATOR",
    6091              :         N_("remove an operator"),
    6092              :         "sql-dropoperator",
    6093              :         sql_help_DROP_OPERATOR,
    6094              :     0},
    6095              : 
    6096              :     {"DROP OPERATOR CLASS",
    6097              :         N_("remove an operator class"),
    6098              :         "sql-dropopclass",
    6099              :         sql_help_DROP_OPERATOR_CLASS,
    6100              :     0},
    6101              : 
    6102              :     {"DROP OPERATOR FAMILY",
    6103              :         N_("remove an operator family"),
    6104              :         "sql-dropopfamily",
    6105              :         sql_help_DROP_OPERATOR_FAMILY,
    6106              :     0},
    6107              : 
    6108              :     {"DROP OWNED",
    6109              :         N_("remove database objects owned by a database role"),
    6110              :         "sql-drop-owned",
    6111              :         sql_help_DROP_OWNED,
    6112              :     0},
    6113              : 
    6114              :     {"DROP POLICY",
    6115              :         N_("remove a row-level security policy from a table"),
    6116              :         "sql-droppolicy",
    6117              :         sql_help_DROP_POLICY,
    6118              :     0},
    6119              : 
    6120              :     {"DROP PROCEDURE",
    6121              :         N_("remove a procedure"),
    6122              :         "sql-dropprocedure",
    6123              :         sql_help_DROP_PROCEDURE,
    6124              :     1},
    6125              : 
    6126              :     {"DROP PUBLICATION",
    6127              :         N_("remove a publication"),
    6128              :         "sql-droppublication",
    6129              :         sql_help_DROP_PUBLICATION,
    6130              :     0},
    6131              : 
    6132              :     {"DROP ROLE",
    6133              :         N_("remove a database role"),
    6134              :         "sql-droprole",
    6135              :         sql_help_DROP_ROLE,
    6136              :     0},
    6137              : 
    6138              :     {"DROP ROUTINE",
    6139              :         N_("remove a routine"),
    6140              :         "sql-droproutine",
    6141              :         sql_help_DROP_ROUTINE,
    6142              :     1},
    6143              : 
    6144              :     {"DROP RULE",
    6145              :         N_("remove a rewrite rule"),
    6146              :         "sql-droprule",
    6147              :         sql_help_DROP_RULE,
    6148              :     0},
    6149              : 
    6150              :     {"DROP SCHEMA",
    6151              :         N_("remove a schema"),
    6152              :         "sql-dropschema",
    6153              :         sql_help_DROP_SCHEMA,
    6154              :     0},
    6155              : 
    6156              :     {"DROP SEQUENCE",
    6157              :         N_("remove a sequence"),
    6158              :         "sql-dropsequence",
    6159              :         sql_help_DROP_SEQUENCE,
    6160              :     0},
    6161              : 
    6162              :     {"DROP SERVER",
    6163              :         N_("remove a foreign server descriptor"),
    6164              :         "sql-dropserver",
    6165              :         sql_help_DROP_SERVER,
    6166              :     0},
    6167              : 
    6168              :     {"DROP STATISTICS",
    6169              :         N_("remove extended statistics"),
    6170              :         "sql-dropstatistics",
    6171              :         sql_help_DROP_STATISTICS,
    6172              :     0},
    6173              : 
    6174              :     {"DROP SUBSCRIPTION",
    6175              :         N_("remove a subscription"),
    6176              :         "sql-dropsubscription",
    6177              :         sql_help_DROP_SUBSCRIPTION,
    6178              :     0},
    6179              : 
    6180              :     {"DROP TABLE",
    6181              :         N_("remove a table"),
    6182              :         "sql-droptable",
    6183              :         sql_help_DROP_TABLE,
    6184              :     0},
    6185              : 
    6186              :     {"DROP TABLESPACE",
    6187              :         N_("remove a tablespace"),
    6188              :         "sql-droptablespace",
    6189              :         sql_help_DROP_TABLESPACE,
    6190              :     0},
    6191              : 
    6192              :     {"DROP TEXT SEARCH CONFIGURATION",
    6193              :         N_("remove a text search configuration"),
    6194              :         "sql-droptsconfig",
    6195              :         sql_help_DROP_TEXT_SEARCH_CONFIGURATION,
    6196              :     0},
    6197              : 
    6198              :     {"DROP TEXT SEARCH DICTIONARY",
    6199              :         N_("remove a text search dictionary"),
    6200              :         "sql-droptsdictionary",
    6201              :         sql_help_DROP_TEXT_SEARCH_DICTIONARY,
    6202              :     0},
    6203              : 
    6204              :     {"DROP TEXT SEARCH PARSER",
    6205              :         N_("remove a text search parser"),
    6206              :         "sql-droptsparser",
    6207              :         sql_help_DROP_TEXT_SEARCH_PARSER,
    6208              :     0},
    6209              : 
    6210              :     {"DROP TEXT SEARCH TEMPLATE",
    6211              :         N_("remove a text search template"),
    6212              :         "sql-droptstemplate",
    6213              :         sql_help_DROP_TEXT_SEARCH_TEMPLATE,
    6214              :     0},
    6215              : 
    6216              :     {"DROP TRANSFORM",
    6217              :         N_("remove a transform"),
    6218              :         "sql-droptransform",
    6219              :         sql_help_DROP_TRANSFORM,
    6220              :     0},
    6221              : 
    6222              :     {"DROP TRIGGER",
    6223              :         N_("remove a trigger"),
    6224              :         "sql-droptrigger",
    6225              :         sql_help_DROP_TRIGGER,
    6226              :     0},
    6227              : 
    6228              :     {"DROP TYPE",
    6229              :         N_("remove a data type"),
    6230              :         "sql-droptype",
    6231              :         sql_help_DROP_TYPE,
    6232              :     0},
    6233              : 
    6234              :     {"DROP USER",
    6235              :         N_("remove a database role"),
    6236              :         "sql-dropuser",
    6237              :         sql_help_DROP_USER,
    6238              :     0},
    6239              : 
    6240              :     {"DROP USER MAPPING",
    6241              :         N_("remove a user mapping for a foreign server"),
    6242              :         "sql-dropusermapping",
    6243              :         sql_help_DROP_USER_MAPPING,
    6244              :     0},
    6245              : 
    6246              :     {"DROP VIEW",
    6247              :         N_("remove a view"),
    6248              :         "sql-dropview",
    6249              :         sql_help_DROP_VIEW,
    6250              :     0},
    6251              : 
    6252              :     {"END",
    6253              :         N_("commit the current transaction"),
    6254              :         "sql-end",
    6255              :         sql_help_END,
    6256              :     0},
    6257              : 
    6258              :     {"EXECUTE",
    6259              :         N_("execute a prepared statement"),
    6260              :         "sql-execute",
    6261              :         sql_help_EXECUTE,
    6262              :     0},
    6263              : 
    6264              :     {"EXPLAIN",
    6265              :         N_("show the execution plan of a statement"),
    6266              :         "sql-explain",
    6267              :         sql_help_EXPLAIN,
    6268              :     16},
    6269              : 
    6270              :     {"FETCH",
    6271              :         N_("retrieve rows from a query using a cursor"),
    6272              :         "sql-fetch",
    6273              :         sql_help_FETCH,
    6274              :     17},
    6275              : 
    6276              :     {"GRANT",
    6277              :         N_("define access privileges"),
    6278              :         "sql-grant",
    6279              :         sql_help_GRANT,
    6280              :     86},
    6281              : 
    6282              :     {"IMPORT FOREIGN SCHEMA",
    6283              :         N_("import table definitions from a foreign server"),
    6284              :         "sql-importforeignschema",
    6285              :         sql_help_IMPORT_FOREIGN_SCHEMA,
    6286              :     4},
    6287              : 
    6288              :     {"INSERT",
    6289              :         N_("create new rows in a table"),
    6290              :         "sql-insert",
    6291              :         sql_help_INSERT,
    6292              :     21},
    6293              : 
    6294              :     {"LISTEN",
    6295              :         N_("listen for a notification"),
    6296              :         "sql-listen",
    6297              :         sql_help_LISTEN,
    6298              :     0},
    6299              : 
    6300              :     {"LOAD",
    6301              :         N_("load a shared library file"),
    6302              :         "sql-load",
    6303              :         sql_help_LOAD,
    6304              :     0},
    6305              : 
    6306              :     {"LOCK",
    6307              :         N_("lock a table"),
    6308              :         "sql-lock",
    6309              :         sql_help_LOCK,
    6310              :     5},
    6311              : 
    6312              :     {"MERGE",
    6313              :         N_("conditionally insert, update, or delete rows of a table"),
    6314              :         "sql-merge",
    6315              :         sql_help_MERGE,
    6316              :     32},
    6317              : 
    6318              :     {"MOVE",
    6319              :         N_("position a cursor"),
    6320              :         "sql-move",
    6321              :         sql_help_MOVE,
    6322              :     17},
    6323              : 
    6324              :     {"NOTIFY",
    6325              :         N_("generate a notification"),
    6326              :         "sql-notify",
    6327              :         sql_help_NOTIFY,
    6328              :     0},
    6329              : 
    6330              :     {"PREPARE",
    6331              :         N_("prepare a statement for execution"),
    6332              :         "sql-prepare",
    6333              :         sql_help_PREPARE,
    6334              :     0},
    6335              : 
    6336              :     {"PREPARE TRANSACTION",
    6337              :         N_("prepare the current transaction for two-phase commit"),
    6338              :         "sql-prepare-transaction",
    6339              :         sql_help_PREPARE_TRANSACTION,
    6340              :     0},
    6341              : 
    6342              :     {"REASSIGN OWNED",
    6343              :         N_("change the ownership of database objects owned by a database role"),
    6344              :         "sql-reassign-owned",
    6345              :         sql_help_REASSIGN_OWNED,
    6346              :     1},
    6347              : 
    6348              :     {"REFRESH MATERIALIZED VIEW",
    6349              :         N_("replace the contents of a materialized view"),
    6350              :         "sql-refreshmaterializedview",
    6351              :         sql_help_REFRESH_MATERIALIZED_VIEW,
    6352              :     1},
    6353              : 
    6354              :     {"REINDEX",
    6355              :         N_("rebuild indexes"),
    6356              :         "sql-reindex",
    6357              :         sql_help_REINDEX,
    6358              :     7},
    6359              : 
    6360              :     {"RELEASE SAVEPOINT",
    6361              :         N_("release a previously defined savepoint"),
    6362              :         "sql-release-savepoint",
    6363              :         sql_help_RELEASE_SAVEPOINT,
    6364              :     0},
    6365              : 
    6366              :     {"REPACK",
    6367              :         N_("rewrite a table to reclaim disk space"),
    6368              :         "sql-repack",
    6369              :         sql_help_REPACK,
    6370              :     11},
    6371              : 
    6372              :     {"RESET",
    6373              :         N_("restore the value of a run-time parameter to the default value"),
    6374              :         "sql-reset",
    6375              :         sql_help_RESET,
    6376              :     1},
    6377              : 
    6378              :     {"REVOKE",
    6379              :         N_("remove access privileges"),
    6380              :         "sql-revoke",
    6381              :         sql_help_REVOKE,
    6382              :     115},
    6383              : 
    6384              :     {"ROLLBACK",
    6385              :         N_("abort the current transaction"),
    6386              :         "sql-rollback",
    6387              :         sql_help_ROLLBACK,
    6388              :     0},
    6389              : 
    6390              :     {"ROLLBACK PREPARED",
    6391              :         N_("cancel a transaction that was earlier prepared for two-phase commit"),
    6392              :         "sql-rollback-prepared",
    6393              :         sql_help_ROLLBACK_PREPARED,
    6394              :     0},
    6395              : 
    6396              :     {"ROLLBACK TO SAVEPOINT",
    6397              :         N_("roll back to a savepoint"),
    6398              :         "sql-rollback-to",
    6399              :         sql_help_ROLLBACK_TO_SAVEPOINT,
    6400              :     0},
    6401              : 
    6402              :     {"SAVEPOINT",
    6403              :         N_("define a new savepoint within the current transaction"),
    6404              :         "sql-savepoint",
    6405              :         sql_help_SAVEPOINT,
    6406              :     0},
    6407              : 
    6408              :     {"SECURITY LABEL",
    6409              :         N_("define or change a security label applied to an object"),
    6410              :         "sql-security-label",
    6411              :         sql_help_SECURITY_LABEL,
    6412              :     29},
    6413              : 
    6414              :     {"SELECT",
    6415              :         N_("retrieve rows from a table or view"),
    6416              :         "sql-select",
    6417              :         sql_help_SELECT,
    6418              :     46},
    6419              : 
    6420              :     {"SELECT INTO",
    6421              :         N_("define a new table from the results of a query"),
    6422              :         "sql-selectinto",
    6423              :         sql_help_SELECT_INTO,
    6424              :     14},
    6425              : 
    6426              :     {"SET",
    6427              :         N_("change a run-time parameter"),
    6428              :         "sql-set",
    6429              :         sql_help_SET,
    6430              :     1},
    6431              : 
    6432              :     {"SET CONSTRAINTS",
    6433              :         N_("set constraint check timing for the current transaction"),
    6434              :         "sql-set-constraints",
    6435              :         sql_help_SET_CONSTRAINTS,
    6436              :     0},
    6437              : 
    6438              :     {"SET ROLE",
    6439              :         N_("set the current user identifier of the current session"),
    6440              :         "sql-set-role",
    6441              :         sql_help_SET_ROLE,
    6442              :     2},
    6443              : 
    6444              :     {"SET SESSION AUTHORIZATION",
    6445              :         N_("set the session user identifier and the current user identifier of the current session"),
    6446              :         "sql-set-session-authorization",
    6447              :         sql_help_SET_SESSION_AUTHORIZATION,
    6448              :     2},
    6449              : 
    6450              :     {"SET TRANSACTION",
    6451              :         N_("set the characteristics of the current transaction"),
    6452              :         "sql-set-transaction",
    6453              :         sql_help_SET_TRANSACTION,
    6454              :     8},
    6455              : 
    6456              :     {"SHOW",
    6457              :         N_("show the value of a run-time parameter"),
    6458              :         "sql-show",
    6459              :         sql_help_SHOW,
    6460              :     1},
    6461              : 
    6462              :     {"START TRANSACTION",
    6463              :         N_("start a transaction block"),
    6464              :         "sql-start-transaction",
    6465              :         sql_help_START_TRANSACTION,
    6466              :     6},
    6467              : 
    6468              :     {"TABLE",
    6469              :         N_("retrieve rows from a table or view"),
    6470              :         "sql-select",
    6471              :         sql_help_TABLE,
    6472              :     46},
    6473              : 
    6474              :     {"TRUNCATE",
    6475              :         N_("empty a table or set of tables"),
    6476              :         "sql-truncate",
    6477              :         sql_help_TRUNCATE,
    6478              :     1},
    6479              : 
    6480              :     {"UNLISTEN",
    6481              :         N_("stop listening for a notification"),
    6482              :         "sql-unlisten",
    6483              :         sql_help_UNLISTEN,
    6484              :     0},
    6485              : 
    6486              :     {"UPDATE",
    6487              :         N_("update rows of a table"),
    6488              :         "sql-update",
    6489              :         sql_help_UPDATE,
    6490              :     9},
    6491              : 
    6492              :     {"VACUUM",
    6493              :         N_("garbage-collect and optionally analyze a database"),
    6494              :         "sql-vacuum",
    6495              :         sql_help_VACUUM,
    6496              :     21},
    6497              : 
    6498              :     {"VALUES",
    6499              :         N_("compute a set of rows"),
    6500              :         "sql-values",
    6501              :         sql_help_VALUES,
    6502              :     4},
    6503              : 
    6504              :     {"WAIT",
    6505              :         N_("wait for WAL to reach a target LSN"),
    6506              :         "sql-wait",
    6507              :         sql_help_WAIT,
    6508              :     11},
    6509              : 
    6510              :     {"WITH",
    6511              :         N_("retrieve rows from a table or view"),
    6512              :         "sql-select",
    6513              :         sql_help_WITH,
    6514              :     46},
    6515              : 
    6516              : 
    6517              :     {NULL, NULL, NULL}          /* End of list marker */
    6518              : };
        

Generated by: LCOV version 2.0-1