1298

在 MySQL 中,我使用use database_name;

什么是psql等价物?

4

14 回答 14

1962

在 PostgreSQL 中,您可以使用\connect客户端工具 psql 的元命令:

\connect DBNAME

或简而言之:

\c DBNAME
于 2010-10-16T17:12:00.967 回答
193

\c <database>您可以使用或连接到数据库\connect <database>

于 2010-10-16T17:14:36.543 回答
104

在 PSQL 提示符下,您可以执行以下操作:

\connect (or \c) dbname
于 2010-10-16T17:14:43.877 回答
37

使用 psql 连接时可以选择数据库。从脚本中使用它时这很方便:

sudo -u postgres psql -c "CREATE SCHEMA test AUTHORIZATION test;" test
于 2014-07-25T12:36:30.690 回答
16

\l对于存储在特定数据库中的过程,数据库 \cDatabaseName 切换到 db \df

于 2016-02-26T07:10:52.803 回答
13

使用 psql 的元命令 \c or \connect [ dbname [ username ] [ host ] [ port ] ] | conninfo(参见文档)。

例子:\c MyDatabase

请注意,\c\connect元命令区分大小写

于 2015-10-22T00:52:38.800 回答
13

虽然问题中没有明确说明,但目的是连接到特定的模式/数据库。

另一种选择是直接连接到模式。例子:

sudo -u postgres psql -d my_database_name

来源man psql

-d dbname
--dbname=dbname
   Specifies the name of the database to connect to. This is equivalent to specifying dbname as the first non-option argument on the command line.

   If this parameter contains an = sign or starts with a valid URI prefix (postgresql:// or postgres://), it is treated as a conninfo string. See Section 31.1.1, “Connection Strings”, in the
   documentation for more information.
于 2018-09-13T04:51:29.643 回答
11

使用\c databaseName\connect databaseName

(在 psql 13.3 上工作)

于 2021-08-02T16:19:30.937 回答
10

使用以下语句切换到驻留在您的 postgreSQL RDMS 中的不同数据库

\c databaseName
于 2016-06-13T08:12:00.613 回答
5

您还可以连接到具有不同 ROLE 的数据库,如下所示。

\connect DBNAME ROLENAME;

或者

\c DBNAME ROLENAME;
于 2019-07-20T04:08:36.313 回答
4

如果要在启动时切换到特定数据库,请尝试

/Applications/Postgres.app/Contents/Versions/9.5/bin/psql vigneshdb;

默认情况下,Postgres 在端口 5432 上运行。如果它在另一个上运行,请确保在命令行中传递该端口。

/Applications/Postgres.app/Contents/Versions/9.5/bin/psql -p2345 vigneshdb;

通过一个简单的别名,我们可以方便地使用它。

.bashrc在您的或中创建别名.bash_profile

function psql()
{
    db=vigneshdb
    if [ "$1" != ""]; then
            db=$1
    fi
    /Applications/Postgres.app/Contents/Versions/9.5/bin/psql -p5432 $1
}

命令行运行psql,会切换到默认数据库;psql anotherdb,它将在启动时切换到参数中名称的数据库。

于 2018-06-13T15:47:22.110 回答
4

在PostgreSQL中列出和切换数据库 当您需要在数据库之间进行更改时,您将使用 \connect 命令,或 \c 后跟数据库名称,如下所示:

postgres=# \connect database_name
postgres=# \c database_name

检查您当前连接的数据库。

SELECT current_database();

PostgreSQL 列出数据库

postgres=# \l
 postgres=# \list
于 2020-07-25T12:55:24.647 回答
1

您可以使用连接

\c 数据库名称

如果您想查看 POSTGRESQL 或 SQL 的所有可能命令,请按照以下步骤操作:

  1. rails dbconsole(您将被重定向到当前的 ENV 数据库)

  2. ? (对于 POSTGRESQL 命令)

或者

  1. \h(用于 SQL 命令)

  2. 按Q退出

于 2019-07-06T07:55:08.530 回答
1
  Connect to database:

  Method 1 : enter to db : sudo -u postgres psql

  Connect to db : \c dbname

  Method 2 : directly connect to db : sudo -u postgres psql -d my_database_name
于 2021-01-18T07:28:55.637 回答