Re: How to reference a DB with a period in its name ? - Mailing list pgsql-general

From negora
Subject Re: How to reference a DB with a period in its name ?
Date
Msg-id 36cef37d-32cf-45f4-a4ce-01dc29cad5e1@negora.com
Whole thread Raw
In response to [MASSMAIL]How to reference a DB with a period in its name ?  (David Gauthier <dfgpostgres@gmail.com>)
List pgsql-general

Hi:

I think your problem is in the Perl side more than in PostgreSQL's. When you said you tried escaping with \, Did you mean exactly this?

"delete from \"thedb.v1\".theschem.thetab where col1 = 1"

I think this should work.

Or you can use single quotes to enclose the query, so that you don't need to escape the double quotes:

'delete from "thedb.v1".theschem.thetab where col1 = 1'

Best regards.


On 29/03/2024 22:16, David Gauthier wrote:
Hi:

I have a DB named "thedb", which has a schema called "theschem" which has a table called "thetab".  In a perl/DBI script, I am able to work with the table by referencing it as... "thedb.theschem.thetab" as in... "delete from thedb.theschem.thetab where col1=1"

No problem (so far...)

New DB now has a name "thedb.v1" (notice the "."), the schem and table are the same as above.  But now I'm getting a syntax error presumably because of that "." introduced in the DB name.

I tried encapsulating the DB name in double quotes (no good), single quotes (still no good) escaping with '\' (no good), escaping with ".." (no good). 

Is there a way I can reference the DB which has the "." in it's name ?

v11.5 on linux (I know, way past time to upgrade)

Thanks in Advance !

pgsql-general by date:

Previous
From: David Gauthier
Date:
Subject: Re: How to reference a DB with a period in its name ?
Next
From: Flavious Kumfa
Date:
Subject: Re: PostgreSQL hardening best practice