PostgreSQL 显示表


PostgreSQL 显示表

在本节中,我们将学习如何在 PostgreSQL 中显示表。当我们有很多数据库,其中有几个表时,列表或显示表很重要。

有时,不同数据库中的表名是相同的;在这种情况下,show table 命令非常有用。

在 PostgreSQL 中,我们可以通过以下两种不同的方式来显示表:

  • PostgreSQL 使用 psql 显示表
  • PostgreSQL 使用 pgadmin4 显示表

注意:在 PostgreSQL 中,我们不能直接使用 SHOW TABLES 命令,因为我们可以直接在 MySQL 中使用。

PostgreSQL 使用 psql 显示表

在psql中,我们可以通过下面的命令来获取一个数据库的表的数量信息,并显示当前数据库中的表:

\dt

要获取表列表,我们将按照以下步骤操作:

步骤1

  • 打开带有必要详细信息SQL shell (psql)。之后,我们将使用我们在 PostgreSQL 安装过程中创建的密码**登录**到 Postgres 数据库服务器。
  • 我们已连接到Postgres 服务器,如下面的屏幕截图所示:

PostgreSQL 显示表

第2步

  • 现在,我们将连接到我们之前创建的特定数据库服务器,即javatpoint,并在以下命令的帮助下:
\c javatpoint

PostgreSQL 显示表

Step3

  • 最后,我们将执行 SHOW TABLES 命令,查看javatpoint数据库包含很多表。
Javatpoint=# \dt

注意:\dt 命令用于列出当前数据库中的所有表。

输出

以下屏幕截图更清楚地解释了它:

PostgreSQL 显示表

PostgreSQL 使用 pgAdmin4 显示表

在PostgreSQL 中,这是在pgAdmin4的帮助下显示表的另一种方式。

在此,我们将使用select 命令从 PostgreSQL 目录中请求数据。

SELECT * FROM pg_catalog.pg_tables  
WHERE  
schemaname != 'pg_catalog'  
AND schemaname != 'information_schema';

注意:要获取有关数据库中每个表的所有有用信息,我们将使用 pg_tables。

pgadmin4 中的 SQL 查询

我们可以在SQL查询工具中看到上面的查询:

PostgreSQL 显示表

表结构

上述查询将生成下表结构:

PostgreSQL 显示表

注意:我们可以修改 WHERE 子句中的条件来过滤系统表。 如果我们忽略 WHERE 子句,我们可能会得到很多表,这些表可能是对我们没有用的系统表。

假设,我们将上述查询中的架构名称修改为 myschema

SELECT * FROM pg_catalog.pg_tables  
WHERE  
schemaname = 'myschema'  
AND schemaname != 'information_schema'

pgAdmin4 中的 SQL 查询

更改查询并单击执行按钮后,如下图所示:

PostgreSQL 显示表

输出

我们可以看到我们在myschema中创建的表,如下图所示:

PostgreSQL 显示表

或者

我们可以使用另一个查询来显示我们数据库中的表

select *   
from information_schema.tables   
where table_schema='public';

注意:这里,信息模式本身是一个自动出现在所有数据库中的模式,称为information_schema。

pgAdmin4 中的 SQL 查询

PostgreSQL 显示表

输出

在这里,我们可以看到上述查询的输出:

PostgreSQL 显示表