在PostgreSQL中显示表(来自MySQL)的等价物是什么?


当前回答

首次以postgres用户身份登录:sudo su-后期连接到所需的数据库:psql-d databaseName\dt将返回连接到的数据库中所有表的列表。

其他回答

显示当前数据库的表列表

从pg_catalog.pg_tables中选择*;

首先,您可以使用mac上的postgre.app或postico连接postgres数据库。运行以下命令:

psql -h localhost -p port_number -d database_name -U user_name -W

然后输入密码,这应该可以访问数据库

首先,您必须连接数据库

我的数据库是ubuntu

使用此命令连接

 \c ubuntu

此消息将显示

您现在以用户“postgres”的身份连接到数据库“ubuntu”

Now

运行此命令以显示其中的所有表

\d+

运行带有-E标志的psql将响应内部用于实现的查询\dt和类似:

sudo -u postgres psql -E

postgres=# \dt       
********* QUERY **********
SELECT n.nspname as "Schema",
c.relname as "Name", 
CASE c.relkind WHEN 'r' THEN 'table' WHEN 'v' THEN 'view' WHEN 'i' THEN 'index' WHEN 'S' THEN 'sequence' WHEN 's' THEN 'special' END as "Type",
pg_catalog.pg_get_userbyid(c.relowner) as "Owner"
FROM pg_catalog.pg_class c
    LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind IN ('r','')
    AND n.nspname <> 'pg_catalog'
    AND n.nspname <> 'information_schema'
    AND n.nspname !~ '^pg_toast'
AND pg_catalog.pg_table_is_visible(c.oid)
ORDER BY 1,2;        
**************************

在PostgreSQL 13.3和Windows 10中,这些步骤对我有效

打开cmd并键入psql-a-U[用户名]-p[端口]-h[服务器]键入\c[database]以连接到数据库键入\dt或\d以显示所有表格