我是PostgreSQL的初学者。
我想从Postgres的查询编辑器连接到另一个数据库-像MySQL或MS SQL Server的USE命令。
我通过搜索互联网找到了\c databasename,但它只能在psql上运行。当我尝试从PostgreSQL查询编辑器,我得到一个语法错误。
我必须通过pgscripting更改数据库。有人知道怎么做吗?
我是PostgreSQL的初学者。
我想从Postgres的查询编辑器连接到另一个数据库-像MySQL或MS SQL Server的USE命令。
我通过搜索互联网找到了\c databasename,但它只能在psql上运行。当我尝试从PostgreSQL查询编辑器,我得到一个语法错误。
我必须通过pgscripting更改数据库。有人知道怎么做吗?
当前回答
从MySQL迁移时遇到的基本问题是,我认为PostgreSQL中的数据库术语也是一样的,但事实并非如此。因此,如果我们要从应用程序或pgAdmin切换数据库,结果不会像预期的那样。 在我的例子中,我们为每个客户提供了单独的模式(这里考虑的是PostgreSQL术语)和单独的管理模式。所以在应用程序中,我必须在模式之间切换。
为此,我们可以使用SET search_path命令。这确实会将当前模式切换为当前会话的指定模式名。
例子:
SET search_path = different_schema_name;
这将把current_schema更改为会话的指定模式。要永久地更改它,我们必须在postgresql.conf文件中进行更改。
其他回答
set search_path = 'schema name here'
在连接到postgres时,必须选择默认数据库进行连接。如果你什么都没有,你可以使用'postgres'作为默认值。
您可以使用dbeaver连接到postgres。UI很好
从MySQL迁移时遇到的基本问题是,我认为PostgreSQL中的数据库术语也是一样的,但事实并非如此。因此,如果我们要从应用程序或pgAdmin切换数据库,结果不会像预期的那样。 在我的例子中,我们为每个客户提供了单独的模式(这里考虑的是PostgreSQL术语)和单独的管理模式。所以在应用程序中,我必须在模式之间切换。
为此,我们可以使用SET search_path命令。这确实会将当前模式切换为当前会话的指定模式名。
例子:
SET search_path = different_schema_name;
这将把current_schema更改为会话的指定模式。要永久地更改它,我们必须在postgresql.conf文件中进行更改。
在pgAdmin中也可以使用
设置搜索路径为your_db_name;
当第一次连接到psql时使用此命令
=# psql <databaseName> <usernamePostgresql>
您必须指定连接时使用的数据库;如果你想在你的脚本中使用PSQL,你可以使用"\c name_database"
user_name=# CREATE DATABASE testdatabase;
user_name=# \c testdatabase
此时,您可能会看到以下输出
You are now connected to database "testdatabase" as user "user_name".
testdatabase=#
注意提示符是如何变化的。Cheers,我也一直在忙着找这个,在我看来,与MySQL相比,postgreSQL的信息太少了。