Обсуждение: Connecting without specifying a database
Can PQconnectdb(), or something else, be used without specifying the dbname in the connection string? I want to connect just so that I can create a database that does not exist yet. When I don't specify the dbname, PQconnectdb() tries to connect to a database with the same name as the user, and then complains that it does not exist. Is it really necessary for each user to have an empty database like this? -- Murray Cumming murrayc@murrayc.com www.murrayc.com www.openismus.com
On Thursday 10 February 2005 06:50, Murray Cumming wrote:
> Can PQconnectdb(), or something else, be used without specifying the
> dbname in the connection string? I want to connect just so that I can
> create a database that does not exist yet.
>
> When I don't specify the dbname, PQconnectdb() tries to connect to a
> database with the same name as the user, and then complains that it does
> not exist. Is it really necessary for each user to have an empty
> database like this?
Most applications choose to connect to template1 in these scenarios.
--
Robert Treat
Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL
On Thu, Feb 10, 2005 at 12:50:23PM +0100, Murray Cumming wrote: > > Can PQconnectdb(), or something else, be used without specifying the > dbname in the connection string? I want to connect just so that I can > create a database that does not exist yet. See "Environment Variables" in the libpq chapter of the documentation: http://www.postgresql.org/docs/8.0/static/libpq-envars.html > When I don't specify the dbname, PQconnectdb() tries to connect to a > database with the same name as the user, and then complains that it does > not exist. Is it really necessary for each user to have an empty > database like this? No, but you have to connect to *some* database. As Robert Treat mentioned, you could connect to template1 if you just need to issue a CREATE DATABASE statement. -- Michael Fuhr http://www.fuhr.org/~mfuhr/