如何使用psql命令在PostgreSQL中执行Oracle的DESCRIBE TABLE?


当前回答

/dt是列出数据库中所有表的命令。使用/d命令和/d+,我们可以获得表的详细信息。sysntax将如下所示*/d table_name(或)\d+table_name

其他回答

与DESCRIBE TABLE等效的psql是\d TABLE。

有关详细信息,请参阅PostgreSQL手册的psql部分。

1) 使用psql的PostgreSQL描述表

在psql命令行工具中,使用\d table_name或\d+table_name查找表的列信息

2) PostgreSQL使用information_schema描述表

SELECT语句查询information_schema数据库中列表的column_name、数据类型、字符最大长度;

选择列名称、数据类型、字符最大长度来自INFORMATION_SCHEMA.COLUMNS,其中table_name=“tablename”;

有关详细信息https://www.postgresqltutorial.com/postgresql-describe-table/

即使请求了psql命令,我也会添加pg_dump命令。因为它生成了以前的MySQl用户更常见的输出。

#sudo-u postgres pg_dump--table=my_table_name--仅模式mydb

描述表的最佳方式,如列、类型、列的修饰符等。

\d+ tablename or \d tablename

下面的命令可以简单地描述多个表

\dt <table> <table>

下面的命令可以详细描述多个表:

\d <table> <table>

下面的命令可以更详细地描述多个表:

\d+ <table> <table>