PG Doc comments form <noreply@postgresql.org> writes:
> For the REINDEX DATABASE command, the documentation suggests REINDEX
> DATABASE databaseName, however my experience suggests this does not work;
> the database name must be quoted:
> sonarDB=# \c sonarDB;
> You are now connected to database "sonarDB" as user "sonarUser".
> sonarDB=# REINDEX DATABASE sonarDB;
> ERROR: can only reindex the currently open database
> sonarDB=# REINDEX DATABASE "sonarDB";
> REINDEX
There's nothing wrong with REINDEX; this is just the generic problem
that non-lower-case identifiers have to be double-quoted anywhere
in SQL. See
https://www.postgresql.org/docs/current/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS
particularly the last para in 4.1.1.
regards, tom lane