postgresql 如何在 postgres 中切换数据库?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/43670879/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-21 02:33:31  来源:igfitidea点击:

How to switch databases in postgres?

postgresql

提问by niemnv

In SQL Server, I use:

在 SQL Server 中,我使用:

 use database_name
 Go
 Select * from table_name

In postgreSQL, I still use:

在 postgreSQL 中,我仍然使用:

 \connect database_name
 Select * from table_name
========================
then error: 
ERROR:  syntax error at or near "\"
LINE 1: \connect database_name
        ^
********** Error **********

ERROR: syntax error at or near "\"
SQL state: 42601
Character: 1.

Why? Can do help me? Thanks.

为什么?可以帮我吗?谢谢。

回答by Craig Ringer

Technically PostgreSQL can't switch databases. You must disconnect and reconnect to the new DB.

从技术上讲,PostgreSQL 不能切换数据库。您必须断开连接并重新连接到新数据库。

The psqlcommand-line client will do this for you with the \connectcommand, shortcut \c. But these are not commands processed by the PostgreSQL server, they're client commands. Different clients won't understand or support them.

psql命令行客户端会为你做这个用的\connect命令,快捷\c。但是这些不是由 PostgreSQL 服务器处理的命令,它们是客户端命令。不同的客户不会理解或支持他们。

At a guess you're using PgAdmin-III, in which case use the pulldown menu in the query tool to switch databases.

猜测您使用的是 PgAdmin-III,在这种情况下,请使用查询工具中的下拉菜单来切换数据库

Some day I'd like to extract psql's backslash-commands code into a library that things like PgAdmin could link to and use too.

有一天,我想将psql的反斜杠命令代码提取到一个库中,像 PgAdmin 这样的东西也可以链接和使用。