本文共 1977 字,大约阅读时间需要 6 分钟。
在MySQL中,我使用use database_name;
什么是等效项?
与psql连接时,可以选择数据库。 从脚本中使用它很方便:
sudo -u postgres psql -c "CREATE SCHEMA test AUTHORIZATION test;" test
如其他答案所述,您需要更改连接以使用其他数据库。
Postgres使用模式。 一个数据库中可以有多个方案。 因此,如果您在同一个数据库中工作,并且想要更改架构,则可以执行以下操作:
SET SCHEMA 'schema_name';
使用psql的元命令\\c or \\connect [ dbname [ username ] [ host ] [ port ] ] | conninfo
\\c or \\connect [ dbname [ username ] [ host ] [ port ] ] | conninfo
(请参阅 )。
示例: \\c MyDatabase
请注意, \\c
和\\connect
元命令 。
\\l
对于数据库\\c
DatabaseName切换到db \\df
用于存储在特定数据库中的过程
使用以下语句切换到PostgreSQL RDMS内部的不同数据库
\c databaseName
在PostgreSQL中,可以使用客户端工具psql的元命令:
\connect DBNAME
或简而言之:
\c DBNAME
您可以使用\\c <database>
或\\connect <database>
。
在PSQL提示符下,您可以执行以下操作:
\connect (or \c) dbname
您可以使用连接
\c dbname
如果要在启动时切换到特定数据库,请尝试
/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
,它将在启动时切换到参数为name的数据库。
尽管未在问题中明确说明,但目的是连接到特定的架构/数据库。
另一个选择是直接连接到架构。 例:
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.
您可以使用连接
\\ c dbname
如果您想查看POSTGRESQL或SQL的所有可能命令,请执行以下步骤:
rails dbconsole(您将重新分配到当前的ENV数据库)
\\? (对于POSTGRESQL命令)
要么
\\ h(用于SQL命令)
按Q退出
您还可以按以下方式使用不同的ROLE连接到数据库。
\connect DBNAME ROLENAME;
要么
\c DBNAME ROLENAME;
转载地址:http://gxogj.baihongyu.com/