如何使用psql命令在PostgreSQL中执行Oracle的DESCRIBE TABLE?
当前回答
使用以下SQL语句
SELECT DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_name = 'tbl_name'
AND COLUMN_NAME = 'col_name'
若替换tbl_name和col_name,它将显示您要查找的特定列的数据类型。
其他回答
Use this command
\d table name
like
\d queuerecords
Table "public.queuerecords"
Column | Type | Modifiers
-----------+-----------------------------+-----------
id | uuid | not null
endtime | timestamp without time zone |
payload | text |
queueid | text |
starttime | timestamp without time zone |
status | text |
描述表的最佳方式,如列、类型、列的修饰符等。
\d+ tablename or \d tablename
In postgres\d用于描述表结构。
例如\d schema_name.table_name
该命令将为您提供表的基本信息,如列、类型和修饰符。
如果您想了解更多有关表格使用的信息
\d+ schema_name.table_name
这将为您提供额外的信息,如存储、统计目标和描述
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/
除了PostgreSQL方式(\d“something”或\dt“table”或\ds“sequence”等)
SQL标准方式,如下所示:
select column_name, data_type, character_maximum_length, column_default, is_nullable
from INFORMATION_SCHEMA.COLUMNS where table_name = '<name of table>';
它受到许多db引擎的支持。
推荐文章
- 同一行上有多个命令
- Postgres唯一约束与索引
- 使用{merge: true}设置的Firestore与更新之间的差异
- mysql_connect():[2002]没有这样的文件或目录(试图通过unix:///tmp/mysql.sock连接)在
- 使用电子邮件地址为主键?
- 选择postgres中字段的数据类型
- MongoDB在v4之前不兼容ACID意味着什么?
- 如何在PostgreSQL中查看视图的CREATE VIEW代码?
- 错误:没有唯一的约束匹配给定的键引用表"bar"
- 如何使用新的PostgreSQL JSON数据类型中的字段进行查询?
- 如何彻底清除和重新安装postgresql在ubuntu?
- 第一次设计数据库:我是否过度设计了?
- 分组限制在PostgreSQL:显示每组的前N行?
- IN与PostgreSQL中的ANY运算符
- PSQLException:当前事务被中止,命令被忽略,直到事务块结束