sam*_*sam 332 postgresql postgresql-9.1
我是PostgreSQL的初学者.
我想从Postgres的查询编辑器连接到另一个数据库 - 比如USEMySQL或MS SQL Server 的命令.
我\c databasename通过搜索Internet 找到了,但它只在psql上运行.当我从PostgreSQL查询编辑器中尝试它时,我收到语法错误.
我必须通过pgscripting更改数据库.有谁知道怎么做?
kgr*_*ttn 348
当您获得连接时PostgreSQL,始终是特定数据库.要访问其他数据库,您必须获得新连接.
\c在psql中使用会关闭旧连接并使用指定的数据库和/或凭据获取新连接.你会得到一个全新的后端流程和一切.
Eug*_*ene 202
您必须指定要在connect上使用的数据库; 如果要为脚本使用psql,可以使用"\ c name_database"
user_name=# CREATE DATABASE testdatabase;
user_name=# \c testdatabase
Run Code Online (Sandbox Code Playgroud)
此时您可能会看到以下输出
You are now connected to database "testdatabase" as user "user_name".
testdatabase=#
Run Code Online (Sandbox Code Playgroud)
请注意提示如何更改.干杯,刚刚一直忙着寻找这个,关于postgreSQL的信息与MySQL相比太少,其余在我看来.
从我面临的MySQL迁移时的基本问题是,我认为databasePostgreSQL 中的术语也是相同的,但事实并非如此.因此,如果我们要从我们的应用程序切换数据库pgAdmin,结果将不会如预期的那样.在我的例子中,我们为每个客户和单独的管理模式提供了单独的模式(在这里考虑PostgreSQL术语.).所以在应用程序中,我必须在模式之间切换.
为此,我们可以使用该SET search_path命令.这会将当前架构切换为当前会话的指定架构名称.
例:
SET search_path = different_schema_name;
Run Code Online (Sandbox Code Playgroud)
这会将current_schema更改为会话的指定架构.要永久更改它,我们必须在postgresql.conf文件中进行更改.
小智 8
set search_path = 'schema name here'
Run Code Online (Sandbox Code Playgroud)
连接到 postgres 时,您必须选择默认数据库进行连接。如果你什么都没有,你可以使用“postgres”作为默认值。
您可以使用 dbeaver 连接到 postgres。用户界面很好
首次连接时使用此命令 psql
=# psql <databaseName> <usernamePostgresql>
Run Code Online (Sandbox Code Playgroud)
PgAdmin 4,GUI工具:数据库之间切换
为了确保您正在查询正确的数据库,请发出以下查询:
SELECT session_user, current_database();
Run Code Online (Sandbox Code Playgroud)