📜  PSQL命令-JavaPoint

📅  最后修改于: 2020-12-01 00:56:52             🧑  作者: Mango

Psql命令

在本节中,我们将看到最常用的psql命令列表,这些命令有助于我们更快更有效地从PostgreSQL数据库服务器查询数据。

SQL Shell(psql)中,我们有n个命令,但是在这里我们将讨论一些最常用的命令。

连接到PostgreSQL数据库如果要在特定用户下连接PostgreSQL数据库,我们将遵循以下过程:

首先,我们将在本地系统中打开命令提示符,并复制安装PostgreSQL的路径。

然后,我们将使用以下命令:

psql -d database -U user -W

一旦我们写完上述命令并按Enter键PostgreSQL将要求用户输入密码。

例如

要使用Postgres用户连接到javatpoint数据库,我们使用以下命令:

C:\Program Files\PostgreSQL\12\bin>psql -d javatpoint -U postgres -W
Password:
Javatpoint=#

输出量

正如我们在以下屏幕截图中所看到的:

如果要连接到另一个主机上存在的数据库,请在上面的命令中添加-h选项:

psql -h host -d database -U user -W

如果需要将SSL模式用于连接,请按以下命令所示对其进行定义:

psql -U user -h host "dbname=db sslmode=require"
  • 将连接切换到新数据库

连接到数据库后,我们可以在用户指定的用户下将连接切换到新数据库。

\c database_name 

上面的语句将在postgres用户下连接到javatpoint数据库:

postgres=# \c javatpoint

  • 列出可用的数据库

要列出当前PostgreSQL数据库服务器中的所有数据库,我们将使用以下命令:

\l

例如

如果执行上面的命令,我们将获得以下输出,以查看PostgreSQL中存在的现有数据库。

  • 列出可用表

要列出当前数据库中的所有表,我们将使用以下命令:

\dt

例如

如果执行上面的命令,我们将获得以下输出,在这里我们可以看到PostgreSQL中存在的现有数据库。


注意:上面的命令仅指定当前链接到数据库的那些表。

  • 描述一张桌子

以下命令用于描述表,例如类型,列,列的修饰符等。

\d table_name

例如,假设我们有一个名为Station1的现有表,并且我们想借助上述命令来对其进行描述:

\d Station1

输出量

执行完以上命令后,我们将得到以下输出:

  • 列出可用功能

我们可以使用以下命令查看现有数据库中可用的功能列表。

\df

输出量

如果执行上述命令,将获得以下输出窗口:

  • 列出可用的架构

以下命令用于查看当前连接的数据库的所有架构的可用列表。

\dn

输出量

执行完上述命令后,我们将获得以下输出窗口:

  • 列出用户及其角色

在psql中,我们将使用以下命令列出所有用户及其分配的角色。

\du

输出量

执行完上述命令后,我们将获得以下输出窗口:

  • 列出可用的视图

我们将使用以下命令来获取现有数据库中可用视图的列表。

\dv

输出量

一旦执行上述命令,我们将获得以下输出:

  • 执行上一条命令

我们将在以下命令中使用version()函数来恢复PostgreSQL服务器的现有版本。

SELECT version();

输出量

一旦执行了以上命令,我们将获得以下输出:

我们可以使用以下命令来实现上一个命令,因为在再次键入上一个命令时,以下命令将帮助我们节省时间。

\g

输出量

从下面的输出中可以看到,与上一个命令相比,我们将得到相同的结果:


注意:在psql中,我们可以再次执行上一个命令,即SELECT命令。

  • 从文件执行psql命令

如果要从文件中实现psql命令,则可以使用以下命令:

\i filename
  • 获取有关psql命令的帮助

我们将使用以下命令来了解所有可用的psql命令。

\?

输出量

执行完上述命令后,我们将获得以下输出窗口:

并且,我们可以使用以下语句来获取有关特定PostgreSQL命令的帮助。

\h

输出量

执行完上述命令后,我们将获得以下输出窗口:

例如,如果我们想了解有关ALTER TABLE命令的完整信息,我们将键入以下命令:

\h ALTER TABLE

输出量

一旦执行了上面的命令,我们将得到以下结果:

打开查询执行时间

我们将使用以下命令打开查询执行时间。

\timing

输出量

一旦执行了上面的命令,我们将得到以下结果:

如果要从Station1表中查看计数,我们将使用以下命令:

Select count(*) from station1; 

要关闭它,我们可以使用与上面相同的命令:

\timing

输出量

正如我们在下面的输出中看到的那样,计时已关闭

  • 在编辑器中编辑命令

如果要在任何编辑器中编写命令,将使用以下命令:

\e

输出量

执行完以上命令后,psql将打开由我们的编辑器环境变量指定的文本编辑器,我们可以在其中编写任何命令,如下面的屏幕截图所示:

在编辑器中输入以下命令后,首先,我们将保存它,然后关闭编辑器。

Select * from Station1; 

关闭编辑器后,psql将执行命令并返回输出,如下图所示:

  • 退出psql

我们将使用以下命令退出psql,然后按任意键退出psql。

\q

输出量

一旦执行了以上命令,我们将获得以下输出: