我是PostgreSQL的初学者。
我想从Postgres的查询编辑器连接到另一个数据库,例如USE
MySQL或MS SQL Server 的命令。
我\c databasename
通过搜索Internet 找到了,但是它只能在psql上运行。当我从PostgreSQL查询编辑器尝试时,出现语法错误。
我必须通过pgscripting更改数据库。有人知道怎么做吗?
sudo -u postgres psql -d my_database_name
。来源
我是PostgreSQL的初学者。
我想从Postgres的查询编辑器连接到另一个数据库,例如USE
MySQL或MS SQL Server 的命令。
我\c databasename
通过搜索Internet 找到了,但是它只能在psql上运行。当我从PostgreSQL查询编辑器尝试时,出现语法错误。
我必须通过pgscripting更改数据库。有人知道怎么做吗?
sudo -u postgres psql -d my_database_name
。来源
Answers:
当您获得连接时,PostgreSQL
它总是连接到特定的数据库。要访问其他数据库,您必须获得新的连接。
使用\c
在PSQL关闭旧连接,并获取一个新的,用指定的数据库和/或凭证。您将获得一个全新的后端流程以及所有内容。
从MySQL迁移时遇到的基本问题是,我认为该术语database
在PostgreSQL中也相同,但事实并非如此。因此,如果我们要从应用程序或切换数据库pgAdmin
,则结果将与预期的不同。在我的情况下,我们为每个客户有单独的架构(此处考虑PostgreSQL术语)和单独的管理架构。因此,在应用程序中,我必须在模式之间切换。
为此,我们可以使用SET search_path
命令。这确实将当前模式切换到当前会话的指定模式名称。
例:
SET search_path = different_schema_name;
这会将current_schema更改为会话的指定架构。要永久更改它,我们必须在postgresql.conf
文件中进行更改。