Hi,
On Mon, Aug 01, 2022 at 11:22:33AM +0200, Matthias Apitz wrote:
>
> This is with 14.1 on Linux. I have created a new database with
>
> $ createdb -U sisis -T template0 SRP-27097
>
> I can connect to it, created tables and fill them with SQL:
>
> but I can not drop the database:
>
> $ psql -Usisis -dtestdb
> psql (14.1)
> Geben Sie »help« für Hilfe ein.
>
> testdb=# DROP DATABASE IF EXISTS SRP-27097 WITH FORCE;
> ERROR: syntax error at or near "-"
> ZEILE 1: DROP DATABASE IF EXISTS SRP-27097 WITH FORCE;
>
> Why is this?
It's because createdb a command that knows how to quote identifiers and will do
automatically for you. At the SQL level you have to properly quote identifier,
so this command will work:
DROP DATABASE IF EXISTS "SRP-27097" WITH FORCE;