在MySQL中,我使用use database_name;
psql的等价是什么?
在MySQL中,我使用use database_name;
psql的等价是什么?
当前回答
您可以使用\c <database>或\connect <database>连接到数据库。
其他回答
虽然问题中没有明确说明,但目的是连接到特定的模式/数据库。
另一种选择是直接连接到模式。例子:
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.
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
使用psql的元命令\c或\connect [dbname [username] [host] [port]] | conninfo(参见文档)。
示例:\c MyDatabase
注意,\c和\connect元命令是区分大小写的。
您还可以使用不同的ROLE连接到数据库,如下所示。
\connect DBNAME ROLENAME;
or
\c DBNAME ROLENAME;
连接psql时可以选择数据库。当从脚本中使用它时,这很方便:
sudo -u postgres psql -c "CREATE SCHEMA test AUTHORIZATION test;" test