我有一个将创建和删除 postgres 数据库的应用程序。应用程序本身有自己的 sql server 数据库。有点奇怪的架构,但它不是选择。
我对应该如何连接到 postgres 服务器来执行这些创建表和删除表命令有些困惑。通常在 app.config
或 web.config
中,连接字符串会指定数据库。在这种情况下,我只想指定服务器。
是否可以在没有特定数据库的情况下直接向 postgres 服务器运行查询?
我应该使用服务器创建的 postgres
数据库吗?我试过这个... select * from pg_database
然后 drop database DBNAME
和第一个查询的结果,它给出了一个错误,说数据库不存在。
或者我可以创建一个空数据库来连接并向它提交查询,尽管它没有被用于任何事情。
最佳答案
Can queries be run directly to a postgres server, without a particular database?
没有。 PostgreSQL 要求您连接到特定的数据库。
限制实际上最终可能会放宽,因此您可以执行仅适用于从连接到非特定数据库的共享目录的操作。不过,它需要更改身份验证的工作方式和各种事情,而且我认为拥有像通常为空的 postgres
数据库这样的“管理数据库”并不是真正的问题。
Should I use the postgres database that was created by the server?
一般来说,是的。可以DROP
postgres
数据库,但您通常应该不理会它并将其用作管理数据库。
关于sql - 连接到哪个数据库以供更高级别的应用程序管理其他数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29956004/