在PostgreSQL中显示表(来自MySQL)的等价物是什么?
当前回答
请注意,仅\dt将列出您正在使用的数据库的公共模式中的表。我喜欢将表保存在单独的模式中,因此接受的答案对我来说不起作用。
要列出特定模式中的所有表,我需要:
1) 连接到所需的数据库:
psql mydb
2) 指定要在\dt命令后查看表的架构名称,如下所示:
\dt myschema.*
这显示了我感兴趣的结果:
List of relations
Schema | Name | Type | Owner
----------+-----------------+-------+----------
myschema | users | table | postgres
myschema | activity | table | postgres
myschema | roles | table | postgres
其他回答
如果您在PostgreSQL中使用pgAdmin4,可以使用它来显示数据库中的表:
select * from information_schema.tables where table_schema='public';
\dt(不需要*)--将列出您已连接到的现有数据库的所有表。还需要注意:
\d[table_name]--将显示给定表的所有列,包括类型信息、引用和键约束。
以超级用户身份登录,以便您可以检查所有数据库及其架构:-
sudo su - postgres
然后,我们可以使用以下命令进入postgresqlshell:-
psql
现在可以使用以下命令检查所有数据库列表:-
\l
如果您想检查数据库的大小,请使用:-
\l+
按q返回。
找到数据库后,现在可以使用以下命令连接到该数据库:-
\c database_name
连接后,您可以通过以下方式检查数据库表或架构:-
\d
现在返回shell使用:-
q
现在,要进一步了解某个表的使用细节:-
\d table_name
要返回postgresql_shell,请按\q。
要返回终端,请按退出。
显示当前数据库的表列表
从pg_catalog.pg_tables中选择*;
请注意,仅\dt将列出您正在使用的数据库的公共模式中的表。我喜欢将表保存在单独的模式中,因此接受的答案对我来说不起作用。
要列出特定模式中的所有表,我需要:
1) 连接到所需的数据库:
psql mydb
2) 指定要在\dt命令后查看表的架构名称,如下所示:
\dt myschema.*
这显示了我感兴趣的结果:
List of relations
Schema | Name | Type | Owner
----------+-----------------+-------+----------
myschema | users | table | postgres
myschema | activity | table | postgres
myschema | roles | table | postgres
推荐文章
- Postgres唯一约束与索引
- 使用电子邮件地址为主键?
- 选择postgres中字段的数据类型
- 如何在PostgreSQL中查看视图的CREATE VIEW代码?
- 错误:没有唯一的约束匹配给定的键引用表"bar"
- 如何使用新的PostgreSQL JSON数据类型中的字段进行查询?
- 如何彻底清除和重新安装postgresql在ubuntu?
- 分组限制在PostgreSQL:显示每组的前N行?
- IN与PostgreSQL中的ANY运算符
- PSQLException:当前事务被中止,命令被忽略,直到事务块结束
- 添加布尔列到表集默认
- 库未加载:/usr/local/opt/readline/lib/libreadline.6.2.dylib
- 为什么我们需要像RabbitMQ这样的消息代理而不是像PostgreSQL这样的数据库?
- 在PostgreSQL表已经创建后,我可以添加UNIQUE约束吗?
- 如何在postgres数据库中创建单个表的备份?